摄像机主动位姿协同的人脸正视图像获取方法
Camera active pose cooperation for obtaining face frontal images
通讯作者:
收稿日期: 2019-08-28
Received: 2019-08-28
作者简介 About authors
王雯涛(1995—),男,硕士生,从事摄影测量的研究.orcid.org/0000-0002-9380-1485.E-mail:
为了主动调整摄像机的位置姿态以在物方空间降低由人脸旋转带来的影响,提出人脸-摄像机主动位姿协同方法. 利用工业摄像机与同步带类运动控制器搭建位姿协同环境,根据单像空间后方交会方法求解运动人脸姿态角和相对位置,计算人脸、摄像机和运动控制器各坐标系之间的映射关系,摄像机运动由相邻采样时刻摄像机相对位置和人脸姿态角计算得出的摄像机协同位姿控制,主动、实时地获取人脸正视图像. 实验表明,运动轴上的摄像机点位误差小于10 mm,取得的人脸正视图像提高了人脸纠正的精准度与鲁棒性.
关键词:
A face-to-camera active pose cooperation method was proposed in order to reduce the impact of face rotation in object space by actively adjusting the position and attitude of the camera. Environment of pose cooperation was constructed by using an industrial camera and a synchronous belt-like motion controller. The angle of a moving face pose and the relative position between the camera and the face were solved by a single image space resection. The mapping relationship between the coordinate systems of the face, the camera and the motion controller was calculated. The camera motion was controlled by the camera's coordinated pose control calculated from the relative position of the camera and the face attitude angle at the adjacent sampling time, and the face frontal image was acquired actively and real-time. The experimental results showed that the camera point position error on the motion axis was less than 10 mm, and the extracted frontal image improved the accuracy and robustness of face correction.
Keywords:
本文引用格式
王雯涛, 李佳田, 吴华静, 高鹏, 阿晓荟, 朱志浩.
WANG Wen-tao, LI Jia-tian, WU Hua-jing, GAO Peng, A Xiao-hui, ZHU Zhi-hao.
人脸对齐是根据输入的人脸图像,定位出面部关键特征点,将非正视人脸相似变换至正视人脸[3-4]. 对齐方法主要有手动标定对齐、局部对齐、整体对齐. Mcneill等[5]采用基于分段的形状匹配算法(HPM),在基准形状检索测试中表现良好. Lin等[6]提出基于级联回归的显式形状回归算法(ESR),使用矢量回归函数完成人脸面部形状推断,在面部形状定位中准确度较高. 手动标定对齐适用于构建人脸正视图像样本库. Dantone等[7]采用回归森林方法分类人脸特征点,该方法对于低质量图像具有良好的估算能力.Li等[8]提出两级多任务自动编码框架,通过引入头部姿态信息处理大视点的变化,从而实现脸部快速对准. 局部对齐方法是以先验知识为基础的局部似然估计,当特征点数量增加时,计算代价较高. Tzimiropoulos[9]采用Hand-crafted类型的Sift特征进行无监督学习,建立精确的人脸对齐系统. Xiong等[10]利用线性最小二乘函数的监督下降法,在面部特征检测问题上达到较好的性能. 整体对齐相较于局部对齐表现出较强的鲁棒性与实时性. 当人脸偏转角度较大时,人脸图像变形较大、信息缺失较严重,人脸对齐的累积误差呈现明显的增大趋势,难以纠正人脸图像[11].
本文建立人脸-摄像机位姿协同系统,映射相邻采样时刻的人脸姿态变化量到摄像机所在的运动控制器坐标系中,计算摄像机协同位姿[16]. 将协同位姿信号转换为PCI-1240U4轴运动控制卡控制的步进电机的脉冲信号,实现摄像机位姿的调整,在物方空间降低人脸旋转时的信息丢失,实时获取人脸正视图像,纠正人脸.
1. 人脸姿态计算的摄影测量基础
基于模型的方法的基本思想是通过构建人脸标准模型来表示人脸的结构和形状,选取特征点,在测试人脸与模型之间建立相应的数学关系. 该方法的主要步骤如下:1)检测人脸区域并提取人脸特征点(如瞳孔、鼻子、左眼眼角等);2)确定二维特征点与人脸标准模型上特征点的对应关系;3)利用最小二乘的姿态计算方法,对人脸姿态参数求解.
图 1
图 1 世界坐标系到摄像机坐标系转换示意图
Fig.1 Conversion diagram for world coordinate system to camera coordinate system
平移旋转世界坐标系变换到摄像机坐标系:
式中:t为3×1平移向量;R为旋转矩阵,是3×3的正交矩阵,可以表示为
变换摄像机坐标系到像平面坐标系:
变换像平面坐标系到像素坐标系:
式中:dx和dy表示每个像素在像平面坐标系x'、y'方向上的物理尺寸,(u0,v0)为o1在像素坐标系上的坐标. 根据式(1)、(3)、(4),可得世界坐标系到像素坐标系的变换公式:
设人脸特征点P在世界坐标系和摄像机坐标系中的坐标分别为(XW,YW,ZW)与(XC,YC,ZC),摄影中心S在世界坐标系中的坐标为(XS,YS,ZS). 摄像机坐标系经过旋转矩阵R变换后,将式(1)表示为
特征点P在摄像机坐标系中的坐标可以表示为(u−u0,v−v0,−f),代入到式(6),展开为共线方程形式:
根据共线方程,采样时刻的人脸图像外方位元素φ、ω、κ、XS、YS、ZS由单像空间后方交会解算得出.
求解人脸姿态时,对标准人脸模型进行旋转、平移、缩放,以使标准人脸模型的特征点在像平面的投影与相应待测图像中的人脸特征点最佳拟合[20]. 利用最小二乘法,将标准人脸特征点与待测人脸特征点进行拟合:
式中:S为缩放因子,n为特征点数目,pi为待测图像人脸特征点,qi为相应标准人脸模型特征点,(φ,ω,κ)为待测图像人脸与标准模型人脸最佳拟合时标准模型的人脸姿态.
令q=[qu,qv]T,l=[u−u0,v−v0]T,p=[φ,ω,κ,XS,YS,ZS]T,单个特征点的拟合误差为
n个特征点的拟合误差为E=[e1,e2,···,en]T. 联立式(9),求解人脸姿态:
式中:Q=[q1,q2,···,qn]T,L=[l1,l2,···,ln]T.
2. 人脸-摄像机位姿协同控制设计
位姿协同控制即连续采样运动中的人脸,实时计算人脸姿态变化对应的摄像机协同位姿,以调用运动控制器控制摄像机协同运动.
图 2
图 3
图 3 初始采样时刻各个坐标系的位置关系图
Fig.3 Position diagram of each coordinate system at initial sampling time
假设以ri–1=[φi–1,ωi–1,κi–1]为ti–1时刻人脸姿态, Ti–1=[XSi–1,YSi–1,ZSi–1]为摄像机相对位置. ri=[φi,ωi,κi]为ti时刻人脸姿态, Ti=[XSi,YSi,ZSi]为摄像机相对位置. 相邻采样时刻的人脸姿态变化可以表示为
摄像机相对位置的变化量表示为
摄像机协同位姿为M=[Tx,Ty,Rω]T. 摄像机协同位姿计算的关键是将人脸运动中姿态角变化而导致的摄像机在x、y轴产生的平移分量补偿到摄像机协同位姿中[25].
以人脸绕Y轴旋转为例,分析人脸姿态角变化对Tx、Ty的影响. 设从ti-1到ti采样时刻,相邻采样时刻姿态角变化为[0,Δωi,0]. 根据空间几何关系可知,
同理,人脸绕X轴旋转,姿态角变化为[Δφi,0,0],
式中:D为初始采样时刻人脸距离摄像机的距离. 从ti−1到ti采样时刻,人脸姿态角变化为[Δφi,Δωi,Δκi],ti采样时刻的摄像机协同位姿为
如图4所示,ti−2~ti表示ti−2~ti连续采样时刻摄像机所拍摄的人脸图像,Ci−2~Ci表示摄像机在相应采样时刻的运动位置.
图 4
图 4 人脸与摄像机位置关系的示意图
Fig.4 Schematic diagram of relationship between face and camera position
3. 实验与分析
实验所用设备有工业摄像机、同步带类两轴运动控制器,按照2.3节设计的实验方案安装摄像机. 实验平台由计算机、PCI-1240U4轴运动控制卡、连接缆线、3个接线板、3个步进电机、2个同步带控制导轨、光感传感器组成,如图2所示. 实验中拍摄的人脸图像分辨率为640×480像素. 实验分为人脸姿态参数计算、位姿协同控制、协同适用性和正视图像获取4部分开展.
3.1. 姿态参数计算
在计算姿态参数时需要进行检测人脸区域,提取人脸特征点. 采用OpenCV提供的相关函数检测人脸区域,利用级联回归树方法提取人脸特征点,并对特征点编号,以便索引特征点.
根据标准人脸模型中特征点三维坐标和相应待测图像人脸特征点的二维坐标,由单向空间后方交会解算人脸姿态参数. 标定摄像机内参,在实验过程中假设摄像机没有畸变. 已标定的摄像机内参矩阵如下:
选取三维人脸标准模型中极具代表性的6个特征点:左眼左角点、嘴巴左角点、右眼右角点、嘴巴右角点、下巴、鼻尖. 对应的三维坐标如表1所示.
表 1 标准人脸模型特征点的三维坐标
Tab.1
特征点 | XW | YW | ZW |
左眼左角点 | −220.0 | 165.0 | −130.0 |
嘴巴左角点 | −145.0 | −145.0 | −120.0 |
右眼右角点 | 220.0 | 165.0 | −130.0 |
嘴巴右角点 | 145.0 | −145.0 | −120.0 |
下巴 | 0.0 | −325.0 | −60.0 |
鼻尖 | 0.0 | 0.0 | 0.0 |
控制人脸分别绕人脸坐标系的X、Y、Z轴旋转不同的角度,用摄像机拍摄人脸图像,计算不同采样时刻时的人脸姿态角φ、ω、κ. 控制人脸旋转角度在[−70°,70°],以提高人脸区域检测的准确性. 对比同一采样时刻的人脸姿态角的协同系统计算值与物理量测值,如表2所示. 表中,φ、ω、κ为人脸绕X、Y、Z轴旋转角的协同系统计算值,φ'、ω'、κ'为物理量测值. 人脸姿态角计算误差均小于0.05 rad.
表 2 不同采样时刻人脸姿态
Tab.2
ti | 人脸姿态 | φ | φ' | ω | ω' | κ | κ' |
t1 | | 0.0306 | 0.0307 | −0.2621 | −0.2613 | 3.1195 | 3.1200 |
t2 | | 0.0308 | 0.0305 | −0.3072 | −0.3064 | 3.1186 | 3.1179 |
t3 | | 0.0319 | 0.0311 | −0.8121 | −0.8112 | 3.1178 | 3.1173 |
t4 | | 0.0305 | 0.0312 | −1.1629 | −1.1638 | 3.1260 | 3.1256 |
t5 | | 0.0316 | 0.0315 | −0.7629 | −0.7628 | 2.8835 | 2.8829 |
t6 | | 0.5354 | 0.5353 | −0.2771 | −0.2770 | 3.1225 | 3.1217 |
t7 | | −0.3146 | −0.3148 | −0.2551 | −0.2555 | 3.1135 | 3.1138 |
表 3 不同采样时刻摄像机相对位置
Tab.3
ti | XS | | | | ZS | |
t1 | 10.230 | 11.610 | 10.511 | 8.261 | 2449.88 | 2442.07 |
t2 | 80.299 | 78.629 | 21.900 | 18.840 | 2449.88 | 2450.25 |
t3 | 53.597 | 52.457 | 46.397 | 44.217 | 2449.87 | 2451.95 |
t4 | 41.106 | 39.416 | 35.589 | 39.119 | 2449.07 | 2456.19 |
t5 | 109.310 | 106.660 | 42.763 | 47.613 | 2450.17 | 2455.20 |
t6 | 14.464 | 16.014 | 65.387 | 61.317 | 2449.77 | 2452.04 |
t7 | 4.230 | 4.140 | −33.453 | −37.803 | 2449.97 | 2444.28 |
3.2. 位姿协同控制
根据连续采样时刻的人脸姿态角、摄像机相对位置解算相邻采样时刻的人脸姿态变化,映射摄像机在采样间隔下的协同位姿到运动控制器坐标系中. 然后转换为步进电机的输出脉冲,控制摄像机运动. 以摄像机初始位置为原点,设置运动控制器的运动模式为相对运动. 人脸在X、Y轴作平移运动,绕U轴作旋转运动. 连续采样时刻的人脸姿态计算结果如表4所示.
表 4 人脸姿态及摄像机相对位置
Tab.4
位置 | X | Y | Z | φ | ω | κ |
P1 | 107.33 | 82.02 | 2452.59 | 0.061 | −0.29 | 3.124 |
P2 | 115.85 | 84.06 | 2457.74 | 0.058 | −0.281 | 3.121 |
P3 | 123.13 | 84.02 | 2459.14 | 0.064 | −0.317 | 3.054 |
P4 | 128.66 | 83.86 | 2462.48 | 0.072 | −0.371 | 3.078 |
P5 | 131.64 | 83.93 | 2464.75 | 0.061 | −0.359 | 3.049 |
P6 | 135.84 | 82.31 | 2467.73 | 0.072 | −0.395 | 3.061 |
P7 | 149.44 | 83.45 | 2468.52 | 0.073 | −0.402 | 3.13 |
P8 | 161.56 | 84.75 | 2469.77 | 0.069 | −0.456 | 3.044 |
P9 | 161.87 | 83.13 | 2470.87 | 0.061 | −0.467 | 3.127 |
P10 | 168.81 | 82.54 | 2479.31 | 0.072 | 0.005 | 3.073 |
表 5 摄像机位置变化量与步进电机脉冲输入量
Tab.5
位置变化 | x轴 | y轴 | u轴 | |||||
Tx/mm | P/PPU | Ty/mm | P/PPU | Rω/rad | P/PPU | |||
P1→P2 | 5.809 | 1452.25 | 0.049 | 12.25 | 0.0837 | 59.757 | ||
P2→P3 | 7.168 | 1792.00 | −0.018 | −4.50 | 0.0361 | 48.966 | ||
P3→P4 | 10.735 | 2683.75 | 0.142 | 35.50 | 0.0697 | 52.631 | ||
P4→P5 | 4.731 | 1182.75 | 0.099 | 24.75 | 0.0588 | 49.678 | ||
P6→P7 | 7.847 | 1961.75 | 0.054 | 13.50 | 0.0751 | 68.308 | ||
P7→P8 | 13.574 | 3393.5 | 0.098 | 24.50 | 0.0772 | 58.230 | ||
P8→P9 | 15.684 | 3921 | 0.093 | 23.25 | 0.0315 | 29.013 | ||
P9→P10 | 10.944 | 2736 | 0.026 | 6.50 | 0.0352 | 38.888 |
由PCI-1240U4轴运动控制卡控制运动控制器的运动轴,设置3帧为采样间隔输入脉冲,以保证摄像机位姿调整的连续性. 结合步进电机参数,协同位姿与脉冲量的转换关系如下:1 018个脉冲为实际旋转角度1°,250个脉冲为实际距离1 mm. 将摄像机协同位姿转换为脉冲的计算如下:平移量乘以250,旋转量乘以1 018. 当水平轴和竖直轴的调整量小于1 mm、旋转轴的调整量小于1°时,将对应的输入脉冲设置为0,以提高协同控制的准确性. 设置后的运动控制器水平、竖直轴控制误差小于1 mm,旋转轴控制误差小于1°.
设置步进电机输入脉冲为3000 PPU/S,人脸在X、Y轴方向作平移运动,如图5所示. 图中,f为不同采样时刻的图像帧序列,Ex、Ey分别为摄像机x轴、y轴的位置误差. 在采样的第15帧和第285帧左右人脸处于转向时刻,摄像机轴上位置误差变化较大. 人脸位姿计算出现延迟现象,故位置误差较大. 其余采样时刻误差均小于10 mm,表明位姿协同控制的有效性.
图 5
表 6 摄像机位置x轴误差分析
Tab.6
ti | Ec/mm | Ep/mm | Em/mm |
t1 | −7.58 | −6.445 | −1.135 |
t2 | 3.16 | 2.740 | 0.42 |
t3 | 8.14 | 7.308 | 0.832 |
t4 | 6.92 | 6.181 | 0.739 |
t5 | −6.17 | −5.615 | −0.555 |
t6 | 4.37 | 3.852 | 0.518 |
t7 | 6.46 | 5.713 | 0.747 |
t8 | 7.78 | 6.990 | 0.790 |
t9 | −2.57 | −2.370 | −0.200 |
t10 | 2.66 | 2.501 | 0.159 |
3.3. 协同适用性
图 6
图 6 不同平移速度下的摄像机y轴位置误差分析
Fig.6 Analysis of camera y-axis position error at different translation speeds
图 7
图 7 不同角速度下的摄像机u轴位置误差分析
Fig.7 Analysis of u-axis position error of camera at different angular velocities
在平移、偏转运动的转向时刻所采样的图像,平移速度和偏转角速度较快,会造成摄像机对应轴的协同误差增大,相机协同不稳定并伴随延迟现象,导致位姿协同系统紊乱. 当人脸平移运动速度小于30 cm/s,人脸偏转运动角速度小于45(°)/s时,本文方法的位姿协同系统能够快速、稳定地协同人脸.
3.4. 正视图像的获取
图 8
图 8 人脸图像与正视人脸图像的对齐对比分析
Fig.8 Comparative analysis of alignment between face image and face image
图 9
图 9 不同偏转角度下人脸图像与正视图像的对齐对比分析
Fig.9 Contrast analysis of face image and face-up image at different deflection angles
图 10
图 10 不同偏转角度对正视图像人脸对齐的影响
Fig.10 Contrast analysis of face image and face-up image at different deflection angles
4. 结 语
位姿协同下的正视人脸图像获取方法在物方空间下,实时调整摄像机位姿,获取正视或近似正视的人脸图像,降低人脸信息的丢失,提高人脸图像纠正的精度. 随着人脸检测、表情识别与人脸识别等一系列人脸算法的推广,人脸-摄像机主动位姿协同的正视人脸图像获取方法具有广阔的应用前景. 该方法的局限性在于本文的位姿协同在人脸转向时,存在不稳定现象. 进一步研究主要从2个方向着手:寻找有效方法提高人脸姿态计算精度,提高摄像机位姿协同对不同人脸运动方式的适应性,提高位姿协同的稳定性;三轴运动控制器下的位姿协同通过空间关系推广至更多轴、更复杂的运动控制器下的位姿协同,精准保持摄像机与运动人脸之间的相对位姿,以提高正视人脸图像获取的精准度.
参考文献
Face alignment by explicit shape regression
[J].DOI:10.1007/s11263-013-0667-3 [本文引用: 1]
Joint face detection and alignment using multitask cascaded convolutional networks
[J].DOI:10.1109/LSP.2016.2603342 [本文引用: 1]
Partial face recognition: alignment-free approach
[J].DOI:10.1109/TPAMI.2012.191 [本文引用: 1]
An empirical study of boosting methods on severely imbalanced data
[J].
Collaborative sensing in a distributed PTZ camera network
[J].DOI:10.1109/TIP.2012.2188806 [本文引用: 1]
Dual camera intelligent sensor for high definition 360 degrees surveillance
[J].DOI:10.1049/ip-vis:20041302 [本文引用: 1]
基于三维模型的人脸姿态估计方法
[J].
Face pose estimation method based on 3D model
[J].
Head pose estimation in computer: a survey
[J].DOI:10.1109/TPAMI.2008.106 [本文引用: 1]
交替误差补偿的无人飞艇位姿估计
[J].
Pose estimation of unmanned airship of alternating error compensation
[J].
从摄影测量到计算机视觉
[J].
Form photogrammetry to computer vision
[J].
摄影测量与深度学习
[J].
Photogrammetry and deep learning
[J].
Robust head-pose estimation based on partially-latent mixture of linear regressions
[J].DOI:10.1109/TIP.2017.2654165 [本文引用: 1]
基于卡尔曼滤波和随机回归森林的实时头部姿态估计
[J].DOI:10.3724/SP.J.1089.2017.16521 [本文引用: 1]
Real-time head pose estimation based on Kalman and random regression forest
[J].DOI:10.3724/SP.J.1089.2017.16521 [本文引用: 1]
/
〈 |
|
〉 |
