一种轻量化高性能的婴幼儿疼痛表情识别方法
未命名
08-18
阅读:115
评论:0
1.本发明属于深度学习和模式识别技术领域,具体涉及一种轻量化高性能的婴幼儿疼痛表情识别方法。
背景技术:
2.在医疗看护领域,婴幼儿疼痛表情识别技术作为人脸表情识别的一个特殊应用场景正在受到越来越多人的关注。通过实际的临床试验表明,婴幼儿的神经系统虽然尚未发育成熟,但是已经具备了感知痛觉的能力,甚至在一定程度上所感知到的疼痛要比成人更加强烈。有的婴幼儿在刚出生后需要接受足底穿刺以及药物注射等操作,这会导致婴幼儿出现强烈而反复的疼痛感,这种情况很不利于婴幼儿的成长发育,严重时甚至会对其中枢神经造成不可修复的损伤。由于婴幼儿不能通过正常的交流来表达自己当前的状况,所以快速而准确地识别婴幼儿的疼痛有着重大的临床价值。
3.婴幼儿和成年人不一样,由于他们的身体和神经系统并未发育完全,通过测量心率或血压等生理指标来识别疼痛的效果并不是很好,如何高效而准确地识别婴幼儿的疼痛是当下的一个难题。婴幼儿在受到疼痛刺激后所表现出的最明显的特征包括面部表情的改变、啼哭、特殊的躯体活动以及行为习惯(包括睡眠质量和食欲的下降)的变化。以往的医疗看护人员通常将婴幼儿的啼哭声作为疼痛与否的评判标准,但是大量的临床实验表明这种方法并不可靠:早产婴儿即使感知到了疼痛,哭声也不会长久;对于危重儿来说,他们呼吸微弱,有的甚至需要进行气管插管来维持生命特征,这种情况下一般并不表现出哭闹的状态。婴幼儿在受到疼痛刺激后所特有的面部特征包括:缩紧眉头、用力挤眼、口鼻大张、唇沟加深以及舌苔绷紧等,这些特征的维持时间较长,并且在一般的情况下并不表现出这些特征。因此,目前被医护人员广泛认可的方法是通过婴幼儿的面部表情变化来进行疼痛的识别。
4.近年来,随着深度学习技术的持续进步,已经实现了端到端的识别效果,各种卷积神经网络模型开始被运用到了婴幼儿的疼痛识别领域中。目前针对婴幼儿的疼痛表情进行识别的方法大多采用较深的神经网络模型,参数量和计算量庞大,这类模型很难满足实时性的需求且只适合部署在算力较高的计算机或服务器上,不适合应用于算力较低的设备中,这无疑增加了医院的看护成本。因此,设计一种实时性较好且识别准确率较高的婴幼儿疼痛表情识别方法有着重大的应用价值。
技术实现要素:
5.本发明的目的在于克服现有技术的缺点与不足,提出一种轻量化高性能的婴幼儿疼痛表情识别方法,实时性好、对硬件设备要求低且识别准确率较高。
6.为实现上述目的,本发明所提供的技术方案为:一种轻量化高性能的婴幼儿疼痛表情识别方法,包括以下步骤:
7.步骤s1:获取图像帧并进行人脸检测与对齐;
8.步骤s2:搭建婴幼儿疼痛表情识别网络;
9.步骤s3:训练所搭建的婴幼儿疼痛表情识别网络;
10.步骤s4:将训练好的婴幼儿疼痛表情识别网络对步骤s1获取到的婴幼儿人脸图片进行识别。
11.与现有技术相比,本发明的有益效果为:
12.(1)本发明针对实时识别婴幼儿疼痛表情的问题,结合densenet和mobilenet设计了一个实时性好且识别准确率高的轻量化网络,综合性能优于mobilenetv2和mobilenetv3;
13.(2)本发明针对所设计模型对哭泣表情和疼痛表情分类效果不佳的问题,提出了一种将circle loss和island loss相结合的损失函数,对相同类别的类内间距进行缩减,对不同类别的类外间距进行扩张,优化了识别的效果。
附图说明
14.图1为本发明的轻量级稠密块示意图。
15.图2为本发明轻量级稠密块中的非线性变换示意图。
16.图3为本发明婴幼儿疼痛表情识别网络架构图。
17.图4为本发明选用的数据集示意图。
18.图5为本发明疼痛表情识别模型的准确率变化曲线和损失变化曲线图。
具体实施方式
19.为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
20.由于目前针对婴幼儿的疼痛表情进行识别的方法大多采用较深的神经网络模型,参数量和计算量庞大,这类模型很难满足实时性的需求且只适合部署在算力较高的计算机或服务器上,不适合应用于算力较低的设备中,增加了医院的看护成本。因此,本发明实例设计了一种实时性好且识别准确率高的轻量级婴幼儿疼痛表情识别方法,包括以下内容:
21.步骤s1、获取图像帧并进行人脸检测与对齐,具体包含以下步骤。
22.步骤s11:通过opencv库中的ffmpeg代码获取视频流的图像帧;
23.步骤s12:利用训练好的mtcnn网络对图像帧进行人脸检测,获取人脸区域和五个关键特征点;本实施例中,五个关键特征点分别为左右两个嘴角、两个眼的中心、鼻子。
24.步骤s13:根据五个特征点的位置通过opencv库中的fastatan2函数和warpaffine函数计算婴幼儿人脸偏转角度并进行人脸对齐。
25.步骤s2、搭建一个轻量化网络用于婴幼儿的疼痛表情识别,具体包含以下步骤。
26.步骤s21:根据densenet和mobilenet的优势设计一个轻量级的稠密块dense-dwblock,稠密块的结构如图1所示。稠密块中的非线性变换引入了深度可分离卷积,分为两个无间隔的步骤:第一步由3
×
3的深度卷积以及批量归一化操作(bn)和relu激活函数组成;第二步由1
×
1的点卷积以及批量归一化操作(bn)和relu激活函数组成,非线性变换的具体流程如图2所示;
27.步骤s22:将稠密块嵌入mobilenetv1并修改网络宽度得到本发明设计的轻量级婴
幼儿疼痛表情识别模型d-mobilenet,该模型的网络结构如图3所示。整体网络的构建思路包括两个部分,第一个部分是将本发明提出的轻量级稠密块嵌入mobilenetv1网络中,第二个部分对原先的网络结构做出调整,具体的改进细节如下:(1)由于mobilenetv1结构的第一层是3
×
3的标准卷积,这个部分可以充分地提取低纬度的特征信息,所以对这个部分保留;(2)把三个宽度分别是24、48以及96的轻量级稠密块取代原网络中的部分卷积层。由于这三个宽度均远小于原网络中相应位置的通道数,因此d-mobilenet的参数量比原网络小;(3)每两个dense-dwblock之间间隔一个步长为2的dwblock当作过渡层,这个过渡层可以有效地减少dense-dwblock的输出维度,实现特征的融合,同时还能降低输入通道数,实现对参数量的缩减。
28.由于本发明提出的轻量级稠密块可以实现模型的参数共享,每层仅仅只要输出极少通道数的特征图即可,所以通过选取较小的网络宽度可以使得模型更加轻量化,缩小网络宽度后的具体模型结构如表1所示;
29.表1本发明设计的婴幼儿疼痛表情识别网络参数表
[0030][0031]
步骤s23:针对所设计模型对哭泣表情和疼痛表情分类效果不佳的问题,本发明提出了一种将circle loss和island loss相结合的损失函数对原先模型内的softmax损失函数进行替换,实现对相同类别的类内间距进行缩减,对不同类别的类外间距进行扩张,优化过的损失函数可以由以下公式表达:
[0032][0033]
式中,k代表样本类内相似度分值的数量,l代表类间相似度分值的数量,代表第j个类间相似度分值,代表第i个类间相似度分值,γ代表缩放参数,的最优值是1+m,的最优值是-m,类与类之间的边界值为m,类内边界值为1-m,n为需要分类的实例的个数,λ和λ1代表该函数的两个权重系数,xi代表第i个表情实例的特征向量,ci代表每个表情实例的类内中心,cj与ck代表两个不同表情类别的类内中心。
[0034]
步骤s3、训练所搭建的婴幼儿疼痛表情识别网络,具体包含以下步骤。
[0035]
步骤s31:选取南京邮电大学卢官明教授团队组建的可公开数据集fenp数据集为婴幼儿疼痛识别网络的训练样本并进行数据增强,如图4所示。将每一类婴幼儿的面部表情划分为训练集和测试集,训练集选取2250张,测试集选取500张,并通过旋转、平移、添加噪声等方式对训练集进行数据增强。为了方便模型的训练,将数据集的大小统一调整为224
×
224。详细的训练集和测试集安排如表2所示:
[0036]
表2数据集样本划分
[0037][0038]
步骤s32:训练gpu采用nvidia geforce rtx 2060 6gb,cuda 12.1.68。软件环境采用tensorflow 2.10.0,编程语言是python 3.9。选用adam作为优化器,参数的具体设置是:β1=0.9,β2=0.999,epsilone=10-8
。模型学习率在起初设置为0.01,每通过20轮缩小10倍,迭代次数规定是60次,batchsize设置为16,num_classes设置为4。d-mobilenet的准确率变化曲线和损失变化曲线如图5所示。识别准确率在fenp数据集上识别准确率达到了77.9%,参数量和浮点计算量只有1.74m和193.9m,且综合性能优于mobilenetv2与mobilenetv3。
[0039]
步骤s4、将步骤s1获取到的矫正过的婴幼儿人脸图片输入训练好的婴幼儿疼痛表情识别网络,输出最终的识别结果。
技术特征:
1.一种轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,包括以下步骤:步骤s1:获取图像帧并进行人脸检测与对齐;步骤s2:搭建婴幼儿疼痛表情识别网络;步骤s3:训练所搭建的婴幼儿疼痛表情识别网络;步骤s4:将训练好的婴幼儿疼痛表情识别网络对步骤s1获取到的婴幼儿人脸图片进行识别。2.根据权利要求1所述的轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,步骤s1包含以下步骤:步骤s11,通过opencv从视频流中获取图像帧;步骤s12,利用mtcnn人脸检测算法完成婴幼儿的人脸候选框定位和特征点定位;步骤s13,通过五个特征点进行人脸对齐。3.根据权利要求1所述的轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,步骤s2包含以下步骤:步骤s21,结合densenet和mobilenet搭建一个轻量级稠密块;步骤s22,将稠密块嵌入mobilenetv1并调整网络的宽度;步骤s23,提出一种将circle loss和island loss相结合的损失函数作为模型的损失函数。4.根据权利要求3所述的轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,步骤s21中,根据densenet和mobilenet设计一个轻量级稠密块dense-dwblock;稠密块中的非线性变换引入了深度可分离卷积,分为两个无间隔的步骤:第一步由3
×
3的深度卷积以及批量归一化操作和relu激活函数组成;第二步由1
×
1的点卷积以及批量归一化操作和relu激活函数组成。5.根据权利要求4所述的轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,步骤s22中,将稠密块嵌入mobilenetv1并修改网络宽度得到婴幼儿疼痛表情识别模型d-mobilenet;整体网络的构建包括两个部分,第一部分是将稠密块嵌入mobilenetv1网络中,第二部分对原先的网络结构做出调整,具体改进如下:(1)mobilenetv1结构的第一层是3
×
3的标准卷积,保留这部分结构;(2)将三个宽度分别是24、48以及96的轻量级稠密块取代原网络中的部分卷积层;(3)每两个dense-dwblock之间间隔一个步长为2的dwblock当作过渡层。6.根据权利要求5所述的轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,步骤s23,优化过的损失函数由以下公式表达:式中,k代表样本类内相似度分值的数量,l代表类间相似度分值的数量,代表第j个类内相似度分值,代表第i个类间相似度分值,i=1,2,...,k,γ代表缩
放参数,的最优值是1+m,的最优值是-m,类与类之间的边界值为m,类内边界值为1-m,n为需要分类的实例的个数,λ和λ1代表该函数的两个权重系数,x
i
代表第i个表情实例的特征向量,c
i
代表每个表情实例的类内中心,c
j
与c
k
代表两个不同表情类别的类内中心。7.根据权利要求1所述的轻量化高性能的婴幼儿疼痛表情识别方法,其特征在于,步骤s3包含以下步骤:步骤s31:选取fenp数据集为婴幼儿疼痛识别网络的训练样本并进行数据增强;步骤s32:用划分的训练集对本发明提出的婴幼儿疼痛表情识别网络进行训练,并用测试集对训练完成的模型进行测试。
技术总结
本发明公开了一种轻量化高性能的婴幼儿疼痛表情识别方法,包括图像的获取与预处理、婴幼儿疼痛表情识别网络的搭建、识别网络的训练、婴幼儿疼痛表情的识别四个步骤;在轻量化婴幼儿疼痛表情识别网络设计中结合DenseNet和MobileNet的优势设计了一个识别准确率高且实时性好的网络模型D-MobileNet,并针对模型对哭泣和疼痛表情识别效果不佳的问题设计了一种将Circle Loss和Island Loss相结合的损失函数作为模型的损失函数。本发明所设计的婴幼儿疼痛表情识别网络兼具参数量低、实时性好、识别准确率高等优势。识别准确率高等优势。识别准确率高等优势。
技术研发人员:黄嘉伟 樊卫华
受保护的技术使用者:南京理工大学
技术研发日:2023.04.28
技术公布日:2023/8/16
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种锂电池生产组装设备的制作方法 下一篇:一种镗排及其校中装置和校中方法与流程
