掌桥专利:专业的专利平台
掌桥专利
首页

一种基于优化ResNet算法的人脸表情识别方法

文献发布时间:2023-06-19 19:30:30



技术领域

本发明属于计算机视觉领域,具体地说,是一种基于优化ResNet算法的人脸表情识别方法,可用于医疗、刑侦和汽车等众多领域。

背景技术

人脸表情识别长期以来就是研究热点,它在医疗、情感计算、交通安全和人机交互等多个方面都有重要的意义。在上世纪70年代,Ekman和Friesen根据跨文化研究的结论,定义了六种基本情绪:愤怒、厌恶、害怕、高兴、伤心和惊讶。

传统的人脸表情识别算法一般是通过手工方法提取人脸特征,例如局部二值法(LBP)、主成分分析(PCA)和Gabor小波变换等。虽然这些方法有着良好的表征性能,但是手工建立特征工程耗时耗力,而且存在精度不高,算法泛化能力差和鲁棒性不强等问题。

近几年,深度学习在图片处理,计算机视觉等领域都取得了不俗的成果。2012年,Krizhevsky等提出了AlexNet的深度卷积神经网络(CNN)模型,对超过百万张图片进行1000个类别分类,测试集分别为top-1和top-5,分别拿到了37.5%和17%的error rates。此后,VGGNet、Google Net和ResNet这些主流CNN模块在相同的数据集上也取得了较好的结果。卷积神经网络在图像识别领域取得巨大的成功,这也推动了人脸表情识别的进步。Liu等将CNN模块用于人脸表情识别,取得良好的结果。Kim等使用模式识别框架改进CNN网络,融合多个CNN基分类结果指数平均加权融合决策人脸表情类别。

发明内容

本发明提出的人脸表情识别算法,既可以优化网络结构,减少网络参数,又对网络模型通道特征具有针对性,可以较好的提高网络的性能。对于复杂环境有着良好的泛化能力。

本发明的目的通过以下技术方案予以实现:

一种基于优化ResNet算法的人脸表情识别方法,包括以下步骤:

步骤S1:获取人脸表情公开数据集,通过图像增强对数据集进行预处理;

步骤S2:基于ResNet模型,设计好新的网络模型,选择两层的卷积模块提取浅层特征,选择深度可分离卷积混合通道注意力机制改进残差网络,获取深层人脸特征,最后通过两层全连接层softmax函数对提取的特征分类;

步骤S3:训练模型;

步骤S4:用训练好的模型对测试数据集做人脸表情分类,对分类准确度分析;

步骤S5:识别人脸表情。

本发明的进一步改进,在上述步骤S1中,具体的流程为:首先,从网上下载公开的人脸表情数据集ck+和FER2013,以8:2的比例划分出训练集和测试集,并对训练样本进行随机旋转、缩放和随机翻转等一系列图像增强操作,最后,对图像增强后的数据集做归一化处理,使训练集和测试集所有图片等大。

本发明的进一步改进,在上述步骤S2中,具体的流程为:首先,用两个标准卷积层提取人脸表情的浅层特征,其次,利用深度可分离卷积混合通道注意力机制改进残差网络,提取人脸表情的深层特征,深度可分离卷积可以大幅降低参数量,通道注意力机制可以加强模型对重要通道特征信息的表示能力,最后通过两层全连接层和softmax函数输出分类结果。

本发明的进一步改进,在上述步骤S3中,根据以下流程训练模型:

步骤S3-1、设置网络的超参数。根据不同的训练集数据设置最适合它们不同的超参数;

步骤S3-2、在训练过程中,采用全连接、softmax函数和随机梯度下降策略优化模型;

步骤S3-3、在上述步骤S3-2步骤中,采用随机梯度下降算法对网络模型进行迭代优化,每次迭代出现更好的结果时,就会保存更好网络参数并且覆盖之前保存的参数,获取网络的最优解。

本发明的进一步改进,在步骤S4中,采用准确性(Accuracy)作为评价指标,利用测试集数据验证模型的性能。并且生成混淆矩阵,可以帮助分析神经网络模型的优缺点。

其中,TP、TN、FP和FN分别是真正例(true positive)、真反例(true negative)、假正例(false positive)和假反例(false negative)。

本发明的进一步改进,在步骤S5中,由步骤S3,训练完模型后,会自动保存好最优网络参数到指定文件下,经过S4测试后,绘制好ui界面,调用摄像头,可以实现人脸表情的实时检测。

本发明具有以下有益效果:第一,人脸表情识别准确率高,本发明是在残差网络模型的基础上进行修改,保留了深层网络梯度消失和退化问题,还融合通道注意力机制,提高了人脸表情识别的准确率,在ck+数据集上ResNet18的人脸表情识别的平均准确率有96.60%,而本发明在实验中可以达到99.28%。第二,优化了网络结构,大大的降低了网络参数,本发明是在残差网络模型的基础上进行优化,采用深度可分离卷积代替了标准卷积,大量的减少了参数的数量,打造了人脸表情识别的轻量化。第三,实验结果表明该算法表现良好,网络具有较强泛化能力,在复杂情况下对人脸表情能够起到较好的识别效果。

附图说明

图1为本发明特征提取网络结构图。

图2为本发明网络框架图。

图3为本发明ResNet与DSC-SENet对比图。

具体实施方式

为了加深对本发明的理解,下面将结合附图和实施例对本发明做进一步详细描述,该实施例仅用于解释本发明,并不对本发明的保护范围构成限定。

实施例:一种基于优化ResNet算法的人脸表情识别方法,其流程如图1所示,具体步骤如下:

步骤S1,获取人脸表情公开数据集,通过图像增强对数据集进行预处理。从网上下载国际公开的两个人脸表情识别数据集,CK+数据集和FER2013数据集。图像增强的具体方法是:利用翻转、随机旋转、平移和缩放的方法处理两个数据集,将处理完的数据集做归一化处理,严格保证每张图片的大小都是48*48。图像增强后将两个数据集的所有图片都分别完全打乱,再分别将数据集以8:2的比例分为训练集和测试集。

步骤S2,在残差网络模型的基础上进一步优化,得到新的网络模型。网络主要有三个部分,浅层特征提取、深层特征提取和表情分类。其网络框架如图2所示。该网络输入的图像尺寸为48×48,浅层特征提取包括两个卷积模层,BN(Batch Normalization)层和激活函数PReLU;深层特征提取是由4个DSC-SENet(基于深度可分离卷积混合通道注意力机制残差模块)组成;网络最后用全连接层和Softmax对人脸表情分类。其网络结构参数如表1所示。

表1本发明网络结构

表1中Block name代表模块名称。Layer name代表操作名称,其中conv是卷积操作,Sepconv代表深度可分离卷积(下同)。BN为批量归一化处理,Maxpool代表的是最大池化操作。Parameters为卷积核的尺寸和输出通道数量。Repeat times是指操作重复次数。其中,深度可分离卷积可以大幅度的减少网络参数,实现网络轻量化。通道注意力机制可以加强模型对重要通道特征信息的的学习,改善人脸表情识别的准确率。

步骤S3,实验网络模型训练。本发明所用的计算机处理器为Intel(R)i5-11400H,显卡是GeForce RTX3060Ti 6G,编程语言为纯python语言,软件框架是tensorflow-gpu2.5.0,操作系统是Windows 10。

训练超参数的设置:由于两个数据集的数量和品质等都不相同,所以超参数设置也会稍有不同。图片输入大小统一调整为48×48。Fer2013数据集迭代次数为200次;ck+数据集小,收敛速度快,迭代次数只需要100次。学习率都为0.01。批次尺寸通过具体的实验验证,得出32最为合适,实验的数据如表2所示。

表2FER2013数据集下不同批次准确率

步骤S4,用训练好的模型对测试数据集做人脸表情分类,对分类准确度分析;本发明会是对两个不同的数据集分别训练,所以训练后会保存两组最优网络参数。然后对两组参数分别做测评。评估模型的评价指标是准确度(ACC)。在准确率的基础上会生成混淆举证,以帮助对每种表情的做进一步分析。两个不同测试集产生的结果分别如表3和表4所示。

表3数据集(FER2013)混淆矩阵(单位为%)

表4数据集(CK+)混淆矩阵(单位为%)

步骤S5,根据步骤S4的结果,绘制ui界面,调用摄像头实时检测人脸并识别人脸表情。

本发明设计一种基于ResNet模型,结合深度可分离卷积和注意力机制。成功打造了人脸表情识别的轻量化网络并且提升网络性能。运行程序后,只要摄像头检测到人脸,系统就能以一定的频率实时识别人脸表情。

以上所述为本发明的示例性实施例,并非因此限制本发明专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

技术分类

06120115933577