多尺度卷积神经网络的头部姿态估计 下载: 1512次
1 引言
头部姿态估计是指计算机通过对输入图像或者视频序列进行分析、预测,确定人的头部在三维空间中的位置以及姿态参量[1]。这里的姿态参量是指人脸图像在三维空间中的旋转角度,分别为水平旋转(yaw)、垂直旋转(pitch)、平面内旋转(roll)[2]。头部姿态估计在人机交互、生物识别、虚拟现实以及疲劳检测等领域有着广泛的应用,因此对于头部姿态估计的研究具有现实意义。常用的头部姿态估计方法分为两种,基于模型的方法和基于外观的方法[3]。基于模型的方法主要是通过检测面部关键特征点来构建头部形态的几何模型,从而估计头部姿态[4-6]。基于外观的方法通常是假定获取的人脸图像和真实图像存在某种特定的关系,运用统计或者概率的方法训练关系模型来推断头部姿态[7-9]。基于模型的方法虽然能够获取到连续的头部姿态估计值,但姿态估计准确度严重依赖人脸特征点的检测精度。然而实际应用中,人脸特征点检测精度会受到光照变化、复杂背景、头部偏转以及遮挡等干扰因素的影响[10],导致检测精度明显下降,甚至无法检测到人脸特征点。此外,简单的模型对于头部姿态的描述并不准确;复杂的模型,计算困难,实际应用价值不高。基于外观的方法将对头部姿态的识别问题转化为分类问题,通过训练-学习的方法获得人脸姿态和头部姿态的对应关系,此类方法的性能依赖于人脸图像样本好坏和学习模型的设计[11]。基于外观的方法不依赖于人脸特征点的准确定位,可以预测较大偏转范围的头部姿态,因此基于外观的方法进行头部姿态估计是一个很好的选择。
头部姿态估计在实际应用中需要解决两个问题。第1个问题是解决光照、遮挡、背景等因素对识别准确率的影响。第2个问题是降低计算开销,提高系统的运行速度。由于卷积神经网络(CNN)在图像处理领域取得了丰富的成果,在字符识别、人脸识别等领域有着成熟的应用,因此采用卷积神经网络方法对于解决头部姿态在实际应用中存在的问题具有重要的研究价值。
目前,将卷积神经网络应用到头部姿态估计领域的方法不多[12]。为了解决头部姿态估计在实际应用中存在的问题,本文提出了多尺度卷积神经网络的头部姿态估计方法。该方法具有以下两方面的优点:1)所设计的卷积神经网络结构使用不同尺度的卷积核对原始人脸图像进行特征提取,在丰富图像特征表达的同时较好地保留了图像原始信息,更好地构建人脸姿态和头部姿态的对应关系模型,对于光照、遮挡等干扰因素具有较好的稳健性;2)所设计的卷积神经网络结构能够有效降低系统计算的开销,使得系统具有较高的时效性。
2 卷积神经网络
卷积神经网络是LeCun等[13]在1990年提出用来专门处理具有类似网格结构的数据神经网络,一个卷积神经网络通常由卷积层、池化层和全连接层组成。卷积层通过卷积运算来提取图像特征,卷积运算可以表示为
式中:
设计一个合理的卷积神经网络结构是卷积神经网络研究中的主要问题。网络结构越复杂,需要学习的参数量越多,因此需要更多的训练样本,系统计算开销较大,运行速度较慢。网络结构越简单,需要学习的参数量越少,系统计算开销较小,需要的样本也相对较少,但对特征的抽象表达能力不足,易受光照、遮挡等外在因素的干扰。
3 多尺度卷积神经网络的头部姿态估计
在实际应用过程中,相比估计连续的头部转动角度,判断头部姿态处于低头或者抬头等简单动作更有意义且更可靠。因此将头部姿态估计的识别问题转换成为对头部姿态的分类问题,通过卷积神经网络对人脸图像进行特征提取,构建多个离散角度和头部姿态的对应关系模型,利用该模型对人脸图片进行分类,从而估计头部姿态。该方法可以有效提取对姿态敏感,对光照、遮挡、背景等影响因素稳健的特征,并且提高了系统的运算速度。头部姿态估计方法总体描述如
3.1 图片预处理及人脸检测
本文重点是设计有效的卷积神经网络模型来解决系统在实际应用中的稳健性和时效性问题,同时人脸区域的检测方法有着成熟的应用。因此只简单介绍一下图片预处理和人脸检测部分。
采用的预处理方法主要包括图像灰度化、直方图均衡化以及图像归一化3个步骤[16-17]。经过预处理的图像可以凸显出重要特征,减小干扰因素对图像的影响以及提高系统的运算速度。由于背景带来的噪声会严重影响头部姿态特征的选择,因此需要在提取头部姿态特征前对人脸区域进行检测。采用Adaboost人脸检测算法来选取人脸区域,该算法[18]基于积分图像来选取面部特征值,利用面部特征值特征构建多个弱分类器级联的强分类器,然后利用强分类器完成人脸区域检测。该算法不容易出现过拟合现象,具有较好的检测率和运行速度。对于检测到的人脸区域,将其归一化到48×32大小的灰度图,方便接下来训练卷积神经网络模型。
3.2 多尺度卷积神经网络结构
卷积神经网络在图像处理中的丰富成果对于解决光照、遮挡等干扰因素影响头部姿态识别准确率的问题具有参考意义。通过研究前人应用在头部姿态识别上的深度学习方法后发现,它们基本都是通过使用一种尺度卷积核提取图片底层特征信息,如文献[
12]中提出基于卷积神经网络的稳健性头部姿态估计方法。然而单一卷积核在表达人脸图片信息时会遗漏较多的细节,受InceptionNet思想[19]的启发,本文提出的网络通过采用多个尺度卷积核对人脸图片进行特征提取,可以从原始人脸图像中得到更多的信息,丰富了图像特征。网络结构如
图 2. 用于头部姿态估计的深度卷积神经网络结构。(a)多尺度卷积结构;(b)特征组合后处理结构
Fig. 2. Deep neural network structure for head pose estimation. (a) Multi-scale convolution structure; (b) process structure after feature combination
1) 输入:对于训练集中输入层或某个中间层输出的batch数据{
2) 输出学习参数
BN算法本质上是通过改变参数
在人脸图像特征提取后,引入1×1卷积[21]来降低系统参数量,提高算法的运行速度。当输入通道数大于输出通道时,1×1卷积相当于对网络结构进行降维,这种降维操作不会改变图片的大小,只会改变图像通道数,这种性质可以确保图像的完整信息得以保留。如
在网络结构的最后,采用2×3的平均全局池化层来代替全连接层,能有效解决全连接层参数量大、训练速度慢且容易过拟合的问题,输出采用Softmax函数进行分类判别。神经网络的训练目标是最小化损失函数。采用交叉熵损失函数,损失函数的表达式为
式中:
使用自适应性矩估计(AME)算法[22]代替传统的随机梯度下降算法迭代更新神经网络权重时,计算效率较高,内存需求较低。
4 实验结果与分析
4.1 实验准备
实验采用的数据集为CAS-PEAL-R1数据集和Pointing'04数据集,如
图 3. 实验用部分头部姿态库图片。(a) CAS-PEAL-R1;(b) Pointing'04
Fig. 3. Part of the experimental head posture library picture. (a) CAS-PEALR1; (b) Pointing'04
由于人脸区域检测相关研究和应用非常成熟,且不是本文重点。因此采用文献[
18]提供的方法完成对人脸区域的检测,并归一化为32×48的灰度图片。部分归一化后的图像如
卷积神经网络中预训练网络的参数设置如下:训练迭代次数
为了验证所提算法的有效性,用识别图片准确率和平均每张图片处理时间来对算法进行评估。图片识别准确率指所有测试样本的识别正确数与测试样本数之比。平均每张图片处理时间指算法处理100张图片后,平均每张图片所用时间。
4.2 实验结果
为了验证多尺度卷积能有效提高头部姿态的识别准确率,对比了多尺度卷积与单尺度卷积在测试集上的识别准确率,单一卷积核只采用3×3卷积核、5×5卷积核以及7×7卷积核中的一个,设置单一卷积核卷积输出的特征响应图与多尺度卷积输出特征响应图的数量相同。训练预先设置的参数不变,实验结果如
表 1. 多尺度卷积与单尺度卷积对比
Table 1. Multi-scale convolution vs. single-scale convolution
|
表 2. 不同算法在Pointing'04和CAS-PEAL-R1数据库上准确率对比
Table 2. Accuracy of different algorithms on Pointing'04 and CAS-PEAL-R1
|
实际应用中头部姿态的转动角度并不严格与数据库中相同,因此本文将算法中的21类姿态转换成实际应用中常见的9类姿态。转换前的21类姿态包括PU、PM、PD,分别代表抬头、平视、低头3种上下旋转的姿态,以及水平方向-45°,-30°,-15°,0°,15°,30°,45°等7种角度的旋转,转换后的9类姿态包括平视、平视左偏、平视右偏、低头、低头左偏、低头右偏、抬头、抬头左偏以及抬头右偏,转换前后关系如
表 3. 姿态转换关系表
Table 3. Gestures Conversion relationship table
|
为了验证算法在实际应用中的稳健性,本文测试了标准、戴口罩、戴眼镜、表情、弱光照、强光照以及复杂背景等干扰因素对头部姿态识别准确率的影响。选取了20名志愿者,每个志愿者采集了7种环境下9个姿态图片,共计1260张实验图片,部分图片如
图 5. 不同干扰因素下的部分头部姿态图片。(a)标准;(b)戴口罩;(c)戴眼镜;(d)表情;(e)弱光照;(f)强光照;(g)复杂背景
Fig. 5. Partial head posture pictures under different interference factors. (a) Standard; (b) with mask; (c) with glasses; (d) expression; (e) weak illumination; (f) strong illumination; (g) background
表 4. 不同干扰因素对识别率的影响
Table 4. Different interference factors effect on recognition rate
|
为了验证本文提出的算法的时效性,选择了1920 pixel×1080 pixel、1360 pixel×760 pixel和800 pixel×600 pixel 3种常用分辨率图片各100张,对比标准采用平均每张图片运行时间。采用的计算机型号为Macbook Pro 13.3,处理器型号为2.7 GHz Intel Core i5,内存为8 GB、1867 MHz DDR3,未采用图形处理器(GPU)进行运算。将本文算法与现有实时头部姿态估计算法进行对比,对比结果如
表 5. 不同分辨率下的识别时间
Table 5. Recognition time at different resolution
|
5 结论
基于多尺度卷积神经网络提出一种头部姿态估计算法,该算法能够有效估计头部姿态。针对实际应用中头部姿态易受到光照、遮挡等外部因素的影响,以及为了满足系统在实际应用中对于运行速度的要求,利用多尺度卷积核、1×1卷积核等对传统卷积神经网络进行改进。实验结果证明,相比于现有算法,所提算法具备较好的稳健性和时效性,能够满足实际应用的要求。
[4] Zhu XX, RamananD. Face detection, pose estimation, and landmark localization in the wild[C]∥2012 IEEE Conference on Computer Vision and Pattern Recognition, June 16-21, 2012, Providence, RI, USA. New York: IEEE, 2012: 2879- 2886.
[5] DerkachD, RuizA, Sukno FM. Head pose estimation based on 3-D facial landmarks localization and regression[C]∥2017 12th IEEE International Conference on Automatic Face & Gesture Recognition (FG 2017), May 30-June 3, 2017, Washington D. C., USA. New York: IEEE, 2017: 820- 827.
[6] PadelerisP, ZabulisX, Argyros AA. Head pose estimation on depth data based on particle swarm optimization[C]∥2012 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops, June 16-21, 2012, Providence, RI, USA. New York: IEEE, 2012: 42- 49.
[7] GengX, XiaY. Head pose estimation based on multivariate label distribution[C]∥2014 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2014, Columbus, OH, USA. New York: IEEE, 2014: 1837- 1842.
[8] HuangC, Ding XQ, FangC. Head pose estimation based on random forests for multiclass classification[C]∥2010 20th International Conference on Pattern Recognition, August 23-26, 2010, Istanbul, Turkey. New York: IEEE, 2010: 934- 937.
[10] 夏军, 裴东, 王全州, 等. 融合Gabor特征的局部自适应三值微分模式的人脸识别[J]. 激光与光电子学进展, 2016, 53(11): 111004.
[11] 唐云祁, 孙哲南, 谭铁牛. 头部姿势估计研究综述[J]. 模式识别与人工智能, 2014, 27(3): 213-225.
[12] 桑高丽, 陈虎, 赵启军. 一种基于深度卷积网络的鲁棒头部姿态估计方法[J]. 四川大学学报(工程科学版), 2016, 48(S1): 163-169.
[13] LeCunY, BoserB, Denker JS, et al. Handwritten digit recognition with a back-propagation network[M] ∥Touretzky D S. Advances in neural information processing systems 2. San Francisco: Morgan Kaufmann Publishers Inc., 1990: 396- 404.
[14] IanG, YoshuaB, AaronC. Deep learning[M]. Cambridge: MIT Press, 2016: 203- 204.
[15] 马永杰, 李雪燕, 宋晓凤. 基于改进深度卷积神经网络的交通标志识别[J]. 激光与光电子学进展, 2018, 55(12): 121009.
[16] 费延佳, 邵枫. 基于图像检索的对比度调整[J]. 激光与光电子学进展, 2018, 55(5): 051002.
[17] Li HX, LinZ, Shen XH, et al. A convolutional neural network cascade for face detection[C]∥2015 IEEE Conference on Computer Vision and Pattern Recognition, June 7-12, 2015, Boston, MA, USA. New York: IEEE, 2015: 5325- 5334.
[18] ViolaP, JonesM. Fast and robust classification using asymmetric adaboost and a detector cascade[C]∥Proceedings of the 14th International Conference on Neural Information Processing Systems: Natural and Synthetic, December 3-8, 2001, Vancouver, British Columbia, Canada. Cambridge: MIT Press, 2002: 1311- 1318
[19] SzegedyC, LiuW, Jia YQ, et al. Going deeper with convolutions[C]∥2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 7-12, 2015, Boston, MA, USA. New York: IEEE, 2015: 7298594.
[20] IoffeS, SzegedyC. Batch normalization: accelerating deep network training by reducing internal covariate shift[C]∥Proceedings of the 32nd International Conference on International Conference on Machine Learning, July 6-11, 2015, Lille, France. Massachusetts: JMLR. org, 2015, 37: 448- 456.
[21] LinM, ChenQ, Yan S. Network in network[EB/OL]. ( 2014-03-04)[2018-11-25]. https:∥arxiv.org/abs/1312. 4400.
[22] Kingma DP, Ba J. Adam: a method for stochastic optimization[EB/OL]. ( 2017-01-30)[2018-11-25]. https:∥arxiv.org/abs/1412. 6980.
[23] HuangC, Ding XQ, FangC. Head pose estimation based on random forests for multiclass classification[C]∥2010 20th International Conference on Pattern Recognition, August 23-26, 2010, Istanbul, Turkey. New York: IEEE, 2010: 934- 937.
[24] 闵秋莎, 刘能, 陈雅婷, 等. 基于面部特征点定位的头部姿态估计[J]. 计算机工程, 2018, 44(6): 263-269.
Article Outline
梁令羽, 张天天, 何为. 多尺度卷积神经网络的头部姿态估计[J]. 激光与光电子学进展, 2019, 56(13): 131003. Lingyu Liang, Tiantian Zhang, Wei He. Head Pose Estimation Based on Multi-Scale Convolutional Neural Network[J]. Laser & Optoelectronics Progress, 2019, 56(13): 131003.