1.本发明属于人工智能技术领域,具体涉及一种基于声音识别和人脸识别的复合网课考勤系统及方法。
背景技术:2.课堂考勤是指通过某种方式来获取学生在某个特定课程的时间段内的出勤情况,进行课堂考勤能够有效地提升校园管理,同时起到了监督学生进行校本学习的作用;并且,学生的出勤情况是评估课堂教学效果的一个重要数据和衡量学生期末综合成绩的重要参数。现今的课堂分为线上课堂和线下课堂,线下课堂通常为以学生和教师面对面的方式进行课程学习,而线上课堂为通过网络课程开展课程学习,线下课堂的传统考勤方式包括人工手动签到、人工统计考勤、移动端考勤打卡,这些传统考勤方式或多或少地衍生出一些问题,例如,学生代人考勤、考勤的准确率不高等。有些情况需要将线下课堂转变为线上课堂,在这种情况下,教师难以对每一位进行课堂学习的学生进行考勤工作,不仅影响了教师对课堂教学效果的评估工作,还降低了学生对于课程学习的积极性,容易造成学生学习的怠慢和懒惰。
技术实现要素:3.本发明的目的是提供一种基于声音识别和人脸识别的复合网课考勤系统及方法,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
4.本发明解决其技术问题的解决方案是:提供一种基于声音识别和人脸识别的复合网课考勤系统,包括:通讯模块、云服务器、数据采集模块、第一处理模块、第二处理模块、声纹识别模块、人脸识别模块、考勤分析模块,所述云服务器分别与考勤分析模块、通讯模块进行连接,所述预处理模块分别与数据采集模块、声纹识别模块、人脸识别模块连接;
5.所述通讯模块用于获取教师的考勤请求信息并发送至云服务器;
6.所述云服务器存储有学生人脸数据库和学生声纹样本库,所述云服务器用于获取所述考勤请求信息,从随机词条库中挑选一条词条信息,将其显示在学生所使用的显示屏上,并提示学生进行朗读;
7.其中,所述学生人脸数据库包括全部学生的若干个正脸照图像以及每个正脸照图像对应的标注信息;所述学生声纹样本库包括全部学生的若干个声纹样本信息和每个声纹样本信息对应的学生名字;
8.所述数据采集模块包括麦克风和摄像头,所述麦克风用于采集所述词条信息所对应的学生的原始语音信息,所述摄像头用于采集学生朗读时的原始视频动态;
9.所述第一处理模块用于预处理原始语音信息、筛选有效的语音信息,并提取有效的语音信息的特征,输出声纹特征信息;
10.所述第二处理模块用于截取任一时刻下原始视频动态的图像帧,所述图像帧为学生的正脸图像,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提
取,生成人脸特征图像;
11.所述声纹识别模块用于构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数;
12.所述人脸识别模块用于构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,获得第二考勤分数;
13.所述考勤分析模块用于将第一权重赋予第一考勤分数、第二权重赋予第二考勤分数,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数;
14.所述考勤分析模块还用于预设考勤合格分数,根据考勤综合分数,输出学生的考勤结果至云服务器,云服务器存储考勤结果。
15.作为上述技术方案的进一步改进,所述第一处理模块记载有声纹特征处理程序,所述声纹特征处理程序包括:预加重、分帧、帧移、加窗处理原始语音信息,生成第一语音信息;通过快速傅里叶变换、滤波器组和离散余弦变换提取第一语音信息的特征,生成声纹特征信息;
16.其中,所述预加重处理满足以下公式:
17.y[n]=x[n]-βx[n-1];
[0018]
其中,y[n]表示预加重后的原始语音信息,x[n]为所述原始语音信息的第n个采样点,x[n-1]为所述原始语音信息的第n-1个采样点,β为常数(其中,β∈[0.9,1.0]);
[0019]
所述加窗处理满足以下公式:
[0020]
t[n]=y[n]*f[n];
[0021][0022]
其中,t[n]表示第一语音信号,f[n]为汉明窗函数。
[0023]
作为上述技术方案的进一步改进,所述第二处理模块记载有人脸特征处理程序,所述人脸特征处理程序包括:截取任一时刻下的原始视频动态的图像帧;通过拉普拉斯算子对图像帧进行高通滤波,通过中值滤波法对高通滤波后的图像帧进行去噪;对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息;
[0024]
其中,所述拉普拉斯算子满足以下公式:
[0025][0026]
其中,表示拉普拉斯算子,f(x,y)为图像帧;
[0027]
所述中值滤波处理满足以下公式:
[0028][0029]
其中,g(x,y)为去噪后的图像帧,为高通滤波后的图像帧, a为二维模板,θ选取为3
×
3区域。
[0030]
一种基于声音识别和人脸识别的复合网课考勤方法,应用于所述声音识别和人脸比对的复合网课考勤系统,该方法包括以下步骤:
[0031]
通讯模块获取教师的考勤请求信息,云服务器接收到考勤请求信息后,从随机词条库中随机挑选一条词条信息并提示学生进行朗读,数据采集模块采集学生朗读的原始语
音信息和学生朗读时的原始视频动态;
[0032]
第一处理模块预处理原始语音信息,生成第一语音信息,提取第一语音信息的特征,输出声纹特征信息;
[0033]
第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息;
[0034]
声纹识别模块基于x-vector算法和plda算法构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数;
[0035]
人脸识别模块基于yolov3算法构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,输出第二考勤分数;
[0036]
考勤分析模块将第一考勤分数赋予第一权重、第二考勤分数赋予第二权重,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数;
[0037]
考勤分析模块预设考勤合格分数,根据考勤综合分数,输出学生的考勤结果至云服务器,云服务器存储考勤结果。
[0038]
作为上述技术方案的进一步改进,所述提取第一语音信息的特征,输出声纹特征信息,包括:
[0039]
对第一语音信息进行快速傅里叶变换,得到第一语音信息的幅度谱;其中,所述幅度谱满足以下公式:
[0040][0041]
其中,u(k)为第一语音信息的线性频谱,t[n]为第一语音信号, n为进行快速傅里叶变换时的窗函数的窗宽;
[0042]
对第一语音信息的线性频谱取模并进行平方计算,得到第一语音信息的离散功率谱;其中,所述离散功率谱满足以下公式:
[0043][0044]
其中,p(k)为第一语音信息的离散功率谱;
[0045]
构建gammatone滤波器组,通过gammatone滤波器组对所述离散功率谱进行频率整合;其中,所述gammatone滤波器组的时域冲激响应满足以下公式:
[0046][0047]
其中,c为比例系数,n为gammatone滤波器阶数,b为时间衰减系数,f0为gammatone滤波器的中心频率,为gammatone滤波器的相位;
[0048]
计算第一语音信息的长时帧功率,并掩蔽抑制除人声外的噪声;其中,所述长时帧功率满足以下公式:
[0049][0050]
其中,q(i,j)表示长时帧功率,p[i
′
,j]表示当前帧与前后各i帧中某一帧的功率谱;
[0051]
归一化处理时域和频域;
[0052]
计算时频归一化后的功率谱的非线性函数幂,并通过离散余弦变换进行降维,最终得到pncc系数,pncc系数表示声纹特征信息。
[0053]
作为上述技术方案的进一步改进,所述第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息,包括:
[0054]
第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行高通滤波,通过中值滤波法对高通滤波后的图像帧进行去噪,得到第一图像;
[0055]
通过多任务级联卷积神经网络对第一图像进行人脸检测和人脸特征点提取,生成人脸特征图像。
[0056]
作为上述技术方案的进一步改进,所述多任务级联卷积神经网络包括推荐网络、优化网络和输出网络,所述推荐网络用于对第一图像进行回归预测并通过非最大压制合并,输出第一候选框;所述优化网络用于通过多层卷积神经网络进行滤除第一候选框中非人脸的候选窗口,通过全连接层训练后输出第二候选框;所述输出网络用于滤除第二候选框中的重叠候选窗口,输出人脸特征图像。
[0057]
作为上述技术方案的进一步改进,所述声纹识别模块基于 x-vector算法和plda算法构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数,该方法还包括以下步骤:
[0058]
声纹识别模块通过云服务器获取学生声纹样本库,并根据学生声纹样本库和x-vector算法建立x-vector模型,输出学生声纹样本库对应的x-vector特征矢量;
[0059]
根据学生声纹样本库对应的x-vector特征矢量,声纹识别模块基于plda算法建立plda模型,并通过em算法对plda模型进行训练,生成声纹识别模型;
[0060]
声纹识别模块将声纹特征信息输入至x-vector模型中,获得声纹特征信息对应的x-vector特征矢量,将声纹特征信息对应的 x-vector特征矢量输入至声纹识别模型中,输出第一考勤分数。
[0061]
作为上述技术方案的进一步改进,所述人脸识别模块基于yolov3 算法构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,输出第二考勤分数,该方法还包括以下步骤:
[0062]
人脸识别模块调取存储在云服务器中的学生人脸数据库,按照 8:2比例将学生人脸数据库划分为第一训练集和第一测试集,将第一训练集输入至yolov3网络中,训练yolov3网络,获得人脸比对模型;
[0063]
人脸识别模块设定第二性能评价指标,通过第一测试集得到人脸比对模型的性能参数;
[0064]
人脸比对模型获取人脸特征图像,将人脸特征图像输入至人脸比对模型中,输出
第二考勤分数。
[0065]
本发明的有益效果是:本发明公开了一种基于声音识别和人脸识别的复合网课考勤系统及方法,基于x-vector算法和plda算法建立声纹识别模型,基于yolov3算法建立人脸识别模型,根据采集的学生在考勤时朗读词条信息的原始语音信息和原始视频动态,通过声纹识别模型获得第一考勤分数,并通过人脸识别模型获得第二考勤分数,综合第一考勤分数和第二考勤分数获得学生最终的考勤结果。本发明通过人脸识别和声纹识别获得两个考勤分数,并综合两个考勤分数得出学生最终的考勤结果。本发明方便了教师在线上课堂上进行考勤工作,降低了教师在线上课堂的考勤工作的工作量,使得学生的考勤结果更为准确,提高了学生的考勤结果的置信度。
附图说明
[0066]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单说明。显然,所描述的附图只是本发明的一部分实施例,而不是全部实施例,本领域的技术人员在不付出创造性劳动的前提下,还可以根据这些附图获得其他设计方案和附图。
[0067]
图1是一种基于声音识别和人脸识别的复合网课考勤方法的方法流程图;
[0068]
图2是一种基于声音识别和人脸识别的复合网课考勤方法的获得声纹特征信息的方法流程图;
[0069]
图3是一种基于声音识别和人脸识别的复合网课考勤方法的获得人脸特征图像的方法流程图;
[0070]
图4是一种基于声音识别和人脸识别的复合网课考勤方法的多任务级联卷积神经网络进行人脸检测和人脸特征点提取的方法流程图;
[0071]
图5是一种基于声音识别和人脸识别的复合网课考勤方法的构建声纹识别模型、获得第一考勤分数的方法流程图;
[0072]
图6是一种基于声音识别和人脸识别的复合网课考勤方法的构建人脸识别模型、获得第二考勤分数的方法流程图。
具体实施方式
[0073]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
[0074]
需要说明的是,虽然在系统示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于系统中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0075]
一种基于声音识别和人脸识别的复合网课考勤系统,包括:通讯模块、云服务器、数据采集模块、第一处理模块、第二处理模块、声纹识别模块、人脸识别模块、考勤分析模块,所述云服务器分别与考勤分析模块、通讯模块进行连接,所述预处理模块分别与数据采集模块、声纹识别模块、人脸识别模块连接;
[0076]
所述通讯模块用于获取教师的考勤请求信息并发送至云服务器;
[0077]
所述云服务器存储有学生人脸数据库和学生声纹样本库,所述云服务器用于获取所述考勤请求信息,从随机词条库中挑选一条词条信息,将其显示在学生所使用的显示屏上,并提示学生进行朗读;
[0078]
所述数据采集模块包括麦克风和摄像头,所述麦克风用于采集所述词条信息所对应的学生的原始语音信息,所述摄像头用于采集学生朗读时的原始视频动态;
[0079]
所述第一处理模块用于预处理原始语音信息、筛选有效的语音信息,并提取有效的语音信息的特征,输出声纹特征信息;
[0080]
所述第二处理模块用于截取任一时刻下原始视频动态的图像帧,所述图像帧为学生的正脸图像,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征图像;
[0081]
所述声纹识别模块用于构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数;
[0082]
所述人脸识别模块用于构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,获得第二考勤分数;
[0083]
所述考勤分析模块用于将第一权重赋予第一考勤分数、第二权重赋予第二考勤分数,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数;
[0084]
所述考勤分析模块还用于根据预设考勤合格分数,判断考勤综合分数是否小于考勤合格分数;如果是,则视作学生考勤不通过,并将学生的考勤结果上传至云服务器存储。
[0085]
进一步的,所述第一处理模块记载有声纹特征处理程序,所述声纹特征处理程序包括:预加重、分帧、帧移、加窗处理原始语音信息,生成第一语音信息;通过快速傅里叶变换、滤波器组和离散余弦变换提取第一语音信息的特征,生成声纹特征信息。
[0086]
进一步的,所述第二处理模块记载有人脸特征处理程序,所述人脸特征处理程序包括:截取任一时刻下的原始视频动态的图像帧;通过拉普拉斯算子对图像帧进行高通滤波,通过中值滤波法对高通滤波后的图像帧进行去噪;对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息。
[0087]
本发明还公开了一种基于声音识别和人脸识别的复合网课考勤方法,应用于上述的一种声音识别和人脸识别的复合网课考勤系统,请参考图1至图6,该方法包括以下步骤:
[0088]
s100、通讯模块获取教师的考勤请求信息,云服务器接收到考勤请求信息后,从随机词条库中随机挑选一条词条信息并提示学生进行朗读,数据采集模块采集学生朗读的原始语音信息和学生朗读时的原始视频动态;
[0089]
s200、第一处理模块预处理原始语音信息,生成第一语音信息,提取第一语音信息的特征,输出声纹特征信息;
[0090]
s300、第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息;
[0091]
s400、声纹识别模块基于x-vector算法和plda算法构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数;
[0092]
s500、人脸识别模块基于yolov3算法构建人脸识别模型,人脸识别模型对人脸特
征图像进行人脸识别,输出第二考勤分数;
[0093]
s600、考勤分析模块将第一考勤分数赋予第一权重、第二考勤分数赋予第二权重,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数;
[0094]
s700、考勤分析模块预设考勤合格分数,根据考勤综合分数,输出学生的考勤结果至云服务器,云服务器存储考勤结果。
[0095]
进一步的,步骤s100中,通讯模块获取教师的考勤请求信息,云服务器根据考勤请求信息调取随机词条库中任一条词条信息并提示学生进行朗读,所述随机词条库包括多条预设好的词条信息,每条词条信息所包含的字数范围为10~20个字,数据采集模块采集学生朗读词条信息的原始语音信息,并同步采集学生朗读时的原始视频动态。
[0096]
本实施例中,所述数据采集模块为学生上网课时所用设备的麦克风和摄像头。
[0097]
进一步的,步骤s200中,第一处理模块获得原始语音信息并预处理原始语音信息,所述预处理的步骤为:对原始语音信息进行预加重、分帧、帧移、加窗处理,生成第一语音信息;其中,所述预加重处理满足以下公式:
[0098]
y[n]=x[n]-βx[n-1];
[0099]
其中,y[n]表示预加重后的原始语音信息,x[n]为所述原始语音信息的第n个采样点,x[n-1]为所述原始语音信息的第n-1个采样点,β为常数(其中,β∈[0.9,1.0]);
[0100]
所述加窗处理满足以下公式:
[0101]
t[n]=y[n]*f[n];
[0102][0103]
其中,t[n]表示第一语音信息,f[n]为汉明窗函数。
[0104]
本实施例中,第一处理模块通过pncc算法提取第一语音信息的特征。pncc算法是一种语音特征提取算法,相比于传统的mfcc语音特征提取算法,pncc算法使用了幂律非线性以代替mfcc系数中的传统对数非线性,并添加有基于非对称滤波抑制背景激励的噪声抑制算法和时间掩蔽的模块,以提高在有噪声的场景下的语音识别效果。
[0105]
请参考图2,所述通过pncc算法提取第一语音信息的特征包括以下步骤:
[0106]
s210、对第一语音信息进行快速傅里叶变换,得到第一语音信息的幅度谱;其中,所述幅度谱满足以下公式:
[0107][0108]
其中,u(k)为第一语音信息的线性频谱,t[n]为第一语音信号, n为进行快速傅里叶变换时的窗函数的窗宽;
[0109]
s220、对第一语音信息的线性频谱取模并进行平方计算,得到第一语音信息的离散功率谱;其中,所述离散功率谱满足以下公式:
[0110]
[0111]
其中,p(k)为第一语音信息的离散功率谱;
[0112]
s230、构建gammatone滤波器组,通过gammatone滤波器组对所述离散功率谱进行频率整合;其中,所述gammatone滤波器组的时域冲激响应满足以下公式:
[0113][0114]
其中,c为比例系数,n为gammatone滤波器阶数,b为时间衰减系数,f0为gammatone滤波器的中心频率,为gammatone滤波器的相位;
[0115]
s240、计算第一语音信息的长时帧功率,并掩蔽抑制除人声外的噪声;其中,所述长时帧功率满足以下公式:
[0116][0117]
其中,q(i,j)表示长时帧功率,p[i
′
,j]表示当前帧与前后各i帧中某一帧的功率谱;
[0118]
s250、归一化处理时域和频域;其中,归一化处理满足以下公式:
[0119][0120]
a=min(j+n,j);
[0121]
b=max(j-n,1);
[0122][0123]
其中,f[i,j
′
]为除人声外的噪声系数,为时频归一化后的功率谱;
[0124]
s260、计算时频归一化后的功率谱的非线性函数幂,并通过离散余弦变换进行降维,最终得到pncc系数,pncc系数表示声纹特征信息。
[0125]
进一步的,请参考图3,步骤s300中所述第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息,该方法还包括以下步骤:
[0126]
s310、第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行高通滤波,通过中值滤波法对高通滤波后的图像帧进行去噪,得到第一图像;
[0127]
其中,所述拉普拉斯算子满足以下公式:
[0128][0129]
其中,表示拉普拉斯算子,f(x,y)为图像帧;
[0130]
所述中值滤波处理满足以下公式:
[0131][0132]
其中,g(x,y)为去噪后的图像帧,为高通滤波后的图像帧, a为二维模板,θ选取为3
×
3区域;
[0133]
s320、通过多任务级联卷积神经网络对第一图像进行人脸检测和人脸特征点提取,生成人脸特征图像。
[0134]
本实施例中,所述多任务级联卷积神经网络(multi-taskcascadedconvolutionalnetworks,mtcnn)为一种可以同时处理人脸检测和人脸特征点定位的卷积神经网络,所述多任务级联卷积神经网络包括三个多任务卷积神经网络,分别为推荐网络(proposalnetwork,p-net)、优化网络(refinenetwork,r-net)、输出网络(outputnetwork,o-net),每个多任务卷积神经网络均有三个学习任务,这三个学习任务分别为人脸分类任务、边框回归任务和人脸特征点定位任务。
[0135]
本技术通过预先训练好的多任务级联卷积神经网络对第一图像进行人脸检测和人脸特征点提取,需要注意的是在将第一图像输入至多任务级联卷积神经网络之前,需要对第一图像进行预处理以调整成符合多任务级联卷积神经网络的输入格式。
[0136]
进一步的,请参考图4,所述人脸检测、人脸特征点提取的过程分为三个阶段:
[0137]
s321、推荐网络对第一图像进行回归预测并通过非最大压制合并,输出第一候选框。
[0138]
具体地,在步骤s321中,第一图像输入到推荐网络中,推荐网络获得脸部区域的候选窗口与边界框的回归向量,用该边界框做回归预测并对所述候选窗口进行校准,通过非最大压制(nms)合并输出第一候选框;
[0139]
s322、优化网络通过多层卷积神经网络滤除第一候选框中非人脸的候选窗口,通过全连接层训练后输出第二候选框。
[0140]
具体地,在步骤s322中,将由推荐网络得出的第一候选框作为优化网络的输入,优化网络通过多层卷积神经网络滤除第一候选框中的绝大部分非人脸的候选窗口,选用全连接层进行训练,利用边界框向量微调第一候选框,最后通过非最大压制(nms)去除重叠的候选窗口,输出第二候选框;
[0141]
s323、输出网络滤除第二候选框中的重叠候选窗口,输出人脸特征图像。
[0142]
具体地,在步骤s323中,将由优选网络得出的第二候选框作为输出网络的输入,输出网络去除第二候选框中的重叠候选窗口,最终完成对第一图像的人脸检测,并输出人脸特征图像。
[0143]
进一步的,在步骤s400中,本技术基于深度神经网络(deepconvolutionalnetworks,dnn)和plda(probabilisticlda)算法构建声纹识别模型,根据声纹特征信息,通过构建好的声纹识别模型进行声纹识别,获得第一考勤分数。请参考图5,所述构建声纹识别模型并对声纹特征信息进行声纹识别的步骤包括:
[0144]
s410、声纹识别模块通过云服务器获取学生声纹样本库,并根据学生声纹样本库和x-vector算法建立x-vector模型,输出学生声纹样本库对应的x-vector特征矢量;
[0145]
s420、根据学生声纹样本库对应的x-vector特征矢量,声纹识别模块基于plda算法建立plda模型,并通过em算法对plda模型进行训练,生成声纹识别模型;
[0146]
s430、声纹识别模块将声纹特征信息输入至x-vector模型中,获得声纹特征信息对应的x-vector特征矢量,将声纹特征信息对应的x-vector特征矢量输入至声纹识别模型中,输出第一考勤分数。
[0147]
具体地,在步骤s410中,云服务器存储有学生声纹样本库,学生声纹样本库包括全
部学生的若干个声纹样本信息和每个声纹样本信息对应的学生名字,每一个声纹样本信息均已预先通过pncc算法进行特征提取处理。
[0148]
本技术通过深度神经网络结构训练x-vector模型,x-vector模型能够接受任意长度的输入,转化为固定的长度的特征表达,并且在模型训练过程中采用数据增强策略,以加强模型对于噪声的干扰的鲁棒性。所述x-vector模型的结构可分为九层,其第一至第五层为帧级别的深度卷积神经网络层,其第六层为统计池化层,其第七至第八层均为段级别的全连接层,其第九层则为基于softmax分类器的分类层。在x-vector模型的训练过程中,多层深度卷积网络层并行化训练,增加了学生声纹样本库的时序性,通过第六层段级别的全连接层提取学生声纹样本库中所有样本数据对应的x-vector特征矢量,并通过分类层输出所述x-vector特征矢量。
[0149]
所述x-vector模型的损失函数满足以下公式:
[0150][0151]
其中,f(p,q)代表x-vector模型的损失函数,p(xi)表示学生声纹样本库中第i个样本值的概率分布,q(xi)代表x-vector模型预测学生声纹样本库中第i个样本的预测值的概率分布。
[0152]
在构建x-vector模型之后,我们通过x-vector模型获得学生声纹样本库中所有样本数据对应的x-vector特征矢量。在步骤s420中,根据plda算法构建plda模型,将学生声纹样本库中所有样本数据对应的x-vector特征矢量作为plda模型的输入,并通过em算法对plda 模型进行训练并更新plda模型的参数,进而生成声纹识别模型。
[0153]
所述plda模型是一种信道补偿算法,所述plda模型用于进一步提取所述x-vector特征矢量中包含的说话人信息。本技术将通过 x-vector模型获得的学生声纹样本库中所有样本数据对应的 x-vector特征矢量作为plda模型的输入,定义输入至plda模型的第i个数据x
ij
为第i个学生的第j个x-vector特征矢量,所述输入至plda模型的第i个数据x
ij
满足以下公式:
[0154]
x
ij
=μ+fhi+gw
ij
+ε
ij
;
[0155]
其中,μ表示均值矢量,f表示每个学生的身份信息矩阵,g表示信道信息矩阵,hi表示第i个学生对应的声纹样本信息的隐变量,w
ij
表示第i个学生的第j个x-vector特征矢量在信道的隐变量,ε
ij
表示第i个学生的第j个x-vector特征矢量的残差部分。
[0156]
本实施例中,通过em算法对plda模型进行训练,得出上述公式中隐变量hi和w
ij
的值,最终生成声纹识别模型。所述em算法更新参数的过程包括:计算所有输入至plda模型中的数据的均值,每个训练数据与所述均值作减法计算;初始化信道信息矩阵,并通过主成分分析方法对所述均值进行降维;计算隐变量hi、w
ij
的期望值,并根据隐变量hi、w
ij
更新plda模型的参数。
[0157]
在步骤s430中,声纹识别模块将声纹特征信息输入至x-vector 模型中,x-vector模型提取声纹特征信息对应的x-vector特征矢量,将声纹特征信息对应的x-vector特征矢量输入至声纹识别模型中,声纹识别模型计算声纹特征信息与该学生对应的声纹样本信息的相似度,并输出第一考勤分数。
[0158]
进一步的,请参考图6,步骤s500中通过yolov3算法构建人脸识别模型,根据步骤s300中获得的人脸特征信息,人脸识别模型对人脸特征信息进行人脸识别,输出第二考勤分数。
[0159]
本实施例中,通过yolov3算法构建人脸识别模型包括以下步骤:
[0160]
s510、人脸识别模块调取存储在云服务器中的学生人脸数据库,按照8:2比例将学生人脸数据库划分为第一训练集和第一测试集,将第一训练集输入至yolov3网络中,训练yolov3网络,获得人脸识别模型;
[0161]
s520、人脸识别模块设定第二性能评价指标,通过第一测试集得到人脸识别模型的性能参数;
[0162]
s530、人脸识别模型获取人脸特征图像,将人脸特征图像输入至人脸识别模型中,输出第二考勤分数。
[0163]
具体地,在步骤s510中,云服务器中存储有学生人脸数据库,所述学生人脸数据库包括全部学生的若干个正脸照图像以及每个正脸照图像对应的标注信息,所述标注信息包括学生正脸照图像的人脸区域和学生正脸照图像对应的学生名称。获取学生人脸数据库后,人脸识别模块按照8:2比例将学生人脸数据库划分为第一训练集和第一测试集,所述第一训练集用于训练yolov3网络并生成人脸识别模型,所述第一测试集用于测试人脸识别模型的性能。
[0164]
需要注意的是,在训练yolov3网络之前需要设置yolov3网络模型的超参数,超参数的设置将影响yolov3网络模型的训练效果。在本技术中需要设定的超参数分别为学习率、批量大小、迭代次数以及激活函数,所述学习率通过学习率衰减函数进行设定,所述学习率衰减函数用于获得更佳的学习率以保证yolov3的损失函数在最优值附近的区域振荡,所述批量大小设定为25,本技术的yolov3网络模型的迭代次数将根据学习率衰减的情况而定。
[0165]
具体地,所述学习率衰减函数ω满足以下公式:
[0166]
ω=y
x
·
ω0;
[0167]
其中,x表示迭代次数,y表示衰减率,ω0表示初始学习率。
[0168]
在步骤s520中,人脸识别模块通过第二性能评价指标和第一测试集对人脸识别模型进行性能评估,所述性能评估的步骤为:将第一测试集分为四个类别,这四个类别分别为实际为真并且被已训练好的网络模型划分为真的样本数、实际为假但被已训练好的网络模型划分为真的样本数、实际为真但被已训练好的网络模型划分为假的样本数、实际为假并且被已训练好的网络模型划分为假的样本数;计算实际为真并且被已训练好的网络模型划分为真的样本数、实际为假并且被已训练好的网络模型划分为假的样本数在第一测试集所有样本数中的占比,该占比表示人脸识别模型的准确率。
[0169]
特别地,设定人脸识别模型的标准准确率,若得出人脸识别模型的准确率未大于所述标准准确率,则重新设置yolov3网络模型的超参数,并再次训练yolov3网络模型。
[0170]
在步骤s530中,人脸识别模型获取人脸特征图像,并将其输入至人脸识别模型中,人脸识别模型对人脸特征图像进行人脸识别,得到所述人脸特征图像与该学生对应的学生人脸数据库中的正脸照图像的相似度数据,并输出第二考勤分数。
[0171]
本发明通过人脸识别模型和声纹识别模型对学生进行考勤工作,获得第一考勤分
数和第二考勤分数,并综合第一考勤分数和第二考勤分数得出最终的考勤综合分数,通过该方式获得的考勤综合分数更具有信服度。
[0172]
进一步的,在步骤s600中,考勤分析模块将第一考勤分数赋予第一权重,并将第二考勤分数赋予第二权重,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数。
[0173]
其中,所述第一权重、第二权重通过人脸识别模型的准确率、声纹识别模型的准确率计算获得,所述人脸识别模型的准确率用于表征人脸识别模型处理第一测试集的准确率,所述声纹识别模型的准确率用于表征声纹识别模型处理学生声纹样本库的准确率。
[0174]
进一步的,在步骤s700中,考勤分析模块预设考勤合格分数,考勤分析模块判断考勤综合分数是否小于考勤合格分数,如果考勤综合分数小于考勤合格分数,则视作学生考勤不通过;如果考勤综合分数未小于考勤合格分数,则视作学生考勤通过。本实施例中,不论学生的考勤结果是否为通过,考勤分析模块都会将学生的考勤结果上传至云服务器存储。
[0175]
以上对本发明的较佳实施方式进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变型或替换,这些等同的变型或替换均包含在本技术权利要求所限定的范围内。
技术特征:1.一种基于声音识别和人脸识别的复合网课考勤系统,其特征在于,包括:通讯模块、云服务器、数据采集模块、第一处理模块、第二处理模块、声纹识别模块、人脸识别模块、考勤分析模块,所述云服务器分别与考勤分析模块、通讯模块进行连接,所述第一处理模块分别与数据采集模块、声纹识别模块连接,所述第二处理模块分别与数据采集模块、人脸识别模块连接;所述通讯模块用于获取教师的考勤请求信息并发送至云服务器;所述云服务器存储有学生人脸数据库和学生声纹样本库,所述云服务器用于获取所述考勤请求信息,从随机词条库中挑选一条词条信息,将其显示在学生所使用的显示屏上,并提示学生进行朗读;其中,所述学生人脸数据库包括全部学生的若干个正脸照图像以及每个正脸照图像对应的标注信息;所述学生声纹样本库包括全部学生的若干个声纹样本信息和每个声纹样本信息对应的学生名字;所述数据采集模块包括麦克风和摄像头,所述麦克风用于采集所述词条信息所对应的学生的原始语音信息,所述摄像头用于采集学生朗读时的原始视频动态;所述第一处理模块用于预处理原始语音信息、筛选有效的语音信息,并提取有效的语音信息的特征,输出声纹特征信息;所述第二处理模块用于截取任一时刻下原始视频动态的图像帧,所述图像帧为学生的正脸图像,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征图像;所述声纹识别模块用于构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数;所述人脸识别模块用于构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,获得第二考勤分数;所述考勤分析模块用于将第一权重赋予第一考勤分数、第二权重赋予第二考勤分数,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数;所述考勤分析模块还用于预设考勤合格分数,根据考勤综合分数,输出学生的考勤结果至云服务器,云服务器存储考勤结果。2.根据权利要求1所述的一种基于声音识别和人脸识别的复合网课考勤系统,其特征在于,所述第一处理模块记载有声纹特征处理程序,所述声纹特征处理程序包括:预加重、分帧、帧移、加窗处理原始语音信息,生成第一语音信息;通过快速傅里叶变换、滤波器组和离散余弦变换提取第一语音信息的特征,生成声纹特征信息;其中,所述预加重处理满足以下公式:y[n]=x[n]-βx[n-1];其中,y[n]表示预加重后的原始语音信息,x[n]为所述原始语音信息的第n个采样点,x[n-1]为所述原始语音信息的第n-1个采样点,β为常数(其中,β∈[0.9,1.0]);所述加窗处理满足以下公式:t[n]=y[n]*f[n];
其中,t[n]表示第一语音信号,f[n]为汉明窗函数。3.根据权利要求1所述的一种基于声音识别和人脸识别的复合网课考勤系统,其特征在于,所述第二处理模块记载有人脸特征处理程序,所述人脸特征处理程序包括:截取任一时刻下的原始视频动态的图像帧;通过拉普拉斯算子对图像帧进行高通滤波,通过中值滤波法对高通滤波后的图像帧进行去噪;对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息;其中,所述拉普拉斯算子满足以下公式:其中,表示拉普拉斯算子,f(x,y)为图像帧;所述中值滤波处理满足以下公式:其中,g(x,y)为去噪后的图像帧,为高通滤波后的图像帧,a为二维模板,选取为3
×
3区域。4.一种基于声音识别和人脸识别的复合网课考勤方法,应用于如权利要求1至3任一项所述的一种声音识别和人脸比对的复合网课考勤系统,其特征在于,该方法包括以下步骤:通讯模块获取教师的考勤请求信息,云服务器接收到考勤请求信息后,从随机词条库中随机挑选一条词条信息并提示学生进行朗读,数据采集模块采集学生朗读的原始语音信息和学生朗读时的原始视频动态;第一处理模块预处理原始语音信息,生成第一语音信息,提取第一语音信息的特征,输出声纹特征信息;第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息;声纹识别模块基于x-vector算法和plda算法构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数;人脸识别模块基于yolov3算法构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,输出第二考勤分数;考勤分析模块将第一考勤分数赋予第一权重、第二考勤分数赋予第二权重,并将赋予第一权重的第一考勤分数与赋予第二权重的第二考勤分数进行累加操作,获得考勤综合分数;考勤分析模块预设考勤合格分数,根据考勤综合分数,输出学生的考勤结果至云服务器,云服务器存储考勤结果。5.根据权利要求4所述的一种基于声音识别和人脸识别的复合网课考勤方法,其特征在于,所述提取第一语音信息的特征,输出声纹特征信息,包括:对第一语音信息进行快速傅里叶变换,得到第一语音信息的幅度谱;其中,所述幅度谱满足以下公式:
其中,u(k)为第一语音信息的线性频谱,t[n]为第一语音信号,n为进行快速傅里叶变换时的窗函数的窗宽;对第一语音信息的线性频谱取模并进行平方计算,得到第一语音信息的离散功率谱;其中,所述离散功率谱满足以下公式:其中,p(k)为第一语音信息的离散功率谱;构建gammatone滤波器组,通过gammatone滤波器组对所述离散功率谱进行频率整合;其中,所述gammatone滤波器组的时域冲激响应满足以下公式:其中,c为比例系数,n为gammatone滤波器阶数,b为时间衰减系数,f0为gammatone滤波器的中心频率,为gammatone滤波器的相位;计算第一语音信息的长时帧功率,并掩蔽抑制除人声外的噪声;其中,所述长时帧功率满足以下公式:其中,q(i,j)表示长时帧功率,p[i
′
,j]表示当前帧与前后各i帧中某一帧的功率谱;归一化处理时域和频域;计算时频归一化后的功率谱的非线性函数幂,并通过离散余弦变换进行降维,最终得到pncc系数,pncc系数表示声纹特征信息。6.根据权利要求4所述的一种基于声音识别和人脸识别的复合网课考勤方法,其特征在于,所述第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行去噪处理,对去噪后的图像帧进行人脸检测和人脸特征点提取,生成人脸特征信息,包括:第二处理模块截取任一时刻下原始视频动态的图像帧,对图像帧进行高通滤波,通过中值滤波法对高通滤波后的图像帧进行去噪,得到第一图像;通过多任务级联卷积神经网络对第一图像进行人脸检测和人脸特征点提取,生成人脸特征图像。7.根据权利要求6所述的一种基于声音识别和人脸识别的复合网课考勤方法,其特征在于,所述多任务级联卷积神经网络包括推荐网络、优化网络和输出网络,所述推荐网络用于对第一图像进行回归预测并通过非最大压制合并,输出第一候选框;所述优化网络用于通过多层卷积神经网络进行滤除第一候选框中非人脸的候选窗口,通过全连接层训练后输出第二候选框;所述输出网络用于滤除第二候选框中的重叠候选窗口,输出人脸特征图像。8.根据权利要求4所述的一种基于声音识别和人脸识别的复合网课考勤方法,其特征
在于,所述声纹识别模块基于x-vector算法和plda算法构建声纹识别模型,声纹识别模型对声纹特征信息进行声纹识别,输出第一考勤分数,该方法还包括以下步骤:声纹识别模块通过云服务器获取学生声纹样本库,并根据学生声纹样本库和x-vector算法建立x-vector模型,输出学生声纹样本库对应的x-vector特征矢量;根据学生声纹样本库对应的x-vector特征矢量,声纹识别模块基于plda算法建立plda模型,并通过em算法对plda模型进行训练,生成声纹识别模型;声纹识别模块将声纹特征信息输入至x-vector模型中,获得声纹特征信息对应的x-vector特征矢量,将声纹特征信息对应的x-vector特征矢量输入至声纹识别模型中,输出第一考勤分数。9.根据权利要求4所述的一种基于声音识别和人脸识别的复合网课考勤方法,其特征在于,所述人脸识别模块基于yolov3算法构建人脸识别模型,人脸识别模型对人脸特征图像进行人脸识别,输出第二考勤分数,该方法还包括以下步骤:人脸识别模块调取存储在云服务器中的学生人脸数据库,按照8:2比例将学生人脸数据库划分为第一训练集和第一测试集,将第一训练集输入至yolov3网络中,训练yolov3网络,获得人脸比对模型;人脸识别模块设定第二性能评价指标,通过第一测试集得到人脸比对模型的性能参数;人脸比对模型获取人脸特征图像,将人脸特征图像输入至人脸比对模型中,输出第二考勤分数。
技术总结本发明公开了一种声音识别和人脸识别的复合网课考勤系统及方法,基于X-Vector算法和PLDA算法建立声纹识别模型,基于YOLOv3算法建立人脸识别模型,采集并预处理学生在考勤时朗读词条信息的原始语音信息和原始视频动态,获得声纹特征信息和人脸特征图像,通过声纹特征信息和声纹识别模型获得第一考勤分数,并通过人脸特征图像和人脸识别模型获得第二考勤分数,综合第一考勤分数和第二考勤分数获得最终的考勤结果。本发明通过人脸识别和声纹识别获得两个考勤分数,并综合两个考勤分数得出学生最终的考勤结果,本发明方便了教师在线上课堂上进行考勤工作,降低了教师在线上课堂的考勤工作的工作量,使得学生的考勤结果更为准确,提高了学生的考勤结果的置信度。提高了学生的考勤结果的置信度。提高了学生的考勤结果的置信度。
技术研发人员:陈荣征 李浩能 李育廷
受保护的技术使用者:广东职业技术学院
技术研发日:2022.06.13
技术公布日:2022/11/1