基于IPPG 技术的情绪识别算法
2023-10-21粟立威陶雪饶治李贵文嵇晓强
粟立威,陶雪,饶治,李贵文,嵇晓强
(长春理工大学 生命科学技术学院,长春 130022)
面部表情被广泛用于情绪识别中,并且取得了较好的结果,但在自然环境中,可靠性不能得到保证[1-2]。其识别精度除了会受相机角度、照明和面部遮挡等因素的影响之外,面部表情也更容易被人为控制或伪造,导致情绪识别的真实性和精度下降。因此,使用面部表情来识别情绪状态可能会导致错误的分类。有研究通过脑电、心电、肌电、光体积描记等生理信号来实现人类情绪的识别[3-10]。与面部表情相比,使用生理参数来评估情绪更客观和可靠,并能够提供情绪状态的有用特征。
生理信号是量化情绪的可靠数据[11],但依赖于与传感器的直接接触。侵入性的传感器会干扰受试者并改变其情绪状态[12]。此外,这些设备测量的复杂性和电极的灵敏度限制了应用范围,如烧伤、创伤、传染病和严重感染等情况。最近,有研究提出使用IPPG 技术用于从面部提取生理线索的情绪识别系统[13-14]。这是一种从PPG(Photoplethysmography)发展而来的非接触式的光学检测技术[15],使用视频序列测量血容量脉搏引起的光吸收变化,以提取心肺参数,包括心率、脉搏率变异性(Pulae Rate Variability,PRV)和呼吸率[16-18]。
本文提出了一种基于IPPG 技术的非接触式情绪识别方法,首先从面部视频中提取IPPG 信号,并使用小波变换和带通滤波对信号去噪,接下来提取有效特征,最后对比四种不同的机器学习算法模型进行情绪分类。与基于面部表情的情绪识别相比,测量结果更加客观;与基于接触式的生理信号测量相比,测量过程更加简单,应用更加广泛。
1 方法
1.1 整体框架
本文提出的情绪识别方法如图1 所示。人脸面部视频首先进行面部识别,再进行信号处理,提取到IPPG 信号,并通过去噪算法提高信号质量,接着从IPPG 信号中提取心率变异性(Heart Rate Variability,HRV)特征,再使用机器学习对HRV 特征进行分类,最后得到基于IPPG 信号的情绪识别结果。
图1 基于IPPG 信号的情绪识别流程
1.2 DEAP 数据集
本文使用DEAP 数据库中22 位被测者的正面视频作为IPPG 信号的数据来源。DEAP 数据库是目前公开最大、最全面的物理信号情感数据集,已被广泛地应用于情感识别相关的研究中[19-21]。该数据集提供了10 个通道的数据,包括脑电图信号、皮肤电反应信号和光电容积脉搏波信号。32 名被测者(16 名女性,16 名男性)观看了40 个音乐时长均为60 s 的MV 片段,每个MV 片段表达着不同的情感,在观看视频的同时采集被测者多种生理信号,并录制了60 s 频率为50 Hz 的面部视频。同时,在观看视频结束后进行及时的自我评估,主要是对视频的唤醒度、效价度、支配度和喜好度进行情感评价。本文选择了唤醒和效价两种维度。其中,唤醒度表示由平静状态逐渐过渡到兴奋状态;效价度表示心情愉悦程度,从消极状态逐渐过渡到积极状态。
1.3 IPPG 信号提取
1.3.1 人脸检测与感兴趣区域选取
DEAP 数据库中的视频包含不相关的背景,会影响到IPPG 信号的获取,因此需要对视频中的背景进行去除。Retina Face[22]是自然场景下较为精确且高效的轻量级人脸检测算法之一,使用Retina Face 人脸检测算法来定位视频中的人脸并去除视频中与人脸无关的背景。首先将视频转换成连续的图像序列,序列长度为3 000,然后利用Retina Face 人脸检测算法检测每一帧的人脸区域。
在IPPG 信号的相关研究中,额头、眼睛和脸颊是被用来作为感兴趣区域(Region of Interest,ROI)比较多的地方[23]。在DEAP 数据库中,观察受试者的正面视频,发现额头区域均未出现大部分的毛发遮挡。由于人脸肌肉运动的不确定性会导致ROI 存在运动噪声,如眼球运动和嘴部运动等。因此,本文选取额头作为IPPG 信号的ROI 进行生理信号提取,如图2 所示。
1.3.2 信号采集
将提取到的面部ROI 图片进行颜色通道分离,将其分离为R、G、B 三个单通道图像,通过计算单通道内ROI 的像素均值得到IPPG 信号。皮肤的黑色素会吸收大量波长较短的波,并且在波长500~600 nm 的可见光波段,入射光大部分会被血红蛋白吸收,对应可见光的黄绿色区域,因此绿色通道的信号更能够反映心脏的周期性变化。本文选择绿色通道的信号作为IPPG 的原始信号,信号原始曲线如图3 所示。
图3 原始曲线图
1.4 信号去噪
原始信号中混杂着呼吸信号以及与心脏搏动无关的其他生理信号。在实验过程中,存在采集设备自身干扰、运动伪迹等噪声,主要包括高频噪声和基线漂移。为了获取到人体有效脉搏波频率范围内的信号,需要设计滤波器进行滤波处理。实验使用小波变换和带通滤波对信号进行滤波处理,信号去噪如图4 所示,其中信号去噪流程如图4(a)所示。
图4 信号去噪
通过心率变异性(Heart Rate Variability,HRV)特征对情绪进行识别,需要计算心率。基于正常人心跳频率范围,IPPG 信号集中在第三、四层分解信号中,将这两层信号结果进行叠加,作为去除基线漂移后包含心跳频率范围的小波重构波形,小波变换后的信号如图4(b)所示。实验设置带通滤波器,通频带设置为0.9~3 Hz,对应心跳频率为56~180 bmp,可以满足短时间内人体心跳的变化范围。将经过小波重构后的信号进行带通滤波处理,去噪后的信号如图4(c)所示。
为了提取到质量更高的IPPG 信号,并保证设置的滤波器适用于每一个样本的自身有效脉搏波频率范围,需要先计算样本的心率频率。将小波重构后的信号进行快速傅里叶变换,获取幅值最大值对应的频率值,即为对应的心率频率,记为amax。依据获得的心率频率amax设置窄带滤波器,张弛等人[24]提出的极短时非接触式心率变异性分析的结论0.3 为其经验值,本文经验值设置为0.3,包含36 bmp 的心跳波动,可以满足短时间内人体心跳的变化范围。因此将窄带滤波器的最大截止频率设置为amax+0.3,最小截止频率设置为amax-0.3。将上一步骤小波及带通滤波后的信号进行窄带滤波,最终得到了质量更高的IPPG 信号,最终IPPG 信号的结果如图4(d)所示。
1.5 特征提取
HRV 与PRV 等价,可以用来判断自主神经活性,衡量其内部交感与迷走神经调节的均衡程度[25]。对IPPG 信号进行峰值点检测。HRV 分析首先要获取RR 间期序列,即相邻峰值点之间的时间,为了获取准确的特征值,需要去除RR间期序列的离群值,本文设置最大与最小的RR间隔时间为400 ms 和1 800 ms,删除其范围外的时间间隔,并采用3 次样条插值添加新的RR 间期数值。
研究表明SDNN、RMSSD、PNN50、HF/LF 这些特征值与情绪之间的联系更为紧密[26],本文使用包括上述特征在内的时域、频域特征共8 个HRV 参数,如表1 所示。
表1 HRV 特征
1.6 特征分类
有效分类器的选择对于识别情绪的准确性和效率至关重要。本文采用了四种分类器,包括SVM[27]、K 近邻、决策树和随机森林[28],并比较了它们从IPPG 信号中提取HRV 特征进行情感分类任务的优劣。本文选择SVM 等传统分类器的原因有:(1)DEAP 数据集中包含了多位被试者的多模态生理数据、心理问卷数据和视频刺激数据,SVM 等传统分类器能够对这些数据进行较好分类,可以有效地区分不同情感状态之间的差异;(2)相较于神经网络等模型,SVM 分类器在分类决策时所采用的决策函数具有很强的解释性,这种特性有助于理解不同生理和心理特征与情感之间的关系,进而提高情感识别的效果;(3)情绪识别任务需要处理大量的视频数据,涉及到高维特征的提取和分类,SVM 等算法具有良好的可扩展性,可以处理大规模的DEAP数据集,同时也适用于高维数据的分类;(4)在DEAP 数据集中存在着各种噪声和干扰因素,例如环境光照和受试者不自主运动等。SVM 等算法具有较高的鲁棒性和稳定性,能够有效地应对这些干扰因素,提高情感分类的准确度。
使用DEAP 数据库中的22 名参与者的面部视频为数据源,样本数量为856,并采用5 折交叉验证对SVM、决策树、随机森林和K 近邻算法进行验证以得到效果最佳的分类模型。即将样本按照7:3 的比例划分成训练集和测试集,在训练集上使用5 折交叉验证得到最佳的分类模型,并在测试集进行测试得到最终的分类结果,四个分类模型的参数如表2 所示。
表2 分类模型参数
2 结果与分析
对于情感识别分类问题,本文使用多个评价指标,如准确率(Accuracy,Acc)、精确率(Precision,P)、召回率(Recall,R)和F1 值。这些测量的数学表达式是根据混淆矩阵参数定义的,如真正类(TP),表示将正类预测为正类数;真负类(TN),表示将负类预测为负类数;假正类(FP),表示将负类预测为正类数;假负类(FN),表示将正类预测为负类数。则:
将提取到的IPPG 信号的时域特征和频域特征采用四种分类器在唤醒和效价两个情感维度上进行分类,分类结果的混淆矩阵如图5 所示,并利用公式(1)~(4)计算其分类准确率Acc、精确率P、召回率R和F1 值。
图5 四种分类算法的混淆矩阵
使用DEAP 数据集进行分类训练,对比不同分类器对情绪识别结果的影响,模型评价指标结果如表3 所示。
表3 模型评价指标结果
在唤醒维度上,SVM 的准确率、精确率和F1值三个指标都是最高的,分别为61.09%、67.20%、0.701。决策树的召回率是最高的,其值为83.20%。SVM 的召回率为73.10%,排在第二。在效价维度上,SVM 的准确率和精确率最高,分别为53.31%和55.30%。召回率和F1 值最高的是KNN,分别是60.60%和0.572,SVM 的召回率和F1 值分别排在第三和第二。整体来看SVM 模型对唤醒和效价都有很好的分类性能。
本文的情绪识别系统在DEAP 数据集上与其他算法的比较如表4 所示。本文提出的框架在唤醒方面表现较全连接模型、贝叶斯分类器、决策树好,SVM 分类器的准确度为61.09%,效价方面与全连接模型、决策树相差不大,但较全连接模型差。这是由于分类器的结果是从各种外围信号生成的,而本文的结果仅从IPPG 信号导出。与卷积神经网络、多波段特征矩阵和CapsNet 相比,本文准确度在唤醒和效价表现都一般。其中,卷积神经网络则结合了血液容积脉搏波(Blood Volume Pulse,BVP)和皮肤电导率(Skin Conductance,SV)两种生理参数,多波段特征矩阵和CapsNet 则通过包含大量情绪信息的EEG(Electroencephalogram)信号实现情绪识别。尽管如此,差异并不大,表明了IPPG 用于情绪识别的潜力。IPPG 技术情绪识别精度目前难以达到非常高的准确度,这是由于许多因素会导致IPPG脉冲失真,包括成像仪器性能差、光源稳定性和受试者的状态(静止或运动)等。其中,与受试者运动相关的伪影是最大的挑战。
表4 情绪识别结果对比
3 结论
本文提出了一种基于IPPG 生理信号的情绪识别方法,IPPG 技术具有操作简单、成本低、安全、能够连续测量等优势。该模型在DEAP 数据集上进行了测试。其中,在使用SVM 算法下,模型的最高准确率在唤醒维度为61.09%,在效价维度为53.31%。结果表明了IPPG 信号进行情绪识别的客观性和可行性。未来在以下几个方面可做进一步研究:(1)改进IPPG 信号的处理方法,获得更高质量的IPPG 信号;(2)增加其他模态的情绪识别信号,提高建模精度;(3)改进建模手段,用深度学习等方法提高建模精度。该研究在远程医疗、人机交互和情绪监测等方面有广泛的应用前景。