学生在课堂上学习的面部表情和对知识点的掌握程度存在很强的关联性[1]. 在生物学方面也证明了这个观点[2]. 课堂教学是教师提高教学质量的最主要措施. 学生在学习中的表情会随着对知识点的掌握程度变化而变化[3], 当学生存在困惑时, 教师若不及时发现并干预自己的教学方式, 学生在课堂上的情绪就会越来越消极, 影响学习成绩甚至会辍学. 反之, 要是教师及时调整教学方式, 进而解决他的困惑, 学生将会转变自身的学习态度, 从而自信满满地接受新的知识, 那么他们的学习成绩将会得到很大的提高. 学生的面部表情是学生和教师在课堂上交流的窗口, 教师通过学生的表情了解每个学生对课堂知识的掌握情况, 有针对性地调整课堂教学的节奏、知识点内容以及课后知识点的补充, 这些均是教师提高教学质量的重要保障.
在课堂上, 教师需要调动学生的积极性和主动性, 并实时观察他们的听课状态、鼓励其独立思考, 让学生获得求知的成就感. 但在一对多的教学环境下, 由于教师个人精力有限, 不能做到面面俱到地观察每个学生的课堂表现, 因而致使教师不能有效地根据学生听课情况来调整自身的教学方式. 这样就影响了课堂教学效果的质量. 为了提高教师在课堂上的教学质量, 辅助教师实时、全面地分析每个学生在课堂上的学习状态, 及时解决学生对知识点的困惑, 很需要有一套辅助教师分析学生课堂表情的系统.
随着教学方式地不断改革, 对课堂教学的要求越来越多, 传统的教学手段和教学管理方式已远远不能满足目前课程教学的需求, 因此需要不断地添加现代化的教学手段和教学管理方式[4]. 随着计算机技术和网络的飞跃发展, 智慧教室教学、多媒体教学等利用前沿技术的教育形式越来越受到人们的关注. 电脑、摄像头等电子设备越来越普及, 近几年人脸表情识别技术[5]也在突飞猛进地发展, 开始在社会生活中发挥越来越重要的作用, 不同程度地应用到了辅助教学中. 课堂中的人脸表情识别技术就是让计算机对课堂上的师生面部表情进行获取、识别和响应, 以帮助教师和学生在和谐、愉快的交互模式下完成目标任务[6]. 本文针对课堂教学质量的应用需求, 结合目前智慧教室等已有的智能监控设备, 提出了基于面部表情的课堂教学效果反馈系统. 它采用教室中的摄像头实时地监督和跟踪学生在课堂上的表情, 自动分析学生的课堂表现, 帮助教师全面地了解课堂上每个学生的学习状态, 及时解决学生在上课过程和课后中的困惑, 最终提高学生的学习成绩.
1 相关研究面部表情识别在安防[7]、医疗[8]和疲劳驾驶[9]等领域有广泛的应用, 但是把表情识别应用到智慧课堂教学质量保障的研究还不多. 比如马希荣等利用情感识别技术实现了基于情感计算的e-Learning系统[10]. 冯满堂等将表情识别技术应用到智能网络教学在线系统中, 它在认知和情感两个维度提高在线教学的效率[11]. 程萌萌等从教师、学生、课程和情感4个维度构建智能教学系统模型, 利用视线跟踪和面部表情识别技术实现情感模块的反馈, 为网络学习中的学生的情感反馈提供技术保障[12]. 詹泽慧在智能Agent的基础上开发了远程学习者情感识别模块, 它利用了表情识别和视频跟踪技术, 提高了远程环境下学习者状态判断的准确率[13]. 孙波等将表情识别技术应用到三维虚拟学习平台Magic Learning的师生情感交互子系统中, 实现了学习者的情感识别和情感干预功能[14].
以上文献可以看出: (1)表情识别技术作为教学的辅助手段, 研究者用表情识别技术弥补了在线教学系统的情感缺失问题, 提高了学生在线学习的效果. (2)由于课堂教学比在线教学系统的技术环境复杂, 在线教学系统是单目标人脸识别, 人脸背景简单; 而课堂教学是多目标人脸识别, 人脸背景复杂. 目前将面部表情识别应用到课堂教学中的研究文献非常少, 因此, 本文的研究很有必要.
2 学生在课堂上的学习表情分析Ekman和Friesen早在1971年就提出了表情编码系统的概念, 他们把人脸的表情变化总结为6种: 生气、惊讶、厌恶、高兴、害怕、悲伤, 他们分析了这6种表情, 得到这6种表情是人类共性的结论[15]. 但是这6种表情并不能直接应用到课堂教学反馈中, 本项目在这6种表情的基础上, 再结合学生上课时的表情状态经验, 把学生上课时的常用面部表情归纳为掌握、认真听课、中性、困惑、不想听课. 在课堂教学中, 学生的面部表情向教师传达了听课时的大量信息. 学生能掌握当前所学内容, 并愿意学习, 他的表情是愉快的, 这说明该学生正在认真听课, 积极思考. 当学生听不懂当前所学的内容时, 他会表现出疑惑表情, 甚至是不想听课的表情, 这说明该学生对课堂的内容掌握困难. 学生在听课过程中的心理和人脸表情关系如图1. 学生的听课心理反映在他的面部表情上具有明显的区分度. 不同表情具有明显的区分度, 特别是眼角和嘴角的距离, 眉毛和眼睛的距离比率. 计算机通过深度学习模型[16]识别到眉毛或嘴的特征就可判断出该师生的课堂表情. 本系统主要关注学生对课堂知识的掌握度和困惑度.
3 系统设计
为了帮助教师全面地了解每个学生在课堂上的学习状态, 本文提出的基于面部表情识别的课堂教学效果反馈系统, 它主要分为4大功能模块, 依次为视频监控模块、关键帧提取模块、图像处理模块、统计分析模块. 它的结构图如图2所示.
本系统主要采用B/S结构, 本系统主要由3大部分组成: 第1部分是摄像头, 摄像头采集到动态图像并通过网络进行数字信号传输; 第2部分是PC机, PC机显示采集到的人脸图像和统计指标信息, 并且与教师交互; 第3部分是服务器, 服务器采用训练好的模型对该人脸图像进行表情分类以及统计指标信息, 供PC机调用.
3.1 系统组成模块(1) 视频监控模块
本模块能对教室无盲区、图像清晰地拍摄, 视频信号的传输通过网络传输. 采用2台摄像头监控台下左右两边的学生, 教室选用阶梯教室或学生之间的位置间隔比较大的教室, 学生严格地按照从低到高的座次坐到位置上, 每列的学生隔一排坐一个学生, 这样就能有效避免学生面部的遮挡, 如图3. 通过该模块对摄像头的参数进行调整, 使之适应到最佳的视频采集状态.
(2) 关键帧提取模块
本模块对视频监控模块采集到的视频流, 自动提取关键帧(学生面孔的帧), 用于情感识别.
(3) 图像处理模块
本模块主要对关键帧的图像进行预处理, 除去背景等对人脸表情识别带来的影响, 再进行多目标人脸检测. 再对检测到的人脸图像进行归一化处理, 再提取出人脸区域特征, 进行情感分析.
(4) 统计分析模块
依据面部表情分析, 统计分析学生对课堂内容的掌握度指标和困惑度指标.
掌握度指标: 随机取某一时刻
$u(t) = \frac{{\displaystyle\sum\limits_{i = 1}^n {\lambda _i^t} }}{n}$ | (公式1) |
困惑度指标: 随机取某一时刻
$y(t) = \frac{{\displaystyle\sum\limits_{i = 1}^n {\phi _i^t} }}{n}$ | (公式2) |
由于学生处于听课时的姿态比较单一, 而处于不想听课的学生比较消极, 他的头低下去, 对计算机的人脸检测的难度非常大, 即随机取某一时刻
本文中主要是用人脸验证算法[17]锁定某个学生, 并在整节课堂中跟踪该学生的人脸, 并分析他的课堂表情, 判定出该学生对课堂内容的掌握程度和困惑度. 教师通过对某个学生的掌握度的判断, 在教学中调整教学进度, 在课后有针对性地为该学生布置课后作业.
本系统也可以检测出处于不想听课状态的学生, 向教师发送报警信号, 引起教师对该学生的注意. 本系统就像一个“报警器”, 时刻提醒学生的学习状态.
3.2 表情训练数据采集本文的系统采用深度学习技术识别学生课堂表情, 深度学习对训练数据集的要求很高. 学生人脸表情数据库的规模是决定表情识别率的重要因素. 本系统的训练数据集来源两个部分, 分别是已有的公开表情数据集, 和自己采集并通过人工标注得到的学生课堂面部表情数据库. 供深度学习模型训练模型, 提高表情识别率. 其中公开的表情数据集采用刘永娜建立的BNU学习情感数据库[18], 它包含144位学习者的22 708张表情图片、1792组图像序列以及243个视频片段. 自己采集的数据集过程如下: 选取某学院90名本科生分批进行不同的课程听课实验, 男女比例设置成2:1, 我们选取的课程难度分为: 难、中、易. 这些学生中也由1:1:1按照成绩好、中等、差组成. 实验环境见图3. 教室中的摄像头实时采集学生的课堂表情, 教师每个知识点讲完就通过提问这一批的每个学生来确定他们对知识点的掌握程度, 并标注这段视频中的每个人的表情信息. 总共采集了150个短视频, 它们分别标注了每个人在学习过程中的表情状态. 表情视频的标注分为掌握和困惑. 每个学生的掌握和困惑标签是通过教师依据学生回答问题的情况和学生自我评价结合在一起确定的.
提取出单个学生的人脸后, 对于一幅人脸图像, 人脸图像的宽度一般是两只眼睛的距离的两倍, 而人脸图像的高度是两只眼睛距离的3倍. 因此, 根据两只眼睛的标准距离(55个像素), 从原始人脸图像中裁剪出包含嘴巴、鼻子、额头等关键表情部位的150×110×3大小区域的图像, 作为卷积神经网络的输入. 为了符合AlexNet的输入大小, 我们分别人脸表情图像缩放到227×227×3.
3.3 学生面部表情识别算法为了取得最好的学生面部表情识别性能, 本文选用目前公认的流行的分类算法. 目前表情识别的算法比较多, 比如Chen等利用深度卷积神经网络识别表情[19], Chen等利用深度卷积神经网络特征和AdaBoost识别面部表情[20], Salmam等利用面部表情的关键点和决策树算法识别面部表情[21], Li等利用卷积神经网络特征和支持向量机(SVM)识别面部表情[22]等, 它们在公共数据集上的测试都取得了比较好的识别效果. 其中, 深度卷积神经网络是目前很流行地处理图像方面的算法, 它在图像识别领域取得了突破性的进展[23].
本文分别比较了卷积神经网络(CNN), 卷积神经网络组合AdaBoost (CNN+AdaBoost)、卷积神经网络组合决策树(CNN+ Decision Tree)、以及本文所采用的卷积神经网络组合SVM[24](CNN+SVM)的方式在学生表情识别中的性能. 因为卷积神经网络具有很好的特征提取能力, 它提取的特征都是向量特征, 而AdaBoost、决策树和SVM的经典输入都是向量. 所以本文比较的都是它们与卷积神经网络组合后的表情识别性能. 同时本文也比较了仅用微调卷积神经网络的方式得到的人脸表情识别性能.
卷积神经网络是前馈神经网络的一种, 它的每个神经元响应一些覆盖范围内的周围单元, 它包含池化层和卷积层, 近年来卷积神经网络在图像处理领域取得了突破[16], 由于目前已有的学生课堂表情数据集比较小, 因此我们不直接训练自己的卷积神经网络. 而是采用已经预训练好的卷积神经网络模型在目标视频情感数据集上进行微调训练, 从而实现迁移学习的目的. 为此, 我们首先采用在ImageNet数据集上预训练好的AlexNet参数初始化卷积神经网络. 本文采用的卷积神经网络的结构与AlexNet模型相同, 包含5个卷积层, 3个池化层, 和3个全连接层(fc6, fc7, fc8). 其中, fc6和fc7包含4096个结点, 而fc8层是分类层(如Softmax), 对应目标数据的类别数目, 如表情的种类数量. 本文采用这两个卷积神经网络fc7输出的4096-D (D指维度)特征, 分别作为卷积神经网络学习到的时间特征和空间特征. 当获得4096-D的特征之后, 采用线性支持向量机(SVM)实现最终的视频表情识别任务, 输出视频的表情类别. 本文采用的面部表情识别算法见图4, 即采用卷积神经网络组合SVM识别人脸中的表情.
本文的卷积神经网络组合SVM具体过程如下: 本系统利用深度神经网络提取出人脸图像的高级特征, 再用这个高级特征输入到SVM进行表情识别. 深度学习训练时, 批处理batch大小设为30, 学习速率设为0.001, 最大循环(epoch)次数设为2000, 采用MatConvNet toolbox工具箱. 通过在目标数据集上微调预先训练的AlexNet卷积神经网络[16]得到最终的模型. SVM采用线性核函数, 即linear kernel核函数, 采用LIB-SVM package包实现.
AdaBoost[25]是迭代算法的一种, 它主要是用不同的训练器(弱分类器)对同一个训练集进行训练, 最后把所有的弱分类器组合在一起, 构成一个更强的最终分类器, 它的核心思想是对数据分布进行改变, 它根据每次训练集中每个样本分类是否正确, 和上次的总体分类的准确率, 来确定每个样本的权值, 并将修改后的权值的新数据集送到下层分类器进行训练, 最后将每次训练后的分类器融合在一起, 作为最终的决策分类器. 本文中把面部表情的卷积神经网络的高级特征作为AdaBoost的输入, 由AdaBoost最终判断该表情的情绪.
决策树算法[26]是逼近离散函数值的方法的一种, 它在分类算法中是比较经典的一种算法, 它先对数据进行预处理, 再用归纳算法生成可读的规则和决策树, 最后使用决策树对新数据进行决策分析. 本质上决策树就是通过规则对数据进行分类的算法. 本文中把面部表情的卷积神经网络的高级特征作为决策树算法的输入, 由决策树算法最终判断该表情的情绪.
SVM是在统计学习理论VC维理论和结构风险最小原理基础上, 依据有限样本信息模型的复杂性(特定训练样本的学习精度)与学习能力(无错误的识别任意样本的能力)之间寻求最好的折衷, 使之得到最好的泛化能力.
3.4 学生面部表情识别分类算法评估本文采用准确率P、召回率R和F值作为各面部表情分类算法的性能评价指标[27], 准确率P、召回率R、F值指标的计算公式如下:
$P = \frac{{TP}}{{TP + FP}}$ | (公式3) |
$R = \frac{{TP}}{{TP + FN}}$ | (公式4) |
$F = \frac{{2PR}}{{P + R}}$ | (公式5) |
其中, 真正例(True Positive, TP): 真实类别为正例, 预测类别为正例. 假正例(False Positive, FP): 真实类别为负例, 预测类别为正例. 假负例(False Negative, FN): 真实类别为正例, 预测类别为负例. 真负例(True Negative, TN): 真实类别为负例, 预测类别为负例. 它们用混淆矩阵表示见表1.
本文的实验采用5折(5-fold)交叉验证进行学生课堂表情识别模型训练, 即将整个训练数据集分成5组, 将每组数据子集分别作一次验证集, 其余的4组子集数据作为训练集, 这样就得到了5个验证集的分类结果, 再用这5个验证集的分类准确率的平均数作为这个该模型的性能指标, 这样也有效地提升了模型的泛化能力.
各种模型的学生表情识别性能比较见表2, 4种分类算法都可较好的识别出学生在课堂上对知识的掌握程度和困惑程度. 它们的识别正确率均高于70%, 其中, 本文采用的面部表情识别算法的识别正确率能达到85%, 它们的F值均高于0.7, 其中, 仅用卷积神经网络识别出学生表情的性能是最低的, 当用卷积神经网络组成其他模型时候, 它们的识别性能都有提高. 其中本文采用的卷积神经网络组合SVM的表情识别性能最好, 它在识别学生的掌握度表情和困惑度表情均高于其他的算法. 这也说明了通过卷积神经网络提取特征, 再用这个特征作为表情识别算法的输入会提高表情识别性能, 同时也说明了卷积神经网络的提取学生表情特征的能力很强.
3.5 各种面部表情识别算法表现差异原因分析
仅用卷积神经网络做学生面部表情识别的性能差, 是因为深度学习的关键在于训练样本量, 只有在巨大样本的情况下, 深度学习的识别性能发挥到极致, 而目前的学生课堂表情的数据量还没有达到深度学习的样本量要求. 而SVM的特长就是处理小样本量的情况, 因它具有结构风险最小化的严格数学证明. 故把卷积神经网络的特征提取特征和SVM的小样本识别性能组合起来, 这样对表情识别的性能就会提高. 同样AdaBoost和决策树模型在小样本上的识别性能也比卷积神经网络模型要好, 但是比SVM要差. 把AdaBoost和决策树分别组合卷积神经网络后, 它们的识别性能也会提高.
4 辅助教师课堂教学案例
本系统在课堂上服务教师教学的过程如图5. 教师通过该系统能全面了解学生的听课情况, 并能及时纠正学生的课堂听课情绪, 从而提高教学质量. 以3.3节的数据集作为实验数据, 本系统在课堂中识别学生的掌握度和困惑度的准确率分别为86%和83%; 本系统识别学生的掌握度和困惑度的混淆矩阵如图6. 这些都表明本系统的可用性.
5 结论
本文应用视频中的人脸表情识别技术解决课堂教学中的反馈问题. 本系统融合了深度学习算法和SVM算法有效地提高了多目标人脸的表情识别率. 总结了学生在课堂上接受知识过程中的表情变化. 本系统能在实际的课堂教学中辅助教师课堂教学. 接下来进一步研究如何把表情识别应用到某门课程在全国高校中的课堂教学效果评价中, 为课程改革提供参考.
[1] |
Valiente C, Swanson J, Eisenberg N. Linking students’ emotions and academic achievement: When and why emotions matter. Child Development Perspectives, 2012, 6(2): 129-135. DOI:10.1111/j.1750-8606.2011.00192.x |
[2] |
Hu HL, Real E, Takamiya K, et al. Emotion enhances learning via norepinephrine regulation of AMPA-receptor trafficking. Cell, 2007, 131(1): 160-173. DOI:10.1016/j.cell.2007.09.017 |
[3] |
D’Mello S, Graesser A. Dynamics of affective states during complex learning. Learning and Instruction, 2012, 22(2): 145-157. DOI:10.1016/j.learninstruc.2011.10.001 |
[4] |
刘堃. “互联网+”时代英语生态课堂的构建. 教学与管理(理论版), 2017(12): 98-100. |
[5] |
徐峰, 张军平. 人脸微表情识别综述. 自动化学报, 2017, 43(3): 333-348. |
[6] |
汤瑞丽, 蔡运荃. 微表情在课堂教学中的识别与运用. 基础教育研究, 2016(15): 72-74. DOI:10.3969/j.issn.1002-3275.2016.15.021 |
[7] |
梁静, 李开云, 曲方炳, 等. 说谎的非言语视觉线索. 心理科学进展, 2014, 22(6): 995-1005. |
[8] |
彭进业, 杨瑞靖, 冯晓毅, 等. 人脸疼痛表情识别综述. 数据采集与处理, 2016, 31(1): 43-55. |
[9] |
杨秋芬, 桂卫华, 周书仁. 疲劳驾驶面部表情识别算法. 计算机应用研究, 2008, 25(10): 3039-3041. DOI:10.3969/j.issn.1001-3695.2008.10.045 |
[10] |
马希荣, 刘琳, 桑婧. 基于情感计算的e-Learning系统建模. 计算机科学, 2005, 32(8): 131-133. DOI:10.3969/j.issn.1002-137X.2005.08.039 |
[11] |
冯满堂, 马青玉, 王瑞杰. 基于人脸表情识别的智能网络教学系统研究. 计算机技术与发展, 2011, 21(6): 193-196, 200. DOI:10.3969/j.issn.1673-629X.2011.06.051 |
[12] |
程萌萌, 林茂松, 王中飞. 应用表情识别与视线跟踪的智能教学系统研究. 中国远程教育, 2013(3): 59-64. |
[13] |
詹泽慧. 基于智能Agent的远程学习者情感与认知识别模型——眼动追踪与表情识别技术支持下的耦合. 现代远程教育研究, 2013(5): 100-105. DOI:10.3969/j.issn.1009-5195.2013.05.013 |
[14] |
孙波, 刘永娜, 陈玖冰, 等. 智慧学习环境中基于面部表情的情感分析. 现代远程教育研究, 2015(2): 96-103. DOI:10.3969/j.issn.1009-5195.2015.02.010 |
[15] |
Ekman P, Friesen WV. Constants across cultures in the face and emotion. Journal of Personality and Social Psychology, 1971, 17(2): 124-129. DOI:10.1037/h0030377 |
[16] |
Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks. Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe: NIPS, 2012. 1097–1105.
|
[17] |
庄莉, 艾海舟, 徐光祐. 基于视频的人脸验证. 电子学报, 2002, 30(8): 1222-1225. DOI:10.3321/j.issn:0372-2112.2002.08.034 |
[18] |
刘永娜, 孙波, 陈玖冰, 等. BNU学习情感数据库的设计与实现. 现代教育技术, 2015, 25(10): 99-105. DOI:10.3969/j.issn.1009-8097.2015.10.015 |
[19] |
Chen JY, Xu RY, Liu LY. Deep peak-neutral difference feature for facial expression recognition. Multimedia Tools and Applications, 2018, 77(22): 29871-29887. DOI:10.1007/s11042-018-5909-5 |
[20] |
Chen JK, Ou QH, Chi ZR, et al. Smile detection in the wild with deep convolutional neural networks. Machine Vision and Applications, 2017, 28(1): 173-183. DOI:10.1007/s00138-016-0817-z |
[21] |
Salmam FZ, Madani A, Kissi M. Facial expression recognition using decision trees. Proceedings of the 2016 13th International Conference on Computer Graphics, Imaging and Visualization. Beni Mellal: IEEE, 2016. 125–130.
|
[22] |
Li M, Xu H, Huang XC, et al. Facial expression recognition with identity and emotion joint learning. IEEE Transactions on Affective Computing, 2021, 12(2): 544-550. DOI:10.1109/TAFFC.2018.2880201 |
[23] |
Viola P, Jones MJ. Robust real-time face detection. International Journal of Computer Vision, 2004, 57(2): 137-154. DOI:10.1023/B:VISI.0000013087.49260.fb |
[24] |
Suykens JAK, Vandewalle J. Least squares support vector machine classifiers. Neural Processing Letters, 1999, 9(3): 293-300. |
[25] |
Hastie T, Rosset S, Zhu J, et al. Multi-class AdaBoost. Statistics and Its Interface, 2009, 2(3): 349-360. DOI:10.4310/SII.2009.v2.n3.a8 |
[26] |
Ben-Haim Y, Tom-Tov E. A streaming parallel decision tree algorithm. The Journal of Machine Learning Research, 2010, 11: 849-872. |
[27] |
Powers DMW. Evaluation: From precision, recall and f-factor to ROC, informedness, markedness & correlation. Journal of Machine Learning Technologies, 2008, 2: 2229-3981. |