CN110287790B - 一种面向静态多人场景的学习状态混合分析方法 - Google Patents
一种面向静态多人场景的学习状态混合分析方法 Download PDFInfo
- Publication number
- CN110287790B CN110287790B CN201910434931.5A CN201910434931A CN110287790B CN 110287790 B CN110287790 B CN 110287790B CN 201910434931 A CN201910434931 A CN 201910434931A CN 110287790 B CN110287790 B CN 110287790B
- Authority
- CN
- China
- Prior art keywords
- face
- student
- value
- coordinates
- static
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000003068 static effect Effects 0.000 title claims abstract description 196
- 238000004458 analytical method Methods 0.000 title claims abstract description 30
- 230000014509 gene expression Effects 0.000 claims abstract description 60
- 238000001514 detection method Methods 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000004364 calculation method Methods 0.000 claims abstract description 25
- 230000036544 posture Effects 0.000 claims abstract description 22
- 230000008921 facial expression Effects 0.000 claims abstract description 21
- 230000008451 emotion Effects 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 15
- 230000004927 fusion Effects 0.000 claims description 14
- 230000001815 facial effect Effects 0.000 claims description 8
- 238000013527 convolutional neural network Methods 0.000 claims description 7
- 230000002996 emotional effect Effects 0.000 claims description 7
- 239000003086 colorant Substances 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 claims description 5
- 238000007689 inspection Methods 0.000 claims description 5
- 230000007935 neutral effect Effects 0.000 claims description 5
- 238000013079 data visualisation Methods 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000009432 framing Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 3
- 230000019771 cognition Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000994 depressogenic effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 230000009914 physiological arousal Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/174—Facial expression recognition
- G06V40/175—Static expression
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Tourism & Hospitality (AREA)
- Strategic Management (AREA)
- Educational Technology (AREA)
- Educational Administration (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Primary Health Care (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明提出一种面向静态多人场景的学习状态混合分析方法。在课堂开始,这时学生专注度高度集中,本发明使用对于正面人脸检速度快且精度高的算法检测出人脸并估计的出学生的静态位置区域,接下来对学生静态位置生命值和hit值进行判断,进而调用对于侧面人脸检测精度高的算法,通过这种双层人脸检测极大的提高了对于教室这一静态多人场景中人脸检测的精度,并且保证了运算速度。对于识别获得的学生的头部姿态和面部表情,本发明通过将学生的头部姿态与周围学生的头部姿态进行对比计算,得到学生的专注度;并对学生表情进行多个分类,表情分类的多样化和学生专注度的计算能够提高多模态特征分析模块分析结果的可靠性。
Description
技术领域
本发明涉及一种面向静态多人场景的学习状态混合分析方法,更具体的,涉及静态多人场景双层人脸检测、学生头部姿态识别、表情识别的多模态信息特征融合,分析处于静态多人场景下学生学习状态的实时分析方法。
背景技术
已有研究表明,在课堂中学生的的积极情绪能够促进学生认知,消极情绪阻碍学生认知。所以在教学过程中,教师要根据学生的情绪状态及时调整教学策略,得到更好的教学效果。传统的掌握学生情绪状态的方法需要教师对班级每一个学生付出极大关注,亦或者通过课后问卷调查得知本节课学生的情绪状态,每种方法都存在费时费力而且效率不高的问题。
在已经公开的CN201810359755-基于多模态信息融合的课堂学习状态监测方法及系统专利中,通过定位教室中的人脸,在人脸区域中估计学生的头部姿态、面部表情,通过无线手环收集学生皮肤电传导信号、收集学生在课堂上互动答题的频率和正确率分别得到学生的注意力、学习情绪、生理唤醒度和课堂参与度四维信息。通过把四维信息融合分析,得到学生的课堂学习状态。在该公开专利中,人脸检测是通过使用本领域已经被大家通用的一些算法和特征来定位人脸区域。当前对于复杂环境下的人脸检测有多种算法,可以根据检测精度和运行速度把当前的算法分为两类,一类是对于正面人脸和侧面人脸检测效果好,精度高但运行速度较慢;一类是对于正面人脸有很高的精度,运行速度快,但对于侧面人脸精度较低。由于在自然课堂这种复杂环境中,学生可能会因为低头、和其他人交谈,注意力不集中出现侧脸等面部区域不易识别的情况,所以单一的算法存在一定的缺陷。CN201810359755-基于多模态信息融合的课堂学习状态监测方法及系统专利进行头部姿态估计时,需要一定的先验知识才能得到学生的头部姿态和注意力情况。先验知识是指通过对学生位置、黑板位置、教师位置的标定,当学生面部朝向上述位置,则判断为学生注意力集中,这种先验知识的获得需要进行一定的前期准备工作,而且只能针对已经标定的课堂环境进行分析。另外该专利是通过使用无线手环来测量学生的皮肤电信号,进而得到学生的生理唤醒度,无线手环这种同类型的穿戴设备对于学生的心理而言,有一定的侵入性,学生的课堂学习状态都是在基于这种侵入性下呈现的,跟真实的课堂呈现的学习状态有一定的区别。
发明内容
为了解决自然课堂教师对于学生情绪状态和学习状态掌控费时费力的情况,本发明通过一种混合下对视频单帧静态图像进行双层人脸检测,定位人脸区域,得到学生面部表情、头部姿态信息和学生静态位置信息,进而通过多模态信息特征融合分析得到学生在课堂中的学习状态。为解决上述技术问题,本发明采用如下的技术方案:一种面向静态多人场景的学习状态混合分析方法,包括如下步骤:
步骤1,读取摄像头实时录制的视频,并对视频进行分帧处理,将每帧都处理为静态图像作为输入;
步骤2,利用双层人脸检测对静态图像进行人脸定位,获得人脸坐标数据集合和学生静态位置坐标数据集合,包括如下子步骤,
步骤2.1,对步骤1传入的静态图像进行人脸粗检,使用haar分类器进行人脸检测,获得人脸坐标数据集合,记人脸坐标为[face_xmin,face_ymin,face_xmax,face_ymax,central_x,central_y,direction,emotion,active,attention];其中face_xmin代表人脸在静态图像中的左上角横坐标;face_ymin代表人脸在静态图像中的左上角的纵坐标;face_xmax代表人脸在静态图像中的右下角横坐标;face_ymax代表人脸在静态图像中的右下角的纵坐标central_x,central_y表示人脸区域中心点的横纵坐标值,direction表示头部的面部朝向,emotion表示学生面部表情,active表示学生活跃程度,attention表示学生当前注意力情况,四个参数的初始值为0;
步骤2.2,判断学生静态位置坐标数据集合是否为空值,如果为空值直接进行步骤2.3,非空值则进行如下计算,分别根据学生静态位置坐标数据集合和人脸坐标数据集合计算学生静态位置区域和人脸区域,并对学生静态位置区域和人脸区域进行计算,得出重叠部分,根据重叠部分判断该学生静态位置坐标是否有人脸出现,如果有人脸出现则将hit值更新为1,life值加1;
步骤2.3,根据人脸坐标数据集合中的历史人脸坐标逐一计算历史人脸区域,并计算人脸区域与历史人脸区域之间的重叠部分,根据重叠部分判断同一位置区域出现的人脸是否为同一个人,如果被认为是同一人脸的次数达到人脸稳定阈值,则标定学生静态位置坐标并储存,得到学生静态位置坐标数据集合。记学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax,hit,life],其中hit值表示当前学生静态位置有无人脸,将hit值设为2,life值表示学生静态位置坐标的生命值,life初始值为人脸稳定阈值;
步骤2.4,通过hit值判断是否进行人脸精检,hit值为非0值时,直接进入步骤3;hit值为0时,则通过六个级联的卷积神经网络实现人脸精检,如果检测到人脸,则life值加1;
步骤3,通过人脸坐标定位人脸区域,对人脸区域进行表情识别和头部姿态识别,将得到的两个特征进行融合分析,得出学生学习状态,包括如下子步骤,
步骤3.1,逐一根据经过步骤2的人脸坐标数据集合中的人脸坐标裁剪为图像,将裁剪所得图像传入训练完成表情卷积神经网络模型中进行人脸表情识别,得到学生表情分类,并存储在人脸面部表情集合中,按照识别所得学生表情更新emotion和active的值;
步骤3.2,通过人脸坐标计算得出学生头部姿态,根据学生头部姿态判断学生人脸朝向,并存储在学生头部姿态集合中,按照识别所得的学生人脸朝向更新direction的值;
步骤3.3,根据步骤3.1和步骤3.2收集到的学生表情和头部姿态进行多模态特征融合分析,得到attention值进行更新,进而得出学生在课堂中的学习状态;
步骤4,将得到的学生学习状态和学生人脸坐标做数据可视化处理;
步骤5,将学生静态坐标位置数据集合中所有的学生静态位置坐标hit初始化为0,life值减1,删除life值为0的学生静态位置坐标,并且对学生人脸坐标数据集合进行更新维护。
进一步的,步骤2.2中学生静态位置坐标与人脸坐标的关系如下,
设w=face_xmax-face_xmin表示人脸粗检检测得到的人脸的宽,h=face_yamx-face_ymin表示人脸粗检检测得到的人脸的高;
则有:body_xmin=face_xmin-w//2,代表学生静态位置在静态图像中的左上角横坐标;
body_ymin=face_ymin-h//2,代表学生静态位置在静态图像中的左上角纵坐标;
body_xmax=face_xmax+w//2,代表学生静态位置在静态图像中的右下角横坐标;
body_ymax=face_ymax+h//2,代表学生静态位置在静态图像中的右下角纵坐标;
其中,//表示整除。
进一步的,步骤2.2计算学生静态位置区域和人脸区域重叠部分的具体实现方式如下,
设人脸坐标为[face_xmin,face_ymin,face_xmax,face_ymax],学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax],通过计算:
xA=max(face_xmin,body_xmin)求得两个区域左上角横坐标的最大值,
yA=max(face_ymin,body_ymin)求得两个区域左上角纵坐标的最大值,
xB=min(face_xmax,body_xmax)求得两个区域右下角横坐标的最小值,
yB=min(face_ymax,body_ymax)求得两个区域右下角纵坐标的最小值;
然后计算学生静态位置区域和人脸区域的交集:interArea=(xB-xA+1)*(yB-yA+1);
最后计算人脸区域所占的面积:
faceAera=(face_xmax-face_xmin+1)*(face_ymax-face_ymin+1);
如果通过计算得到两个区域重叠部分与学生的人脸区域的比值等于人脸归属阈值1.0,即interArea/faceArea等于人脸归属阈值1.0,则认为该学生静态位置内有学生人脸,并将该学生静态位置坐标中的hit值修改为1,life值加1,然后重新进行下一个人脸坐标的计算。
进一步的,步骤2.3的具体实现方式如下,
假设当前传进来的人脸坐标表示为[face_xmin,face_ymin,face_xmax,face_ymax],人脸坐标数据集合中的历史人脸坐标表示为:[historic_face_xmin,historic_face_ymin,historic_face_xmax,historic_face_ymax];
则人脸区域为faceAera=(face_xmax-face_xmin+1)*(face_ymax-face_ymin+1);
则历史人脸区域为historic_faceAera=(historic_face_xmax-historic_face_xmin+1)*(historic_face_ymax-historic_face_ymin+1);
人脸区域与历史人脸区域的交集为:interArea,并集为:
allArea=faceAera+historic_faceAera-interArea;
如果人脸区域与历史人脸区域的并集为零,则认为人脸区域与历史人脸区域并没有重叠,重叠部分为零;否则进行以下计算:IOU(Intersection over Union)=interArea/allArea,如果IOU值大于等于人脸重合阈值,则认为是同一学生人脸,如果被认为是同一人脸的次数达到人脸稳定阈值,则标定学生静态位置坐标并储存,得到学生静态位置坐标数据集合,记学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax,hit,life],其中hit值表示当前学生静态位置有无人脸,将hit值设为2,life值表示学生静态位置坐标的生命值,life初始值为人脸稳定阈值。
进一步的,步骤3.1的具体实现方式如下,
对人脸图像灰度化处理,将裁剪的人脸图像调整尺寸为48*48,将48*48的人脸图像进行归一化处理;将处理后的人脸图像传入训练完成的表情卷积神经网络模型中,得到表情分类;表情分类一共七种,分别是生气、沮丧、害怕、开心、悲伤、惊喜、中性,储存当前帧所有人脸表情,并用人脸表情更新人脸坐标中的emotion值;
将得到的七种表情按照对学生积极性的影响程度降序排序:开心、惊喜、中性、生气、沮丧、悲伤、害怕,对应的表情影响值也就是2、1、0、-1、-2、-3、-4,将每个人脸的表情影响值更新到人脸坐标的active值。
进一步的,步骤3.2的具体实现方式如下,
将从人脸粗检得到的人脸坐标转化为矩形框的坐标,通过dlib 68特征点检测器得到68个人脸关键点,从中挑选出6个特征点,分别是左眼外眼角、右眼外眼角、鼻尖、左唇部唇角、右唇部唇角、下巴尖;通过通用的3D人脸模型得到了六个特征点的世界坐标中的3D坐标,通过旋转和平移矩阵,将世界坐标中的3D点变换为相机坐标中的3D点,接着使用相机的固有参数(焦距,光学中心等)将相机坐标中的3D点投影到图像平面(即图像坐标系)上,与识别的静态图像上的6个特征点的2D位置进行对比计算,得到人脸的欧拉角,将得到的欧拉角转换为pitch,yaw,roll值,得出学生头部姿态;其中pitch也就是Y轴对应的是低头或者是抬头,yaw也就是X轴对应的是左右转头,roll也就是Z轴对应的是左右倾斜角度;
将得到的头部姿态得到的[X,Y,Z]三维坐标按照面部朝向,分为九个方向,分别是左上、左、左下、抬头、正视、低头、右上、右、右下,然后根据所得的X、Y值进行划分,给九个面部朝向赋值,分别是0、1、2、3、4、5、6、7、8,具体过程如下:
(X>-180)&(X<0)&(Y>-180)&(Y<0):direction=0,表示面部朝向为左上;
(X>-180)&(X<0)&(Y==0):direction=1,表示面部朝向为左;
(X>-180)&(X<0)&(Y>0)&(Y<180):direction=2,表示面部朝向为左下;
(X==0)&(Y>-180)&(Y<0):direction=3,表示面部朝向为抬头;
(X==0)&(Y==0):direction=4,表示面部朝向为正视;
(X==0)&(Y>0)&(Y<180):direction=5,表示面部朝向为低头;
(X>0)&(X<180)&(Y>-180)&(Y<0):direction=6,表示面部朝向为右上;
(X>0)&(X<180)&(Y==0):direction=7,表示面部朝向为右;
(X>0)&(X<180)&(Y>0)&(Y<180):direction=8,表示面部朝向为右下;
其中“&”表示“与”运算,direction的值表示面部朝向,将得到direction值更新人脸坐标数据集合中所对应的direction值。
进一步的,步骤3.3中学生在课堂中的学习状态包括班级学生专注度和活跃度,其中班级学生专注度通过计算注意力集中的人数和识别人数的比值来表示,班级学生活跃度通过计算积极情绪人数与注意力集中人数的比率来表示,积极情绪人数是指active值不小于零的人数,
判断学生注意力是否集中的计算过程如下:
设置位置区分阈值β,求取传入的人脸坐标和当前帧的所有人脸坐标之间的欧式距离Distance,抽取传入的人脸坐标的central_x和central_y值和从当前帧所有人脸坐标中抽取的历史人脸坐标的所有的history_central_x和history_central_y逐一进行计算,过程为
其中,history_central_x代表历史人脸区域中心点的横坐标,history_central_y代表历史人脸区域中心点的纵坐标;删除掉欧式距离大于β的历史人脸坐标,将distance值小于等于β的历史人脸坐标按照distance的值升序排列,挑选出前若干个历史人脸坐标作为注意力判定的依据;
将参数k值设为0,如果当前人脸坐标的面部朝向值direction与历史人脸坐标面部朝向值direction相同,k值加1,面部朝向不同,k值减1,如果k值达到注意力集中阈值,则表示学生注意力集中,attention值为1,否则attention值为0,将得到的attention值更新到当前传入的人脸坐标中。
进一步的,步骤4的具体实现方式如下,
步骤4.1,根据学生真实课堂表现图像,标记出学生人脸位置、学生表情、学生视线;
将当前帧得到的静态图像的宽和高等比缩小一半,同样的学生人脸坐标的[face_xmin,face_ymin,face_xmax,face_ymax]值也缩小一半并以颜色框表示;学生表情是根据定位到的学生人脸区域,显示在颜色框也就是学生人脸区域的左上角;学生视线是以2D静态图像中学生鼻尖为起点,3D人脸模型中的鼻尖为终点的一条线段,教师通过线段的倾斜度看出学生当前的视线;
步骤4.2,用不同种颜色标注学生当前的学习状态,以缩略图的形式显示在学生真实课堂表现图像的侧面;
将注意力不集中也就是attention值为0的人脸用灰色表示,对于注意力集中的也就是attention值为1人脸坐标做进一步判断,中性表情也就是active值为0的人脸用白色表示,将积极情绪也就是active值大于0的值用绿的表示,数值越大,人脸坐标的亮度越高;将消极情绪也就是active值小于0的值用红色表示,数值越小,人脸坐标越暗;教师通过观察缩略图中四种颜色的多少和分布区域,来判断当前学生学习状态:将步骤3所得的学生专注度和活跃度,以及当前帧检测到的学生人数显示在图像上;
步骤4.3,选取一段时间的学生人脸坐标,画出专注度波形图显示在学生真实课堂表现图像的下侧,其中横轴代表时间,纵轴代表比率。
与现有技术相比,本发明的优点和有益效果:根据班级内学生位置的特殊性,本发明提出一种对于人脸检测的混合分析方法。在课堂开始,这时学生专注度高度集中,本发明使用对于正面人脸检速度快且精度高的算法检测出人脸并估计的出学生的静态位置区域,接下来通过对学生静态位置生命值和hit值进行判断,选择调用对于侧面人脸检测精度高的算法。通过这种双层人脸检测极大的提高了对于教室这一静态多人场景中人脸检测的精度,并且保证了运算速度。对于识别获得的学生的头部姿态和面部表情,本发明通过将学生的头部姿态与周围学生的头部姿态进行对比计算,得到学生的专注度;将得到的学生表情进行精确分类,将人脸表情准确的分为生气、沮丧、害怕、开心、悲伤、惊喜、中性七种表情;表情分类的多样化和学生专注度的计算能够提高多模态特征分析模块分析结果的可靠性。
附图说明
图1是本发明的方法结构图。
图2是本发明实施例的方法流程图。
图3本发明的实施例的头部姿态估计流程图。
图4是本发明实施例的班级座位显示图。
图5是本发明实施例的特征融合框架图。
图6是本发明实施例的数据可视化。
具体实施方式
下面结合附图和实施例对本发明的技术方案作进一步说明。如图1所示,本发明提供的一种面向静态多人场景的学习状态混合分析方法,包括以下步骤:
步骤1,使用Opencv读取摄像头实时录制的视频,并对视频进行分帧处理,将每帧都处理为静态图像,作为之后的输入。
步骤2,使用混合下的双层人脸检测对静态图像进行人脸定位,获得人脸坐标数据集合和学生静态位置坐标数据集合,具体实现方式如下:
步骤2.1,先将传入的RGB模式的静态图像灰度化,使用Haar—like特征做检测,计算出检测区域的图像特征,得到十万计的特征值,所以使用积分图对所求的特征值进行变化,可以加速之后的计算,使用AdaBoost算法训练区分人脸区域和非人脸区域的强分类器,然后使用筛选式级联把多个强分类器连接到一起,获得人脸坐标,具体实施过程可以参考文献《Rapid Object Detection using a Boosted Cascade of Simple Features》。
记人脸坐标为[face_xmin,face_ymin,face_xmax,face_ymax,central_x,central_y,direction,emotion,active,attention];其中,face_xmin代表人脸在静态图像中的左上角横坐标,face_ymin代表人脸在静态图像中的左上角的纵坐标,face_xmax代表人脸在静态图像中的右下角横坐标,face_ymax代表人脸在静态图像中的右下角的纵坐标;
设w=face_xmax-face_xmin表示人脸粗检检测得到的人脸的宽,h=face_yamx-face_ymin表示人脸粗检检测得到的人脸的高,//表示整除,
则有:central_x=face_xmin+w//2代表人脸区域中心点的横坐标,
central_y=face_ymin+h//2代表人脸区域中心点的纵坐标;
其中,direction表示面部的朝向,emotion表示学生面部表情,active表示学生活跃程度,attention表示学生当前注意力情况。四个参数的初始值为0,并会在之后的步骤进行更新。
步骤2.2,判断学生静态位置坐标数据集合是否为空值,如果为空值直接进行步骤2.3,非空值则进行如下计算,分别根据学生静态位置坐标数据集合和人脸坐标数据集合计算学生静态位置区域和人脸区域,并对学生静态位置区域和人脸区域进行计算,得出重叠部分,根据重叠部分判断该学生静态位置坐标是否有人脸出现,如果有人脸出现则将hit值更新为1,life值加1。如果学生静态位置坐标数据集合为空值,则直接进行下一循环;
人脸坐标为[face_xmin,face_ymin,face_xmax,face_ymax],学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax],通过计算:
xA=max(face_xmin,body_xmin)求得两个区域左上角横坐标的最大值,
yA=max(face_ymin,body_ymin)求得两个区域左上角纵坐标的最大值,
xB=min(face_xmax,body_xmax)求得两个区域右下角横坐标的最小值,
yB=min(face_ymax,body_ymax)求得两个区域右下角纵坐标的最小值;
然后计算两个区域的交集:interArea=(xB-xA+1)*(yB-yA+1);
最后计算人脸区域所占的面积:
faceAera=(face_xmax-face_xmin+1)*(face_ymax-face_ymin+1);
如果通过计算得到两个区域重叠部分与学生的人脸区域的比值等于人脸归属阈值1.0,即interArea/faceArea等于人脸归属阈值1.0,
则认为该学生静态位置内有学生人脸,并将该学生静态位置坐标中的hit值修改为1,life值加1,然后重新进行下一个人脸坐标的计算。如果人脸不在任意一个学生静态位置区域内,则进行步骤2.3的计算。
步骤2.3,根据人脸坐标数据集合中的历史人脸坐标逐一计算历史人脸区域,并计算人脸区域与历史人脸区域之间的重叠部分,如果重叠部分大于人脸重合阈值且次数达到人脸稳定阈值则认为同一位置区域出现的人脸是同一个人,如果是同一人,则将hit值设为2,life值初始值设为人脸稳定阈值;在本实例中,人脸重合阈值设置为0.9,人脸稳定阈值设置为10。
本发明先将当前传入的人脸坐标计算为人脸区域,也将人脸坐标数据集合中的历史人脸坐标逐一计算历史人脸区域,并计算它们的重叠部分,计算过程如下:
假设当前传进来的人脸坐标表示为[face_xmin,face_ymin,face_xmax,face_ymax],
人脸坐标数据集合中的历史人脸坐标表示为:[historic_face_xmin,historic_face_ymin,historic_face_xmax,historic_face_ymax];
则人脸区域为faceAera=(face_xmax-face_xmin+1)*(face_ymax-face_ymin+1),
则历史人脸区域为historic_faceAera=(historic_face_xmax-historic_face_xmin+1)*(historic_face_ymax-historic_face_ymin+1);
人脸区域与历史人脸区域的交集与上一步骤计算方法一样,直接表示为:interArea,人脸区域与历史人脸区域的并集为:allArea=faceAera+historic_faceAera-interArea,
如果两个人脸区域的并集为零,则认为两个区域并没有重叠,重叠部分为零,否则进行以下计算:IOU(Intersection over Union)=interArea/allArea;
通过计算人脸区域与历史人脸区域重叠部分得到的IOU值,如果IOU值大于等于人脸重合阈值,则认为是同一学生人脸。如果人脸坐标与人脸坐标数据集合中的历史人脸坐标多次被认为同一学生人脸,并且次数达到了人脸稳定阈值,也就是被认为同一人脸次数达到十次,可以认为在该位置有一学生,标出学生静态位置坐标。
学生在自然教学环境中,如果处于一般情况,学生处于认真听讲状态,则头部活动范围不会过大,可以通过人脸坐标标记学生静态位置坐标,学生静态位置坐标标记过程如下:
因为检测出的人脸尺寸大小不一,所以根据检测出人脸的宽和高作为修改参数,对学生静态位置坐标进行设置,将人脸的宽和高做以整除,也就是w//2和h//2,使得学生静态位置坐标值为整数,记学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax,hit,life],其中:
body_xmin=face_xmin-w//2,代表学生静态位置在静态图像中的左上角横坐标,
body_ymin=face_ymin-h//2,代表学生静态位置在静态图像中的左上角纵坐标,
body_xmax=face_xmax+w//2,代表学生静态位置在静态图像中的右下角横坐标,
body_ymax=face_ymax+h//2,代表学生静态位置在静态图像中的右下角纵坐标,
//表示整除;
hit值表示当前学生静态位置有无人脸,将hit值设为2,life值表示学生静态位置坐标的生命值,life值等于人脸稳定阈值,本实施例设为10。
因为课堂中学生的位置可能会发生变化,设定life为生命值,表示这个学生静态位置坐标可以存在的时间。因为生成学生静态位置坐标是指同一区域同一人脸出现了10次,那么相应的如果同一区域同一人的人脸消失了10次,就可以认为该学生静态位置坐标没有学生。
步骤2.4,通过hit值判断是否进行人脸精检,hit值为非0值时,直接进入步骤3;hit值为0时,通过卷积神经网络实现人脸精检;
先对学生静态位置坐标集合中的所有学生静态位置坐标进行逐一判断,看当前学生静态位置坐标内有无人脸,判断依据为学生静态位置坐标中的hit值,每帧运算开始时,hit值初始值为0,但当学生静态位置坐标出现人脸,hit值就会变为非0值。那么当hit值为0时,就可以认为该学生静态位置坐标中没有出现人脸。
如果学生静态位置坐标中hit值为非0值,则直接进入步骤3。否则进行人脸精检,人脸粗检对于自然教学环境中的学生正面人脸具有很高的精确性,人脸精检对于自然教学环境中的学生侧面人脸具有很高的准确性。通过这种双层人脸检测可以在提高人脸检测精度的同时提高方法运算速度,进而保证结果分析的可靠性。
人脸精检通过六个级联的卷积神经网络实现,他们分别是12net,12calib,24Nnet,24Ncalib,48Nnet,48Ncalib,具体计算过程参考文献《A Convolutional NeuralNetwork Cascade for Face Detection》。
据学生静态位置坐标,将学生静态位置从原图像裁剪下来,得到学生静态位置图像,将裁剪所得图像作为输入传进六个训练好的卷积神经网络模型的级联中,进而判断当前学生静态位置有无人脸。如果检测到人脸,将检测到的人脸坐标并入人脸坐标数据集合作为多模态特征融合的数据。并将该学生静态位置坐标的life值加1。
如表1所示,分别使用Harr特征和HOG特征对静态图像进行人脸特征检测进而定位出人脸区域,同时也使用了卷积神经网络CNN训练模型来对静态图像进行人脸区域定位。可以从表1中得出,本发明通过人脸粗检和人脸精检的双层检测,对静态图像中的人脸检测的精度和速度有较大的提升。
表1
备注:时间/秒人脸/个
步骤3,通过人脸坐标定位人脸区域,对人脸区域进行表情识别和头部姿态识别,将得到的人脸表情和面部朝向进行融合分析,得出学生学习状态。
步骤3.1,逐一读取当前帧精经过双层检测获得的人脸坐标数据集合,通过人脸坐标数据,剪辑得到人脸图像,将人脸图像传入训练完成的表情卷积神经网络模型中进行人脸表情识别,得到表情分类,并存储在人脸面部表情集合中;
通过接受双层人脸检测传入的人脸坐标的值,可以在当前帧的静态图像上裁剪出人脸图像,对人脸图像灰度化处理,将裁剪的人脸图像调整尺寸为48*48,将48*48的人脸图像进行归一化处理,目的是降噪和增强对比。将处理后的人脸图像传入训练完成的表情卷积神经网络模型中,得到表情分类。表情分类一共七种,分别是生气、沮丧、害怕、开心、悲伤、惊喜、中性,储存当前帧所有人脸表情,其中积极情绪有开心、惊喜,消极情绪有生气、沮丧、害怕、悲伤,中性情绪有中性。已有研究证明,这七种表情是人类基本情感,对于学生在课堂上的情绪波动有很强的代表性,而且表情分类的多样化对于后续的多模态特征融合分析有帮助,使得多模态特征融合分析的结果更具有层次性和可靠性。
将上述人脸表情更新到对应的人脸坐标中的emotion值,为步骤3.3计算使用。将得到的七种表情按照对学生积极性的影响程度降序排序:开心、惊喜、中性、生气、沮丧、悲伤、害怕,对应的表情影响值也就是2、1、0、-1、-2、-3、-4。将每个人脸的表情影响值更新到对应人脸坐标的active值。
步骤3.2,通过人脸坐标计算得出学生头部姿态,并存储在学生头部姿态集合中;
如图3所示,将从人脸粗检得到的人脸坐标转化为矩形框的坐标,通过dlib 68特征点检测器得到68个人脸关键点,从中挑选出6个特征点,分别是左眼外眼角、右眼外眼角、鼻尖、左唇部唇角、右唇部唇角、下巴尖。通过通用的3D人脸模型得到了六个特征点的世界坐标中的3D坐标,通过旋转和平移矩阵,可以将世界坐标中的3D点变换为相机坐标中的3D点。接着使用相机的固有参数(焦距,光学中心等)将相机坐标中的3D点投影到图像平面(即图像坐标系)上,与识别的静态图像上的6个特征点的2D位置进行对比计算,可以得到人脸的欧拉角,将得到的欧拉角转换为pitch,yaw,roll值,可以得出学生头部姿态。其中pitch也就是Y轴对应的是低头或者是抬头,yaw也就是X轴对应的是左右转头,roll也就是Z轴对应的是左右倾斜角度,具体计算过程可参考文献《Head Pose Estimation using OpenCVand Dlib》。
将得到的头部姿态得到的[X,Y,Z]三维坐标按照面部朝向,分为九个方向,分别是左上、左、左下、抬头、正视、低头、右上、右、右下。根据步骤3.2所得的X、Y值进行划分,给九个面部朝向赋值,分别是0、1、2、3、4、5、6、7、8.具体过程如下:
(X>-180)&(X<0)&(Y>-180)&(Y<0):direction=0,表示面部朝向为左上;
(X>-180)&(X<0)&(Y==0):direction=1,表示面部朝向为左;
(X>-180)&(X<0)&(Y>0)&(Y<180):direction=2,表示面部朝向为左下;
(X==0)&(Y>-180)&(Y<0):direction=3,表示面部朝向为抬头;
(X==0)&(Y==0):direction=4,表示面部朝向为正视;
(X==0)&(Y>0)&(Y<180):direction=5,表示面部朝向为低头;
(X>0)&(X<180)&(Y>-180)&(Y<0):direction=6,表示面部朝向为右上;
(X>0)&(X<180)&(Y==0):direction=7,表示面部朝向为右;
(X>0)&(X<180)&(Y>0)&(Y<180):direction=8,表示面部朝向为右下;
其中“&”表示“与”运算,direction的值表示面部朝向,将得到direction值更新到人脸坐标数据集合中所对应direction值。
步骤3.3,根据步骤3.1和步骤3.2收集到的学生表情和头部姿态进行多模态特征融合分析,得出学生在课堂中的学习状态,学生在课堂中的学习状态包括班级学生专注度和活跃度。
课堂上学生注意力集中的情况分为两类,一种是全体低头看课本或者记笔记,一种是班级学生都面朝向同一个区域;第一种情况可以直接通过检测到的人脸数目得出学生注意力,即通过对当前帧静态图像进行双层人脸检测,检测到的人脸坐标数就是当前帧检测到的学生个数,当检测到的人脸坐标数是0时,我们则认为全体学生处于第一种情况;在此我们主要讨论第二种情况。
当全体学生中超过80%的学生面部都朝向同一个区域(可以通过人脸坐标中的direction中的9个值进行判断,只要其中一个值占比超过全体学生人数的80%,即说明大部分学生都朝向同一个区域),如果其中一个学生面部朝向和其他同学明显不同,则可以理解为该学生注意力不集中。如图4所示,在自然课堂环境中,学生位置是一排一排,比较有规律,可以通过一个学生的视线和周围四个同学的视线的关系,来判断学生注意力。从图4可以轻易看出,在教室的中间位置距离远大于其它座位间的距离,当教师走下讲台,学生是从两旁来关注教师的授课。那么两旁学生的面部朝向是呈对称形状,两旁的学生面部朝向没有相互参考的意义。为了避免这种情况发生,我们设定一个位置区分阈值来区分左右两边的人脸,整个注意力计算过程如下:
经过之前多次实验中的计算结果和自然环境的教室情况,将位置区分阈值设置为260,将传入的人脸坐标和当前帧的所有人脸坐标都求得他们的欧式距离,抽取传入的人脸坐标的central_x和central_y值和从当前帧所有人脸坐标中抽取的历史人脸坐标的所有的history_central_x和history_central_y逐一进行计算,过程为
其中,history_central_x代表历史人脸区域中心点的横坐标,history_central_y代表历史人脸区域中心点的纵坐标;设置distance的限制条件,必须小于等于位置区分阈值260,删除掉大于260的历史人脸坐标,将distance值小于等于260的历史人脸坐标按照distance的值升序排列。挑选出前四个历史人脸坐标作为注意力判定的依据。因为是欧式距离最近的,所以可以理解挑选的是传入人脸坐标周围的学生人脸坐标。
我们将参数k值设为0,如果当前人脸坐标的面部朝向值direction与历史人脸坐标面部朝向值direction相同,k值加1,面部朝向不同,k值减1,如果k值达到注意力集中阈值,则学生注意力集中,attention值为1,否则attention值为0,将得到的attention值更新到当前传入的人脸坐标中,其中注意力集中阈值为1。
班级学生专注度可以通过计算注意力集中的人数和识别人数的比值来表示。班级学生活跃度可以通过计算积极情绪人数与注意力集中人数的比率来表示。其中积极情绪人数是指在表情识别中的非消极情绪的人数,也就是active值不小于零的人数。
步骤4,将得到的学生学习状态和学生人脸坐标做数据可视化处理,如图6所示。
步骤4.1,根据学生真实课堂表现图像,标记出学生人脸位置、学生表情、学生视线;
将当前帧得到的静态图像的宽和高等比缩小一半,同样的学生人脸坐标的[face_xmin,face_ymin,face_xmax,face_ymax]值也缩小一半并以蓝色框表示,学生表情是根据定位到的学生人脸区域,显示在蓝色框也就是学生人脸区域的左上角。学生视线是以2D静态图像中学生鼻尖为起点,3D人脸模型中的鼻尖为终点的一条线段,以红色显示。教师可以通过线段的倾斜度看出学生当前的视线。
步骤4.2,学生学习状态缩略图,用四种颜色标注学生当前的学习状态。
如图6所示,右上角为学生学习状态缩略图,使得教师可以一目了然,将班级学生当前学习状态了然如胸。步骤如下:
准备一个宽和高都是当前帧静态图像的四分之一的纯黑图片,将当前帧所有的人脸坐标中的central_x和central_y值缩小0.25倍,表示学生人脸位置。
将注意力不集中也就是attention值为0的人脸用灰色表示,对于注意力集中的也就是attention值为1人脸坐标再次做以判断,中性情绪也就是active值为0的人脸用白色表示,将积极情绪也就是active值大于0的值用绿的表示,数值越大,人脸坐标的亮度越高;将消极情绪也就是active值小于0的值用红色表示,数值越小,人脸坐标越暗。教师可以观察缩略图中四种颜色的多少和分布区域,来判断当前学生学习状态。将步骤3所得的学生专注度和活跃度和当前帧检测到的学生人数显示在图像上,显示在学生真实课堂表现图像左侧。
步骤4.3,选取一段时间的学生人脸坐标,画出专注度波形图,显示在学生真实课堂表现图像下侧,横轴代表时间,纵轴代表比率。
单帧学生专注度代表性不强,教师在课堂上更关注的是学生一段时间的专注度变化。所以展示固定T2时间段内的学生专注度。具体操作为,在时间到达T2时,每一帧都挑选T2-1帧的学生注意力。在专注度波形图中,横轴代表时间,纵轴代表学生专注度。教师可以直观地看到固定时间段T2班级学生的专注度的变化。在本实例中,T2为5分钟。
将步骤4产生的所有图片整合在一起,每帧显示并保存为视频。
步骤5,每帧都将学生静态坐标位置数据集合中的学生静态位置坐标hit初始化为0,并将所有的life值减1,删除学生静态位置坐标中life值为0的坐标值。
因为在步骤2中,对于所有检测到有人脸存在的学生静态位置坐标,他们的生命值life都加1,进行了延长。没有人脸存在的学生静态位置坐标life值不变。那么我们在数据维护阶段将所有学生静态位置坐标的生命值life减1,结果就是有人脸存在的学生静态位置坐标life值依然是初始值不发生变化,而没有人脸存在的学生静态位置坐标life值则减1。随着程序的运行,依次进行单帧循环,对于没有人脸的学生静态位置坐标生命值life逐渐减少,直至为0,life值为0表示该学生静态位置坐标区域长时间没有检测到人脸,没有学生存在,删除该学生静态位置坐标。
程序开始五分钟后,每隔时间段T1,对学生人脸坐标数据集合进行更新维护,挑选出最新出现的T2的人脸坐标数据集合;在本实例中,T1为5分钟,T2为4分钟。因为在自然课堂,学生可能会因为站起来回答问题和走动发生位置的移动,所以进行计算的人脸坐标集合必须及时更新才能保证步骤2、3、4运算的可靠性。
Claims (8)
1.一种面向静态多人场景的学习状态混合分析方法,其特征在于,包括如下步骤:
步骤1,读取摄像头实时录制的视频,并对视频进行分帧处理,将每帧都处理为静态图像作为输入;
步骤2,利用双层人脸检测对静态图像进行人脸定位,获得人脸坐标数据集合和学生静态位置坐标数据集合,包括如下子步骤,
步骤2.1,对步骤1传入的静态图像进行人脸粗检,使用haar分类器进行人脸检测,获得人脸坐标数据集合和学生静态位置坐标数据集合,记人脸坐标为[face_xmin,face_ymin,face_xmax,face_ymax,central_x,central_y,direction,emotion,active,attention];其中face_xmin代表人脸在静态图像中的左上角横坐标;face_ymin代表人脸在静态图像中的左上角的纵坐标;face_xmax代表人脸在静态图像中的右下角横坐标;face_ymax代表人脸在静态图像中的右下角的纵坐标central_x,central_y表示人脸区域中心点的横纵坐标值,direction表示头部的面部朝向,emotion表示学生面部表情,active表示学生活跃程度,attention表示学生当前注意力情况,四个参数的初始值为0;
步骤2.2,判断学生静态位置坐标数据集合是否为空值,如果为空值直接进行步骤2.3,非空值则进行如下计算,分别根据学生静态位置坐标数据集合和人脸坐标数据集合计算学生静态位置区域和人脸区域,并对学生静态位置区域和人脸区域进行计算,得出重叠部分,根据重叠部分判断该学生静态位置坐标是否有人脸出现,如果有人脸出现则将hit值更新为1,life值加1;
步骤2.3,根据人脸坐标数据集合中的历史人脸坐标逐一计算历史人脸区域,并计算人脸区域与历史人脸区域之间的重叠部分,根据重叠部分判断同一位置区域出现的人脸是否为同一个人,如果被认为是同一人脸的次数达到人脸稳定阈值,则标定学生静态位置坐标并储存,得到学生静态位置坐标数据集合,记学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax,hit,life],其中,其中,body_xmin代表学生静态位置在静态图像中的左上角横坐标、body_ymin代表学生静态位置在静态图像中的左上角纵坐标、body_xmax代表学生静态位置在静态图像中的右下角横坐标、body_ymax代表学生静态位置在静态图像中的右下角纵坐标,hit值表示当前学生静态位置有无人脸,将hit值设为2,life值表示学生静态位置坐标的生命值,life初始值为人脸稳定阈值;
步骤2.4,通过hit值判断是否进行人脸精检,hit值为非0值时,直接进入步骤3;hit值为0时,则通过六个级联的卷积神经网络实现人脸精检,如果检测到人脸,则life值加1;
步骤3,通过人脸坐标定位人脸区域,对人脸区域进行表情识别和头部姿态识别,将得到的两个特征进行融合分析,得出学生学习状态,包括如下子步骤,
步骤3.1,逐一根据经过步骤2的人脸坐标数据集合中的人脸坐标裁剪为图像,将裁剪所得图像传入训练完成表情卷积神经网络模型中进行人脸表情识别,得到学生表情分类,并存储在人脸面部表情集合中,按照识别所得学生表情更新emotion和active的值;
步骤3.2,通过人脸坐标计算得出学生头部姿态,根据学生头部姿态判断学生人脸朝向,并存储在学生头部姿态集合中,按照识别所得的学生人脸朝向更新direction的值;
步骤3.3,根据步骤3.1和步骤3.2收集到的学生表情和头部姿态进行多模态特征融合分析,得到attention值进行更新,进而得出学生在课堂中的学习状态;
步骤4,将得到的学生学习状态和学生人脸坐标做数据可视化处理;
步骤5,将学生静态坐标位置数据集合中所有的学生静态位置坐标hit初始化为0,life值减1,并删除学生静态位置坐标数据集合中life值为0的坐标,并且对学生人脸坐标数据集合进行更新维护。
2.如权利要求1所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤2.2中学生静态位置坐标与人脸坐标的关系如下,
设w=face_xmax-face_xmin表示人脸粗检检测得到的人脸的宽,h=face_yamx-face_ymin表示人脸粗检检测得到的人脸的高;
则有:body_xmin=face_xmin-w//2,代表学生静态位置在静态图像中的左上角横坐标;
body_ymin=face_ymin-h//2,代表学生静态位置在静态图像中的左上角纵坐标;
body_xmax=face_xmax+w//2,代表学生静态位置在静态图像中的右下角横坐标;
body_ymax=face_ymax+h//2,代表学生静态位置在静态图像中的右下角纵坐标;
其中,//表示整除。
3.如权利要求2所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤2.2中计算学生静态位置区域和人脸区域重叠部分的具体实现方式如下,
设人脸坐标为[face_xmin,face_ymin,face_xmax,face_ymax],学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax],通过计算:
xA=max(face_xmin,body_xmin)求得两个区域左上角横坐标的最大值,
yA=max(face_ymin,body_ymin)求得两个区域左上角纵坐标的最大值,
xB=min(face_xmax,body_xmax)求得两个区域右下角横坐标的最小值,
yB=min(face_ymax,body_ymax)求得两个区域右下角纵坐标的最小值;
然后计算学生静态位置区域和人脸区域的交集:interArea=(xB-xA+1)*(yB-yA+1);
最后计算人脸区域所占的面积:
faceAera=(face_xmax-face_xmin+1)*(face_ymax-face_ymin+1);
如果通过计算得到两个区域重叠部分与学生的人脸区域的比值等于人脸归属阈值1.0,即interArea/faceArea等于人脸归属阈值1.0,则认为该学生静态位置内有学生人脸,并将该学生静态位置坐标中的hit值修改为1,life值加1,然后重新进行下一个人脸坐标的计算。
4.如权利要求1所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤2.3的具体实现方式如下,
假设当前传进来的人脸坐标表示为[face_xmin,face_ymin,face_xmax,face_ymax],人脸坐标数据集合中的历史人脸坐标表示为:[historic_face_xmin,historic_face_ymin,historic_face_xmax,historic_face_ymax];
则人脸区域为faceAera=(face_xmax-face_xmin+1)*(face_ymax-face_ymin+1);
则历史人脸区域为historic_faceAera=(historic_face_xmax-historic_face_xmin+1)*(historic_face_ymax-historic_face_ymin+1);
人脸区域与历史人脸区域的交集为:interArea,并集为:allArea=faceAera+historic_faceAera-interArea;
如果人脸区域与历史人脸区域的并集为零,则认为人脸区域与历史人脸区域并没有重叠,重叠部分为零;否则进行以下计算:IOU=interArea/allArea,其中IOU为Intersectionover Union的缩写,如果IOU值大于等于人脸重合阈值,则认为是同一学生人脸,如果被认为是同一人脸的次数达到人脸稳定阈值,则标定学生静态位置坐标并储存,得到学生静态位置坐标数据集合,记学生静态位置坐标为[body_xmin,body_ymin,body_xmax,body_ymax,hit,life],其中hit值表示当前学生静态位置有无人脸,将hit值设为2,life值表示学生静态位置坐标的生命值,life初始值为人脸稳定阈值。
5.如权利要求1所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤3.1的具体实现方式如下,
对人脸图像灰度化处理,将裁剪的人脸图像调整尺寸为48*48,将48*48的人脸图像进行归一化处理;将处理后的人脸图像传入训练完成的表情卷积神经网络模型中,得到表情分类;表情分类一共七种,分别是生气、沮丧、害怕、开心、悲伤、惊喜、中性,储存当前帧所有人脸表情,并用人脸表情更新人脸坐标中的emotion值;
将得到的七种表情按照对学生积极性的影响程度降序排序:开心、惊喜、中性、生气、沮丧、悲伤、害怕,对应的表情影响值也就是2、1、0、-1、-2、-3、-4,将每个人脸的表情影响值更新到人脸坐标的active值。
6.如权利要求5所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤3.2的具体实现方式如下,
将从人脸粗检得到的人脸坐标转化为矩形框的坐标,通过dlib 68特征点检测器得到68个人脸关键点,从中挑选出6个特征点,分别是左眼外眼角、右眼外眼角、鼻尖、左唇部唇角、右唇部唇角、下巴尖;通过通用的3D人脸模型得到了六个特征点的世界坐标中的3D坐标,通过旋转和平移矩阵,将世界坐标中的3D点变换为相机坐标中的3D点,接着使用相机的固有参数,即焦距,光学中心,将相机坐标中的3D点投影到图像平面即图像坐标系上,与识别的静态图像上的6个特征点的2D位置进行对比计算,得到人脸的欧拉角,将得到的欧拉角转换为pitch,yaw,roll值,得出学生头部姿态;其中pitch也就是Y轴对应的是低头或者是抬头,yaw也就是X轴对应的是左右转头,roll也就是Z轴对应的是左右倾斜角度;
将得到的头部姿态得到的[X,Y,Z]三维坐标按照面部朝向,分为九个方向,分别是左上、左、左下、抬头、正视、低头、右上、右、右下,然后根据所得的X、Y值进行划分,给九个面部朝向赋值,分别是0、1、2、3、4、5、6、7、8,具体过程如下:
(X>-180)&(X<0)&(Y>-180)&(Y<0):direction=0,表示面部朝向为左上;
(X>-180)&(X<0)&(Y==0):direction=1,表示面部朝向为左;
(X>-180)&(X<0)&(Y>0)&(Y<180):direction=2,表示面部朝向为左下;
(X==0)&(Y>-180)&(Y<0):direction=3,表示面部朝向为抬头;
(X==0)&(Y==0):direction=4,表示面部朝向为正视;
(X==0)&(Y>0)&(Y<180):direction=5,表示面部朝向为低头;
(X>0)&(X<180)&(Y>-180)&(Y<0):direction=6,表示面部朝向为右上;
(X>0)&(X<180)&(Y==0):direction=7,表示面部朝向为右;
(X>0)&(X<180)&(Y>0)&(Y<180):direction=8,表示面部朝向为右下;
其中“&”表示“与”运算,direction的值表示面部朝向,将得到direction值更新人脸坐标数据集合中所对应的direction值。
7.如权利要求6所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤3.3中学生在课堂中的学习状态包括班级学生专注度和活跃度,其中班级学生专注度通过计算注意力集中的人数和识别人数的比值来表示,班级学生活跃度通过计算积极情绪人数与注意力集中人数的比率来表示,积极情绪人数是指active值不小于零的人数,
判断学生注意力是否集中的计算过程如下:
设置位置区分阈值β,求取传入的人脸坐标和当前帧的所有人脸坐标之间的欧式距离Distance,抽取传入的人脸坐标的central_x和central_y值和从当前帧所有人脸坐标中抽取的历史人脸坐标的所有的history_central_x和history_central_y逐一进行计算,过程为
其中,history_central_x代表历史人脸区域中心点的横坐标,history_central_y代表历史人脸区域中心点的纵坐标;删除掉欧式距离大于β的历史人脸坐标,将distance值小于等于β的历史人脸坐标按照distance的值升序排列,挑选出前若干个历史人脸坐标作为注意力判定的依据;
将参数k值设为0,如果当前人脸坐标的面部朝向值direction与历史人脸坐标面部朝向值direction相同,k值加1,面部朝向不同,k值减1,如果k值达到注意力集中阈值,则表示学生注意力集中,attention值为1,否则attention值为0,将得到的attention值更新到当前传入的人脸坐标中。
8.如权利要求7所述的一种面向静态多人场景的学习状态混合分析方法,其特征在于:步骤4的具体实现方式如下,
步骤4.1,根据学生真实课堂表现图像,标记出学生人脸位置、学生表情、学生视线;
将当前帧得到的静态图像的宽和高等比缩小一半,同样的学生人脸坐标的[face_xmin,face_ymin,face_xmax,face_ymax]值也缩小一半并以颜色框表示;学生表情是根据定位到的学生人脸区域,显示在颜色框也就是学生人脸区域的左上角;学生视线是以2D静态图像中学生鼻尖为起点,3D人脸模型中的鼻尖为终点的一条线段,教师通过线段的倾斜度看出学生当前的视线;
步骤4.2,用不同种颜色标注学生当前的学习状态,以缩略图的形式显示在学生真实课堂表现图像的侧面;
将注意力不集中也就是attention值为0的人脸用灰色表示,对于注意力集中的也就是attention值为1人脸坐标做进一步判断,中性表情也就是active值为0的人脸用白色表示,将积极情绪也就是active值大于0的值用绿的表示,数值越大,人脸坐标的亮度越高;将消极情绪也就是active值小于0的值用红色表示,数值越小,人脸坐标越暗;教师通过观察缩略图中四种颜色的多少和分布区域,来判断当前学生学习状态:将步骤3所得的学生专注度和活跃度,以及当前帧检测到的学生人数显示在图像上;
步骤4.3,选取一段时间的学生人脸坐标,画出专注度波形图显示在学生真实课堂表现图像的下侧,其中横轴代表时间,纵轴代表比率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910434931.5A CN110287790B (zh) | 2019-05-23 | 2019-05-23 | 一种面向静态多人场景的学习状态混合分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910434931.5A CN110287790B (zh) | 2019-05-23 | 2019-05-23 | 一种面向静态多人场景的学习状态混合分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110287790A CN110287790A (zh) | 2019-09-27 |
CN110287790B true CN110287790B (zh) | 2021-04-02 |
Family
ID=68002290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910434931.5A Active CN110287790B (zh) | 2019-05-23 | 2019-05-23 | 一种面向静态多人场景的学习状态混合分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287790B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110837947B (zh) * | 2019-10-11 | 2022-05-31 | 杭州电子科技大学 | 一种基于音视频分析技术的教师授课专注度的评估方法 |
CN112989865B (zh) * | 2019-12-02 | 2023-05-30 | 山东浪潮科学研究院有限公司 | 一种基于人头姿态判断的人群注意力焦点判断方法 |
CN111754368A (zh) * | 2020-01-17 | 2020-10-09 | 天津师范大学 | 一种高校教学评估方法及基于边缘智能的高校教学评估系统 |
CN111401315B (zh) * | 2020-04-10 | 2023-08-22 | 浙江大华技术股份有限公司 | 基于视频的人脸识别方法、识别装置及存储装置 |
CN111652045B (zh) * | 2020-04-17 | 2022-10-28 | 西北工业大学太仓长三角研究院 | 课堂教学质量评估方法和系统 |
CN111985396A (zh) * | 2020-08-20 | 2020-11-24 | 南京师范大学 | 一种孕妇情绪监测识别系统 |
CN112116841A (zh) * | 2020-09-10 | 2020-12-22 | 广州大学 | 一种基于深度学习的个性化远程教育系统及方法 |
CN112598551B (zh) * | 2020-12-24 | 2022-11-29 | 北京市商汤科技开发有限公司 | 行为指导方案生成方法、装置、计算机设备和存储介质 |
CN114419711B (zh) * | 2022-01-19 | 2022-11-04 | 成都节节高教育科技有限公司 | 基于ai教育系统的专注度识别方法 |
CN117542106B (zh) * | 2024-01-10 | 2024-04-05 | 成都同步新创科技股份有限公司 | 一种静态人脸检测和数据排除方法、装置及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102592147A (zh) * | 2011-12-30 | 2012-07-18 | 深圳市万兴软件有限公司 | 一种人脸检测的方法和装置 |
US8755593B2 (en) * | 2009-06-05 | 2014-06-17 | Samsung Electronics Co., Ltd. | Apparatus and method for video sensor-based human activity and facial expression modeling and recognition |
CN108399376A (zh) * | 2018-02-07 | 2018-08-14 | 华中师范大学 | 学生课堂学习兴趣智能分析方法及系统 |
CN108805009A (zh) * | 2018-04-20 | 2018-11-13 | 华中师范大学 | 基于多模态信息融合的课堂学习状态监测方法及系统 |
-
2019
- 2019-05-23 CN CN201910434931.5A patent/CN110287790B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8755593B2 (en) * | 2009-06-05 | 2014-06-17 | Samsung Electronics Co., Ltd. | Apparatus and method for video sensor-based human activity and facial expression modeling and recognition |
CN102592147A (zh) * | 2011-12-30 | 2012-07-18 | 深圳市万兴软件有限公司 | 一种人脸检测的方法和装置 |
CN108399376A (zh) * | 2018-02-07 | 2018-08-14 | 华中师范大学 | 学生课堂学习兴趣智能分析方法及系统 |
CN108805009A (zh) * | 2018-04-20 | 2018-11-13 | 华中师范大学 | 基于多模态信息融合的课堂学习状态监测方法及系统 |
Non-Patent Citations (3)
Title |
---|
A Crowdsourced Approach to Student Engagement Recognition in e-Learning Environments;Aditya Kamath等;《2016 IEEE Winter Conference on Applications of Computer Vision(WACV)》;20160526;第1-9页 * |
Predicting student engagement in classrooms using facial behavioral cues;Chinchu Tgomas等;《MIE 2017: Proceedings of the 1st ACM SIGCHI International Workshop on Multimodal Interaction for Education》;20171130;第1-8页 * |
课堂环境中基于面部表情的教学效果分析;韩丽等;《现代远程教育研究》;20170430;第97-103页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110287790A (zh) | 2019-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287790B (zh) | 一种面向静态多人场景的学习状态混合分析方法 | |
CN110287792B (zh) | 一种处于自然教学环境的课堂中学生学习状态实时分析方法 | |
JP5629803B2 (ja) | 画像処理装置、撮像装置、画像処理方法 | |
JP4743823B2 (ja) | 画像処理装置、撮像装置、画像処理方法 | |
Aran et al. | Signtutor: An interactive system for sign language tutoring | |
CN111563452B (zh) | 一种基于实例分割的多人体姿态检测及状态判别方法 | |
CN107798318A (zh) | 一种机器人识别面部快乐微表情的方法及其装置 | |
KR101893554B1 (ko) | 멀티 모달 데이터 기반 표정인식방법 및 장치 | |
CN112883867A (zh) | 一种基于图像情感分析的学生在线学习评估方法及系统 | |
CN111814556A (zh) | 一种基于计算机视觉的教学辅助方法和系统 | |
CN111666845B (zh) | 基于关键帧采样的小样本深度学习多模态手语识别方法 | |
CN109325408A (zh) | 一种手势判断方法及存储介质 | |
CN113920568A (zh) | 基于视频图像的人脸和人体姿态情绪识别方法 | |
CN114973126A (zh) | 在线课程的学生参与度实时可视化分析方法 | |
Guarin et al. | The effect of improving facial alignment accuracy on the video-based detection of neurological diseases | |
CN114067185A (zh) | 一种基于人脸表情识别的电影评价系统 | |
Ray et al. | Design and implementation of affective e-learning strategy based on facial emotion recognition | |
Kostov et al. | Method for simple extraction of paralinguistic features in human face | |
Huang et al. | Research on learning state based on students’ attitude and emotion in class learning | |
CN112579815A (zh) | 一种表情数据库的实时训练方法以及表情数据库的反馈机制 | |
Afroze et al. | Talking vs Non-Talking: a vision based approach to detect human speaking mode | |
KR100457928B1 (ko) | 소그룹 기반 분류에 의한 수신호 인식 방법 및 이를기록한 기록매체 | |
CN112149598A (zh) | 一种侧脸评估方法、装置、电子设备及存储介质 | |
CN111802787A (zh) | 一种智能化妆镜 | |
CN115798019B (zh) | 基于计算机视觉的实训驾驶平台智能预警方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |