面向脑瘫儿童的语音和面部表情数据处理方法及系统转让专利

申请号 : CN202410058892.4

文献号 : CN117577140B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 韩伟韩欣冶雷少元王朵王培申成彦文

申请人 : 北京岷德生物科技有限公司

摘要 :

本申请公开了一种面向脑瘫儿童的语音和面部表情数据处理方法及系统。本方法首先通过摄像头和麦克风来采集目标用户的视频和语音数据;然后对视频和语音数据进行预处理操作;包括识别视频中的人脸,并将检测出的人脸进行追踪及对齐进行切片;对于语音数据进行切片,并转换为对应Mel语谱图;最后将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果。本申请基于语音和面部表情数据对目标用户进行评分,从而辅助医生对目标用户的心理状态进行判断。

权利要求 :

1.一种面向脑瘫儿童的语音和面部表情数据处理方法,其特征在于,所述方法包括:通过摄像头和麦克风来采集目标用户的视频和语音数据;

对视频和语音数据进行预处理操作;具体地对视频进行预处理操作包括采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,并对经过人脸追踪和对齐操作后的视频进行切片;对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图;其中,语音数据每个切片的时长与视频数据每个切片的时长相同;

将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果;其中,所述状态评分结果用以表征目标用户的心理状态。

2.根据权利要求1所述的方法,其特征在于,采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,具体包括:将每一帧的图像进行不同尺度的缩放,以构建图像金字塔;

对于金字塔中的每个尺度,将视频图像传递给P‑Net;其中,P‑Net是完全卷积网络;用于检测视频图像中的各种比例的人脸,其使用边界框回归向量来校准各种尺度图像上收集的候选窗口,并应用非最大抑制来过滤高度重叠的候选窗口;

将P‑Net处理后的候选窗口传递到R‑Net中;其中R‑Net包括一个密集层,并通过边界框回归进行校准,并使用非最大值抑制来合并重叠的候选窗口,R‑Net输出信息包括输入是否是人脸、包含人脸的边界框以及面部关键点的位置;

将R‑Net输出信息进行修正,进一步确定面部关键点特征信息;其中,面部关键点具体包括眼睛、鼻子和嘴巴;

根据所述面部关键点特征信息计算出对应变换矩阵,将检测到的人脸对齐到标准大小和位置;

遍历视频中的所有视频帧,直到完成整个视频的处理。

3.根据权利要求2所述的方法,其特征在于,将P‑Net处理后的候选窗口传递到R‑Net中,具体包括:获取候选窗口坐标和大小信息;

修正边界框坐标;

根据修正后的边界框坐标,在原始测试图像上裁剪出相应的图像块;

对裁剪并调整大小后的图像块进行归一化操作;

将经过归一化操作的图像块输入到R‑Net中,通过R‑Net对图像块进行处理并预测出人脸边界框的偏移量和概率;

根据R‑Net的输出概率,筛选出具有高概率的候选窗口;

对保留的候选窗口应用NMS算法,以过滤掉高度重叠的窗口;

并对通过NMS筛选的边界框进行进一步的校准;其中,进一步的校准包括将边界框转换为正方形;四舍五入边界框的坐标,以获得整数值的坐标;将边界框的坐标还原到原始图像的坐标空间;最终的人脸检测结果保存在 bboxes 数组中,每个边界框包含了修正后的坐标、置信度分数和其他信息。

4.根据权利要求2所述的方法,其特征在于,将R‑Net输出信息进行修正,进一步确定面部关键点特征信息,包括:确定图像块大小和数量;

使用correct_bboxes函数修正边界框;

创建空的图像块数组,用于存储裁剪和调整大小后的图像块;

遍历每个候选窗口,在原始测试图像中复制像素值裁剪并复制对应的像素区域,使用插值法调整到指定大小,并将处理后的图像块存储进图像块数组;

将处理后的图像块输入到O‑Net中,O‑Net用于对图像块进行处理并预测出人脸边界框的偏移量、概率和面部关键点位置;

根据O‑Net输出的概率,筛选出具有高概率的候选窗口;

根据O‑Net的输出,更新边界框的得分,并保留这些得分;同时,取面部关键点的位置坐标;

使用更新后的边界框信息,计算面部关键点在原始测试图像上的坐标位置;

对通过概率筛选后的边界框进行进一步的校准,包括对边界框应用修正偏移;然后使用NMS算法对保留的边界框应用非最大抑制;

获取面部关键点特征信息,包括了更新后的边界框信息和面部关键点位置。

5.根据权利要求2所述的方法,其特征在于,根据所述面部关键点特征信息计算出对应变换矩阵,将检测到的人脸对齐到标准大小和位置,包括:左右眼坐标提取:从输入图像中提取左眼和右眼的坐标;

确定旋转方向:根据左眼和右眼的坐标,确定旋转的方向;

计算三角形边长:通过左眼、右眼和第三个点之间的坐标差来计算三角形的边长;

应用余弦定理:使用余弦定理来计算旋转角度;

旋转图像:根据旋转方向和计算得到的角度,将输入图像旋转相应的角度;

返回旋转后的图像:将旋转后的图像作为函数的输出。

6.根据权利要求1所述的方法,其特征在于,对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图,包括:通过预加重、分帧、加窗、短时傅里叶变换获得音频序列的频域线性谱,然后采用Mel滤波器组进一步将频域线性谱转换为Mel语谱图。

7.根据权利要求6所述的方法,其特征在于,所述预加重过程具体包括:通过对每个音频样本进行差分运算来实现,通过公式y[n]=x[n]‑α·x[n‑1]确定预加重后的信号;其中,x[n]是音频帧,n是窗口中的样本索引,α是预加重系数。

8.根据权利要求6所述的方法,其特征在于,所述分帧、加窗过程具体包括:将预加重后的音频信号分成短时帧;

将每个分帧后的音频帧会与窗函数进行逐元素相乘,其中,窗函数的公式为:w[n]=0.54‑0.46·cos[(2Πn)/(N‑1)]其中,w[n]是窗函数的值,n是窗口中的样本索引,N是信号长度。

9.根据权利要求6所述的方法,其特征在于,短时傅里叶变换获得音频序列的频域线性谱具体包括:将加窗后的音频帧通过短时傅里叶变换转换成频域线性谱,并通过Mel滤波器组将频域线性谱转换为Mel语谱图;其中,短时傅里叶变换的公式为:其中,N是信号长度; x[n]是加窗后的音频

帧;w[n]是窗函数,ω是离散时间信号的频率, 是复指数项,表示信号在频域上的变化。

10.一种面向脑瘫儿童的语音和面部表情数据处理系统,其特征在于,所述系统包括:采集模块,用于通过摄像头和麦克风来采集目标用户的视频和语音数据;

处理模块,用于对视频和语音数据进行预处理操作;具体地对视频进行预处理操作包括采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,并对经过人脸追踪和对齐操作后的视频进行切片;对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图;其中,语音数据每个切片的时长与视频数据每个切片的时长相同;

评分模块,用于将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果;其中,所述状态评分结果用以表征目标用户的心理健康状态。

说明书 :

面向脑瘫儿童的语音和面部表情数据处理方法及系统

技术领域

[0001] 本发明涉及神经网络技术领域,特别涉及一种面向脑瘫儿童的语音和面部表情数据处理方法及系统。

背景技术

[0002] 脑瘫(cerebral palsy),全称脑性瘫痪,是引起小儿机体运动残疾的主要疾病之一,大多数脑瘫儿童行为表达有限,难以被察觉,导致脑瘫儿童常伴有的抑郁、焦虑、悲伤和淡漠等精神心理问题被忽视,因此及时、有效的针对脑瘫儿童进行抑郁的早期筛查和干预,对改善患者康复和长期预后十分必要。
[0003] 目前对脑瘫儿童的抑郁程度进行度量的方式主要依赖于量表,包括《力量和困难问卷》(SDQ和简明婴幼儿社会情感评估表 (BITSEA)等,虽然这些量表已经过一系列的临床验证具有较好的信度和效度,其仍具有以下不足:(1)主要依赖于父母或照顾者的报告,容易受到主观因素的影响。脑瘫儿童的行为表达往往有限,父母或照顾者可能无法准确地评估其情绪状态;(2)难以捕捉脑瘫儿童情绪的微妙变化;(3)评估操作相对不方便。

发明内容

[0004] 基于此,本申请实施例提供了一种面向脑瘫儿童的语音和面部表情数据处理方法及系统,能够基于语音和面部表情数据对目标用户进行评分,从而辅助医生对目标用户的心理状态进行判断。
[0005] 第一方面,提供了一种面向脑瘫儿童的语音和面部表情数据处理方法,该方法包括:
[0006] 通过摄像头和麦克风来采集目标用户的视频和语音数据;
[0007] 对视频和语音数据进行预处理操作;具体地对视频进行预处理操作包括采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,并对经过人脸追踪和对齐操作后的视频进行切片;对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图;其中,语音数据每个切片的时长与视频数据每个切片的时长相同;
[0008] 将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果;其中,所述状态评分结果用以表征目标用户的心理健康状态。
[0009] 可选地,采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,具体包括:
[0010] 将每一帧的图像进行不同尺度的缩放,以构建图像金字塔;
[0011] 对于金字塔中的每个尺度,将视频图像传递给P‑Net;其中,P‑Net是完全卷积网络;用于检测视频图像中的各种比例的人脸,其使用边界框回归向量来校准各种尺度图像上收集的候选窗口,并应用非最大抑制来过滤高度重叠的候选窗口;
[0012] 将P‑Net处理后的候选窗口传递到R‑Net中;其中R‑Net包括一个密集层,并通过边界框回归进行校准,并使用非最大值抑制来合并重叠的候选窗口,R‑Net输出信息包括输入是否是人脸、包含人脸的边界框以及面部关键点的位置;
[0013] 将R‑Net输出信息进行修正,进一步确定面部关键点特征信息;其中,面部关键点具体包括眼睛、鼻子和嘴巴;
[0014] 根据所述面部关键点特征信息计算出对应变换矩阵,将检测到的人脸对齐到标准大小和位置;
[0015] 遍历视频中的所有视频帧,直到完成整个视频的处理。
[0016] 可选地,将P‑Net处理后的候选窗口传递到R‑Net中,具体包括:
[0017] 获取候选窗口坐标和大小信息;
[0018] 修正边界框坐标;
[0019] 根据修正后的边界框坐标坐标,在原始测试图像上裁剪出相应的图像块;
[0020] 对裁剪并调整大小后的图像块进行归一化操作;
[0021] 将经过归一化操作的图像块输入到R‑Net中,通过R‑Net对图像块进行处理并预测出人脸边界框的偏移量和概率;
[0022] 根据R‑Net的输出概率,筛选出具有高概率的候选窗口;
[0023] 对保留的候选窗口应用NMS算法,以过滤掉高度重叠的窗口;
[0024] 并对通过NMS筛选的边界框进行进一步的校准;其中,进一步的校准包括将边界框转换为正方形;四舍五入边界框的坐标,以获得整数值的坐标;将边界框的坐标还原到原始图像的坐标空间;最终的人脸检测结果保存在 bboxes 数组中,每个边界框包含了修正后的坐标、置信度分数和其他信息。
[0025] 可选地,将R‑Net输出信息进行修正,进一步确定面部关键点特征信息,包括:
[0026] 确定图像块大小和数量;
[0027] 使用correct_bboxes函数修正边界框;
[0028] 创建空的图像块数组,用于存储裁剪和调整大小后的图像块;
[0029] 遍历每个候选窗口,在原始测试图像中复制像素值裁剪并复制对应的像素区域,使用插值法调整到指定大小,并将处理后的图像块存储进图像块数组;
[0030] 将处理后的图像块输入到O‑Net中,O‑Net用于对图像块进行处理并预测出人脸边界框的偏移量、概率和面部关键点位置;
[0031] 根据O‑Net输出的概率,筛选出具有高概率的候选窗口;
[0032] 根据O‑Net的输出,更新边界框的得分,并保留这些得分;同时,取面部关键点的位置坐标;
[0033] 使用更新后的边界框信息,计算面部关键点在原始测试图像上的坐标位置;
[0034] 对通过概率筛选后的边界框进行进一步的校准,通常包括对边界框应用修正偏移;然后使用NMS算法对保留的边界框应用非最大抑制;
[0035] 获取面部关键点特征信息,包括了更新后的边界框信息和面部关键点位置。
[0036] 可选地,根据所述面部关键点特征信息计算出对应变换矩阵,将检测到的人脸对齐到标准大小和位置,包括:
[0037] 左右眼坐标提取:从输入图像中提取左眼和右眼的坐标;
[0038] 确定旋转方向:根据左眼和右眼的坐标,确定旋转的方向;
[0039] 计算三角形边长:通过左眼、右眼和第三个点之间的坐标差来计算三角形的边长;
[0040] 应用余弦定理:使用余弦定理来计算旋转角度;
[0041] 旋转图像:根据旋转方向和计算得到的角度,将输入图像旋转相应的角度;
[0042] 返回旋转后的图像:将旋转后的图像作为函数的输出。
[0043] 可选地,对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图,包括:
[0044] 通过预加重、分帧、加窗、短时傅里叶变换获得音频序列的频域线性谱,然后采用Mel滤波器组进一步将频域线性谱转换为Mel语谱图。
[0045] 可选地,所述预加重过程具体包括:
[0046] 通过对每个音频样本进行差分运算来实现,通过公式
[0047] y[n]=x[n]‑α·x[n‑1]
[0048] 确定预加重后的信号;其中,x[n]是音频帧,α是预加重系数。
[0049] 可选地,所述分帧、加窗过程具体包括:
[0050] 将预加重后的音频信号分成短时帧;
[0051] 将每个分帧后的音频帧会与窗函数进行逐元素相乘,其中,窗函数的公式为:
[0052] w[n]=0.54‑0.46·cos[(2Πn)/(N‑1)]
[0053] 其中,w[n]是窗函数的值,n是窗口中的样本索引,N是信号长度。
[0054] 可选地,短时傅里叶变换获得音频序列的频域线性谱具体包括:
[0055] 将加窗后的音频帧通过短时傅里叶变换转换成频域线性谱,并通过Mel滤波器组将频域线性谱转换为Mel语谱图;其中,短时傅里叶变换的公式为:
[0056]
[0057] 其中,N是信号长度; x[n]是加窗后的音频帧;w[n]是窗函数,ω是离散时间信号的频率, 是复指数项,表示信号在频域上的变化。
[0058] 第二方面,提供了一种面向脑瘫儿童的语音和面部表情数据处理系统,该系统包括:
[0059] 采集模块,用于通过摄像头和麦克风来采集目标用户的视频和语音数据;
[0060] 处理模块,用于对视频和语音数据进行预处理操作;具体地对视频进行预处理操作包括采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,并对经过人脸追踪和对齐操作后的视频进行切片;对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图;其中,语音数据每个切片的时长与视频数据每个切片的时长相同;
[0061] 评分模块,用于将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果;其中,所述状态评分结果用以表征目标用户的心理健康状态。
[0062] 本申请实施例提供的技术方案带来的有益效果至少包括:
[0063] 本申请实施例提供的技术方案中首先通过摄像头和麦克风来采集目标用户的视频和语音数据;然后对视频和语音数据进行预处理操作;包括识别视频中的人脸,并将检测出的人脸进行追踪及对齐进行切片;对于语音数据进行切片,并转换为对应Mel语谱图;最后将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果。可以看出,本发明的有益效果在于:用户可以轻松访问得到的抑郁评分,以更好地了解被测对象情感状态;也可以分享给医疗专业人员,以帮助制定干预计划和治疗方案。

附图说明

[0064] 为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的实施附图。
[0065] 图1为本申请实施例提供的一种面向脑瘫儿童的语音和面部表情数据处理流程图;
[0066] 图2为本申请实施例提供的MTCNN模型处理流程图;
[0067] 图3为本申请实施例提供的一种系统架构流程图。

具体实施方式

[0068] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0069] 在本发明的描述中,术语“包括”、“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包括了一系列步骤或单元的过程、方法、系统、产品或设备不必限于已明确列出的那些步骤或单元,而是还可包含虽然并未明确列出的但对于这些过程、方法、产品或设备固有的其它步骤或单元,或者基于本发明构思进一步的优化方案所增加的步骤或单元。
[0070] 本申请提出了一种综合性的手机应用方案,旨在帮助脑瘫患者抑郁症的识别与管理。通过智能手机的摄像头和麦克风来采集目标用户的视频和语音数据。用户只需使用他们的智能手机,无需额外的硬件设备。这使得数据采集变得更加方便和易于使用。一旦用户同意使用应用程序,系统会开始录制视频数据。这些视频数据会自动分割成小的时间片段,通常为5秒。每个时间片段都被进一步分析,以捕获患者的面部表情随时间的变化。手机的高分辨率摄像头可以提供足够的图像细节,以捕捉微妙的表情变化。应用程序也会录制用户的语音数据,并将其转化为语谱图。这些语谱图能够反映语音信号的频率和强度的变化,为了提供有关患者语音模式的信息。应用程序内部集成了经过训练的机器学习模型,这些模型已经在大量数据上进行了训练,以了解不同的情感状态和抑郁症的特征。当用户录制视频和语音数据时,应用程序会将这些数据传送到模型进行分析,并生成用户抑郁情绪的评分(0‑100分)。用户可以轻松访问这些评分,以更好地了解自己的情感状态。这一评分也可以分享给医疗专业人员,以帮助制定干预计划和治疗方案。
[0071] 具体地,请参考图1,其示出了本申请实施例提供的一种面向脑瘫儿童的语音和面部表情数据处理方法的流程图,该方法可以包括以下步骤:
[0072] S1,通过摄像头和麦克风来采集目标用户的视频和语音数据。
[0073] 在本步骤中,语音信号的采集是通过应用程序调用手机内置的麦克风设备来捕捉并记录用户的发音信息,包括语音内容、音调、音量等声音数据。这些声音数据会被暂时存储在手机的本地存储空间中,而后可以根据用户的选择上传到系统中。这种方式确保了用户的语音数据得到保护和隐私,并允许他们在需要时与医疗专业人员分享这些数据以进行抑郁症的评估和诊断。
[0074] 视频信号采集模块的任务是捕捉脑瘫患者的面部动作和表情,以为医疗专业人员提供关键的诊断和治疗信息。这一模块充分利用了手机设备的内置摄像头,以高质量的方式记录患者的面部活动。为了确保最佳的面部数据采集,通常设置视频采集参数为每秒30帧(30帧/秒),这一高帧率保证了面部动作和表情的流畅捕捉,有助于更准确地分析患者的面部活动。与语音信号采集模块一样,视频数据也可以选择性地存储在手机的本地存储空间中,以保护患者的隐私,允许他们随时控制何时上传数据到系统中。
[0075] S2,对视频和语音数据进行预处理操作。
[0076] 具体地对视频进行预处理操作包括采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,并对经过人脸追踪和对齐操作后的视频进行切片;对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图;其中,语音数据每个切片的时长与视频数据每个切片的时长相同。
[0077] 在本步骤中负责对采集的视频和语音数据进行预处理,以便为后续的分析和处理提供适当的数据格式。具体功能包括对视频进行人脸追踪和对齐,视频分帧处理,音频切片操作,以及对音频数据进行傅里叶变换,生成语谱图。具体地包括:
[0078] 视频人脸追踪及对齐,这一部分的功能是通过视频数据中检测出的人脸进行追踪,并对齐它们,以确保在连续帧中的人脸位置一致。为了实现这个目标,系统采用预先训练好的MTCNN模型来识别视频中的人脸。
[0079] MTCNN(Multi‑Task Cascaded Convolutional Neural Networks)中文全称为“多任务级联卷积神经网络",其主要包括3个阶段,在第一阶段,它使用一个浅层的 CNN 来快速生成候选窗口。在第二阶段,它通过一个更复杂的 CNN 来细化提出的候选窗口。最后,在第三阶段,它使用一个比其他两个更复杂的第三个 CNN 来进一步细化结果并输出面部关键点位置。下面进行详细的说明:
[0080] S21,图像金字塔构建:
[0081] 首先,我们将每一帧的图像进行不同尺度的缩放,以构建图像金字塔。这个图像金字塔将成为接下来三个级联网络的输入。
[0082] S22,提案网络(P‑Net):
[0083] 对于金字塔中的每个尺度,我们首先将图像传递给P‑Net,P‑Net是一个完全卷积网络(FCN),能够接受任何图像尺寸。其主要目的是成功检测图像中的各种比例的人脸,其使用边界框回归向量来校准各种尺度图像上收集的候选窗口。然后应用非最大抑制(NMS)来过滤高度重叠的候选窗口。由于在训练时采用的是大小为12x12的图像,因此在本步骤中相当于以步幅为2移动大小为12x12的窗口。P‑Net的输出是2个特征图,分别是人脸分类[grid size x grid size x 2]和边界框回归[grid size x grid size x 4]。每个单元格的索引将转换为输入图像上的候选窗口坐标,即每个网格单元格的位置在输入图像上都有一个对应的候选窗口。这个候选窗口是通过将网格单元格的位置信息转换为输入图像坐标来得到的。
[0084] S23,优化网络(R‑Net):
[0085] 所有来自P‑Net的候选窗口都被传递到R‑Net。R‑Net是一个CNN,不同于P‑Net,因为它包括一个密集层。R‑Net的任务是进一步减少候选窗口的数量,通过边界框回归进行校准,并使用非最大值抑制(NMS)来合并重叠的候选窗口。R‑Net输出的信息包括输入是否是人脸、包含人脸的边界框以及面部关键点的位置。具体的:
[0086] (1)获取候选窗口坐标和大小信息:首先,从输入的候选窗口列表 bboxes 中提取每个候选窗口的坐标信息(x1、y1、x2、y2)以及它们的宽度和高度。这些坐标表示了候选窗口在原始图像上的位置和大小;
[0087] (2)修正边界框坐标:接下来,对候选窗口的坐标进行修正,以确保它们不会超出测试图像的边界。修正的过程包括以下步骤;
[0088] 如果候选窗口的右下角坐标ex大于测试图像的宽度减1(考虑了0‑based索引),则将ex修正为测试图像的宽度减1,并相应地调整edx;
[0089] 如果候选窗口的右下角坐标ey大于测试图像的高度减1,则将ey修正为测试图像的高度减1,并相应地调整edy;
[0090] 如果候选窗口的左上角坐标x小于0,则将x修正为0,并相应地调整dx。
[0091] 如果候选窗口的左上角坐标y小于0,则将y修正为0,并相应地调整dy。
[0092] 这些修正确保了候选窗口完全位于测试图像内部。
[0093] (3)裁剪和调整大小:根据修正后的坐标,在原始测试图像上裁剪出相应的图像块,这些图像块将用于后续处理。同时,将这些裁剪后的图像块调整为指定的大小,通常是24x24像素。
[0094] (4)预处理:对裁剪并调整大小后的图像块进行预处理操作(归一化),以便将它们用作R‑Net的输入。
[0095] (5)R‑Net预测:将经过预处理的图像块输入到R‑Net中,R‑Net会对这些图像块进行处理并预测出人脸边界框的偏移量offset和概率prob。
[0096] (6)通过概率筛选:根据R‑Net的输出概率,筛选出具有高概率的候选窗口。通常,只保留概率高于某个阈值的窗口。
[0097] (7)非最大抑制(NMS):对保留的候选窗口应用NMS算法,以过滤掉高度重叠的窗口。NMS有助于去除冗余的检测结果,从而得到最终的人脸检测结果。
[0098] (8)进一步的校准和处理:对通过NMS筛选的边界框进行进一步的校准,通常包括以下步骤:
[0099] 将边界框转换为正方形,以便更好地适应人脸区域。
[0100] 四舍五入边界框的坐标,以获得整数值的坐标。
[0101] 同时将边界框的坐标还原到原始图像的坐标空间。
[0102] 最终结果:最终的人脸检测结果保存在bboxes数组中,每个边界框包含了修正后的坐标、置信度分数和其他信息。
[0103] S24,输出网络(O‑Net):
[0104] 与R‑Net类似,O‑Net的任务是描述人脸并输出面部关键点的位置。这个阶段提供更详细的面部特征信息,包括眼睛、鼻子和嘴巴等五个关键点的位置。具体如下:
[0105] (1)确定图像块大小和数量:首先,设置图像块的大小为48x48像素,然后确定候选窗口的数量num_boxes,该数量是之前阶段筛选得到的候选窗口的数量;
[0106] (2)使用correct_bboxes函数修正边界框:使用之前定义的 correct_bboxes 函数,对候选窗口的边界框坐标进行修正,确保它们不会超出测试图像的边界。修正后的坐标包括dy、edy、dx、edx、y、ey、x 和 ex,以及宽度w和高度 h。
[0107] (3)创建空的图像块数组:创建一个空的数组img_boxes,其形状为 (num_boxes, 3, size, size),用于存储裁剪和调整大小后的图像块。这些图像块将用于后续的处理。
[0108] (4)遍历每个候选窗口:使用循环遍历每个候选窗口,执行以下操作:
[0109] a.创建一个与当前候选窗口大小相匹配的空图像块 img_box。
[0110] b.从原始测试图像中复制像素值到img_box,通过裁剪并复制对应的像素区域。
[0111] c.调整img_box的大小为指定的大小(48x48),通常使用插值方法。
[0112] d.将处理后的img_box存储到img_boxes数组中。
[0113] (5)进行O‑Net预测:将处理后的图像块输入到O‑Net中,O‑Net会对这些图像块进行处理并预测出人脸边界框的偏移量、概率和面部关键点位置;
[0114] (6)根据概率筛选:根据O‑Net输出的概率,筛选出具有高概率的候选窗口。这里,只保留概率高于0.9的窗口;
[0115] (7)更新边界框信息和关键点位置:根据O‑Net的输出,更新边界框的得分,并保留这些得分。同时,获取面部关键点的位置,这些关键点的坐标在后续处理中会用到;
[0116] (8)计算面部关键点坐标:使用更新后的边界框信息,计算面部关键点在原始测试图像上的坐标位置。这涉及到使用边界框的位置和大小信息来计算相对于原始图像的坐标。
[0117] (9)进一步的校准和NMS:对通过概率筛选后的边界框进行进一步的校准,通常包括对边界框应用修正偏移。然后,使用NMS算法对保留的边界框应用非最大抑制,以去除冗余的检测结果。
[0118] (10)最终的人脸检测结果包括了更新后的边界框信息和面部关键点位置,这些结果存储在相应的数据结构中。这些边界框包括了修正后的坐标、得分等信息。
[0119] S25,人脸对齐:
[0120] 使用O‑Net输出的面部关键点信息,系统可以计算出一个变换矩阵,将检测到的人脸对齐到一个标准的大小和位置。这确保了不同帧中的人脸具有相同的位置和大小。这里采用的是224×224像素),以便进行后续的面部表情分析和情感评估。具体的:
[0121] (1)左右眼坐标提取:首先,从输入图像中提取左眼和右眼的坐标。这些坐标分别为 (left_eye_x, left_eye_y) 和 (right_eye_x, right_eye_y)。
[0122] (2)确定旋转方向:根据左眼和右眼的坐标,确定旋转的方向。如果左眼的Y坐标大于右眼的Y坐标,说明需要顺时针旋转,所以 direction 被设置为 ‑1;否则,需要逆时针旋转,所以 direction 被设置为 1。
[0123] (3)计算三角形边长:通过左眼、右眼和第三个点(point_3rd)之间的坐标差来计算三角形的边长 a、b 和 c。这些边长是根据欧几里德距离计算的。
[0124] (4)应用余弦定理:使用余弦定理来计算旋转角度。如果 b 和 c 都不为零,那么可以使用余弦定理来计算角度 angle(以度为单位)。
[0125] (5)旋转图像:根据旋转方向和计算得到的角度,将输入图像旋转相应的角度。如果direction为‑1,则需要逆时针旋转,否则需要顺时针旋转。
[0126] (6)返回旋转后的图像:将旋转后的图像作为函数的输出。
[0127] S26,重复处理下一帧:
[0128] 以上所有步骤都将针对每个视频帧重复进行,直到完成整个视频的处理。这使得我们能够持续检测和对齐视频中的人脸。如图2,给出了上述MTCNN模型处理流程图。
[0129] 在经过对齐视频中的人脸后,方法包括视频切片,具体地:
[0130] 对经过S21‑S26中的人脸追踪和对齐操作后的视频数据进行切片,每个切片的时长为5秒。这个切片操作需要特别注意,由于进行了人脸对齐,可能存在某些帧中没有检测到人脸的情况,从而导致切片之间的断裂。为解决这个问题,系统会智能地选择包含连续人脸对齐的帧来形成5秒切片,以最大程度地减少断裂的可能性。当检测到某帧中没有人脸时,系统将根据需要自动调整切片的起始和结束位置,以确保切片中包含关键的面部表情信息。这个智能切片策略有助于维持时间同步性并减少数据断裂带来的影响。
[0131] 对于音频的处理,包括对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图,具体地:
[0132] 对于语音数据,切片操作仍然以5秒为时长进行,与视频数据保持一致,以便于后续的分析和处理。并在对音频进行切割后,针对每段音频序列转换为Mel语谱图时,通过预加重、分帧、加窗、短时傅里叶变换获得音频序列的频域线性谱,然后采用Mel滤波器组进一步将频域线性谱转换为Mel语谱图。具体的:
[0133] (1)预加重: 首先,音频信号会经过预加重处理,这是为了减少高频成分的振幅,以改善后续分析的效果。预加重通过对每个音频样本进行差分运算来实现,公式如下:
[0134] y[n]=x[n]‑α·x[n‑1]
[0135] 其中, y[n]是预加重后的信号,x[n]是音频帧,α是预加重系数,取值为0.9。
[0136] (2)分帧:预加重后的音频信号被分成短时帧,每帧的持续时间为30毫秒。这是为了在不同时间段内捕获声音的短期变化。分帧使用重叠滑动窗口来实现,重叠长度设置为15毫秒以确保相邻帧之间有一定的重叠,以捕捉连续声音的上下文信息。
[0137] (3)每个分帧后的音频帧会与窗函数进行逐元素相乘,本模块采用汉明窗(Hamming window)。窗函数的公式如下:
[0138] w[n]=0.54‑0.46·cos[(2Πn)/(N‑1)]
[0139] 其中,w[n]是窗函数的值,n是窗口中的样本索引,N是信号长度。
[0140] (4)短时傅里叶变换(STFT): 加窗后的音频帧通过短时傅里叶变换(STFT)转换成频域线性谱。STFT将时域信号转换为频域信号,使我们能够分析不同频率成分的能量分布。STFT的公式为:
[0141]
[0142] 其中,N是信号长度; x[n]是加窗后的音频帧;w[n]是窗函数,ω是离散时间信号的频率, 是复指数项,表示信号在频域上的变化。
[0143] (5)Mel滤波器组: 最后,通过Mel滤波器组将频域线性谱转换为Mel语谱图。这一过程涉及将频谱分成一系列Mel频率带,以模拟人类听觉系统对声音的感知方式。Mel滤波器组的设计通常采用三角形滤波器的形式,其频率分布在Mel频率刻度上。Mel滤波器组的输出是每个Mel频率带的能量,形成了Mel频率谱。
[0144] S3,将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果。
[0145] 其中,本申请目标用户的状态评分可以用来表征目标用户的心理健康状态,也即高于设定阈值时,心理状态良好,低于设定阈值时,可能目标用户存在抑郁的情况。在本步骤中,通过S2获得的数据具体处理包括了抑郁识别,抑郁识别的具体过程为经过预处理的视频和音频的Mel频率谱,输出为用户是否处于抑郁状态。该模块的输入根据模态不同分为两部分:经过预处理的视频输入到3D的CNN中,音频数据则在转换成语谱图后输入到2D的CNN中。该模块使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性,同时解决视频模态和语音模态之间的互补性问题。
[0146] 进而,用一个预训练好的视频处理模型,一个结合了预先训练的残差神经网络(Resnet)和长短时记忆网络(LSTM)的模型。根据前述预处理步骤,对于一个新的时长为50秒的视频,将其分割成了10个时长为5秒的视频片段,每个视频片段包含150帧,经过MTCNN预处理后,每帧图像大小为224×224像素。首先利用预训练的Resnet提取每个帧的图像特征 ,随后输入到LSTM模块中,
[0147]
[0148] 得到新的视频片段的整体特征表示 。
[0149] 在音频模块中,音频信号也被分割成了10个时长为5秒的音频片段,以与视频片段相对应。每个音频片段所产生的语谱图被输入到一个预先训练的2D卷积神经网络中,从2D语谱图中提取有用的音频表示 。
[0150] 本申请中具体使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性引入了模态之间的关联。首先,以视频注意力主导,计算视频全局表示z^v,这通常通过对F'进行池化操作来实现。然后,直接使用预训练模型计算得到的注意力权重α^a_t。接着,我们将这些音频权重与原始音频特征相乘,并对它们进行加权求和,得到更新后的音频表示A''。最终的输出表示O由更新后的音频表示A''和视频表示V''组成,它们在模态间通过注意力机制相互影响,反映了不同模态之间的关联信息。
[0151] (1)首先,将各个slice进行stacking:
[0152]
[0153] 其中,
[0154] 。
[0155] (2)然后,Y 被传递到另一个 Transformer 单元。其中查询(Q)、键(K)和值(V)分别表示为:
[0156]
[0157] 根据 计算注意力如下:
[0158]
[0159] 最终, 和 是利用注意力机制更新后的
[0160]
[0161]
[0162] 在这个Transformer单元中,多头子层的输出同时考虑了跨模态和内部模态的关系。最后, 特征被馈送到全连接层得到抑郁评分,用于预测抑郁。
[0163] 如图3给出了上述实施例中系统架构流程图。
[0164] 在本申请可选的实施例中,本方法还包括反馈模块,具体地:
[0165] 反馈模块在抑郁识别模块的结果基础上扮演着关键角色,旨在为脑瘫患者提供个性化的支持和干预措施,以协助他们更好地管理和改善情感状态。该模块会根据抑郁可能性的程度提供定制化的建议,把情感支持、专业干预和日常生活建议有机地结合在一起。
[0166] 具体包括抑郁可能性分析,基于抑郁识别模块的输出,反馈模块的首要任务是评估患者当前的情感状态。通常情况下,我们采用一个0到100分的抑郁可能性评分,其中得分越高,代表患者可能面临的抑郁风险越大。通常,当评分达到50分以上时,系统会认为需要干预和反馈。
[0167] 具体还包括个性化反馈和干预,根据抑郁可能性的评分结果,针对评分达到50分以上的患者,反馈模块会提供具体的个性化反馈和干预建议,以满足患者不同情感状态的需求:
[0168] 情感支持:针对抑郁可能性较低的患者,系统鼓励家人和亲近的人提供情感支持。这包括鼓励性语言、积极的反馈以及分享情感的方式。这种支持有助于提高患者的情感状态和心理健康,将其抬升到更积极的情绪状态。
[0169] 专业干预:对于抑郁可能性较高的患者,尤其是那些评分达到50分以上的人,系统会强烈建议他们寻求专业心理医生或心理治疗师的支持。系统将提供相关的医疗资源和联系信息,以便患者能够尽早获得专业的干预和治疗,以有效地应对抑郁。
[0170] 日常建议:无论抑郁可能性的评分如何,系统都可以提供一些建议,以帮助患者改善他们的生活质量。这些建议包括保持健康的生活方式、建立规律的作息时间、积极参与社交互动和娱乐活动等,这些都是促进情感健康的重要因素。
[0171] 通过将这些个性化的反馈和干预措施与抑郁可能性的评分相结合,反馈模块旨在为脑瘫患者提供最合适的支持,以帮助他们管理情感状态并提高生活质量。这一综合性的方法有助于确保患者获得最有效的抑郁干预和支持。
[0172] 反馈模块还具备强大的监测和跟踪功能,以追踪患者的情感状态随时间的变化。具体的,本申请会根据患者最近的抑郁评分来确定收集患者语音和面部表情数,收集的数据将经过深度学习和情感分析的算法处理。这些算法能够从声音和面部表情中提取情感特征,以及计算抑郁可能性的评分。通过时间序列分析,系统能够检测到患者抑郁状态变化的趋势。这可能包括抑郁可能性的逐渐升高或降低,以及情感状态的周期性变化。系统可以识别出可能需要干预的情况,如情感状态的急剧变化或长期恶化。
[0173] 本申请实施例还提供的一种面向脑瘫儿童的语音和面部表情数据处理系统。系统包括:
[0174] 采集模块,用于通过摄像头和麦克风来采集目标用户的视频和语音数据;
[0175] 处理模块,用于对视频和语音数据进行预处理操作;具体地对视频进行预处理操作包括采用预先训练好的MTCNN模型来识别视频中的人脸,并将检测出的人脸进行追踪及对齐,并对经过人脸追踪和对齐操作后的视频进行切片;对语音数据进行预处理操作包括对于语音数据进行切片,并将切片后的音频序列转换为对应Mel语谱图;其中,语音数据每个切片的时长与视频数据每个切片的时长相同;
[0176] 评分模块,用于将经过预处理的视频输入到3D的CNN中、音频数据对应的Mel频率谱输入到2D的CNN中使用双向注意力机制来处理视频内部和音频内部不同时间点的相关性得到目标用户的状态评分结果;其中,所述状态评分结果用以表征目标用户的心理健康状态。
[0177] 本申请实施例提供的面向脑瘫儿童的语音和面部表情数据处理系统用于实现上述面向脑瘫儿童的语音和面部表情数据处理方法,关于面向脑瘫儿童的语音和面部表情数据处理系统的具体限定可以参见上文中对于面向脑瘫儿童的语音和面部表情数据处理方法的限定,在此不再赘述。上述面向脑瘫儿童的语音和面部表情数据处理系统中的各个部分可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于设备中的处理器中,也可以以软件形式存储于设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0178] 以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0179] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。