返回 科技论文 首页
基于正方形切平面描述符的三维人脸区域标记

  摘要:针对目前三维人脸模型的语义标记和分割研究较少的��题,提出一种基于正方形切平面描述符的三维人脸模型区域标记算法。这种新的描述符由三维人脸模型顶点的正方形切平面区域内的几何信息编码而成。随后通过随机森林算法对其进行学习,对模型上的所有顶点进行分类,从而实现对三维人脸模型上眉毛、眼睛、鼻子、嘴巴等区域的识别和标记。在定位仿真实验中,分类准确率可达94.46%。该描述符具有旋转、头部姿势与三维模型分辨率不变性,对模型噪声具有鲁棒性。实验结果表明,该方法能有效标记三维人脸模型区域。
  关键词:语义标记;三维人脸;网格标记;随机森林;正方形切平面描述符
  DOIDOI:10.11907/rjdk.171139
  中图分类号:TP317.4
  文献标识码:A 文章编号:1672-7800(2017)006-0189-05
  0 引言
  在计算机视觉与图像领域,对于二维图像人脸的研究(包括人脸识别、人脸检测、人脸特征点标记等)非常多,并且取得了很大进展。特别是近几年,随着深度学习算法的应用,对于二维人脸的研究有了极大突破[1]。然而,相对于二维人脸,人们对三维人脸研究较少。三维人脸的研究是以人脸的三维数据为基础,结合计算机视觉和计算机图形学,充分利用三维人脸的深度信息和其它几何信息,解决和克服现有二维人脸研究中面临的光照、姿态、表情等问题[3]。三维人脸模型标记与分割是将三维人脸网格模型上的顶点进行分类,将人脸划分为几个区域,例如眉毛、眼睛、鼻子、嘴等。对这些区域的标记与分割对三维人脸重建、特征点定位和表情动画等方面的研究都起着重要作用。三维人脸的研究是模式识别和图形学领域活跃且极具潜力的研究方向之一,在影视、游戏动画、人脸识别、虚拟现实、人机交互等方面都有着广泛应用[2-3]。
  目前,许多对三维人脸方面的研究,包括三维人脸重建、识别与跟踪、姿态估计及特征点标记等,都是基于深度图的方法[4-7]。Fanelli等[6-8]提出一种方法,将从深度数据估算人脸姿态表达为一个回归问题(Regression Problem),然后利用随机森林算法解决该问题,完成一个简单深度特征映射到三维人脸特征点坐标、人脸旋转角度等实值参数的学习。通过训练数据集建立随机森林,该数据集包括通过渲染随机生成姿态的三维形变模型得到的5万张640*480深度图像。在实验部分,对Fanelli等提出的从深度图中提取特征的方法与本文的特征提取方法进行了对比。与文献[6]中的方法相比,Papazov[9]提出了一个更为复杂的三角形表面patch特征,该特征是从深度图重建成的三维点云中计算获得的,主要包括两部分:线下测试和线上测试。将三角形表面patch(TSP)描述符利用快速最近邻算法(FLANN)从训练数据中寻找最相似的表面patches。
  在计算机图形学领域,网格理解在建立和处理三维模型中起着重要作用。为了有效地理解一个网格,网格标记是关键步骤,它用于鉴定网格上的每个三角形属于哪个部分,这在网格编辑、建模和变形方面都有着重要应用。Shapira等[10]利用形状直径函数作为分割三维模型的一个信号,通过对该信号的计算,定义一个上下文感知的距离测量,并且发现众多目标之间的部分相似性;随后,Sidi等[11]提出一个半监督的联合分割方法,利用一个预定义的特征集实现对目标的预先分割,然后将预先做好的分割嵌入到一个普通空间,通过使用扩散映射获得最终的对网格集的联合分割。网格标记的一个关键问题是建立强大的特征,从而提高各类网格模型标记结果的准确性,增加泛化能力。为了解决该问题,Kalogerakis等[12]提出采用一种基于条件随机场算法的方法来标记网格。通过对已标记的网格进行训练,成功地学习了不同类型的分割任务;Xie等[13]提出一种三维图形快速分割与标记的方法,用一系列特征描述法和极端学习器来训练一个网格标记分类的神经网络;Guo等[14]提出用深度卷积神经网络(CNNs)从一个大的联合几何特征中学习网格表示方式。这个大的联合几何特征首先被提取出来表示每个网格三角形,利用卷积神经网络的卷积特征,将这些特征描述符重新组织成二维特征矩阵,作为卷积神经网络的输入进行训练与学习。
  本文提出一种新的几何特征描述符(正方形切平面描述符)来表示人脸模型上的顶点特征,利用随机森林算法对三维人脸模型顶点进行训练,实现对人脸模型上顶点的分类(属于鼻子或是眼睛区域等),从而实现三维人脸模型的区域标记。这种新描述符并非从深度图提取的简单矩形区域特征,而是直接从三维人脸模型计算获得,在人脸的姿势、尺寸、分辨率的改变上具有一定鲁棒性。因此,训练过程是在三维人脸模型上执行的,这种数据相对于真实的深度图数据更容易获取(例如在文献[6]中使用的训练数据)。
  1 特征描述符与三维人脸区域分割
  1.1 正方形切平面描述符
  从一个三维人脸模型M的所有顶点上随机选取一个种子点P,根据三维人脸模型的几何结构,计算该种子点的法向量,此时根据一点和法向量即可确定一个切平面。确定正方形的边长L和正方形的方向。正方形的方向(正方形局部坐标系)是根据全局坐标系下建立的正方形,通过法向量转换而成。建立正方形局部坐标系,以便于计算三维人脸上的点到正方形的投影距离,减少程序运行时间,从而可以确定一个正方形切平面块S。在这种情况下,根据正方形切平面块S,可以计算出一个简单且具有鲁棒性的几何描述符V。将正方形边长分成K等份,正方形则细分为K2个小正方形,如图1(a)所示。模型M上的所有点向正方形切平面块上投影,如果投影点在正方形内,此点则肯定在K2个小正方形中的某一个正方形内,称该点属于该小正方形或者称小正方形包含该点。每个小正方形的描述符是其包含所有点投影距离的平均值。考虑到人脸模型的几何特征,有些人脸部分存在于正方形上面,有些部分则存在于正方形下面,因此每个点的投影距离有正负之分。整个正方形切平面块的描述符V是所有小正方形描述符的简单串联。在实验部分,本文将对边长L和划分的小正方形个数K2对分类的准确率进行对比研究。   使用每个小正方形包含所有点的平均投影距离作为描述符,使得该描述符对噪声、数据分解和分辨率上的变化具有鲁棒性,这在实验部分有所体现。许多三维几何特征已经在一些文章中被提出,包括Spin Images(SI)[15]、3D shape context (SC)[16]、 SHOT[17]和MeshHOG[18-19]。这些描述法都根据局部坐标系定义并且依赖于大量的平面法向量,使噪声数据对结果产生一定影响。和以上描述法相比,本文描述符取平均投影距离,并且正方形取的足够大,使描述法更加简单、有效且具有鲁棒性。除三维几何特征外,许多文章也对三维模型投影生成的深度图进行了特征选取和处理。例如,Fanelli等[6-8]在深度图中选取patch,然后在patch中随机选取两个矩形框F1、F2,如图2所示。以像素点的深度值和几何法向量的X、Y、Z值作为随机森林的4个特征通道,F1和F2中所有像素点某个特征通道平均值的差值作为随机森林每棵树节点的二元测试。二元测试定义为:
  本文在实验部分对上述特征选取方式与本文提出的正方形描述符在三维人脸区域标记上的结果进行了比较。
  1.2 数据库与人脸区域分割
  训练阶段的正方形切平面描述符均取自于高分辨率的人脸网格模型,这些训练模型由Basel Face Model (BFM)[20]生成。BFM是一个公开、可获得的基于PCA的三维形变模型,由200个人脸对象的高分辨率三维扫描创建而成。通过从一个正态分布取样的PCA系数,BFM能被用来生成任意数量的随机网格人脸。此外,在所有生成的人脸网格模型上,对应顶点的索引都是一样的。例如,在所有训练模型上,在鼻尖的顶点有相同的索引数字,这将带来诸多便利。对于训练模型,只需在任意一个BFM人脸模型上进行一次人脸区域的手动标记,即可知道每个训练模型要分割的区域上各点的索引,如每个模型鼻子区域的所有顶点索引都是一样的。
  对训练模型进行手动分割标记(只需分割标记一次),将一个三维人脸模型分割为10个区域:左眉毛、右眉毛、左眼睛、右眼睛、左脸颊、右脸颊、鼻子、上嘴唇、下嘴唇、下巴,剩下部分属于其它区域。如图3所示,对三维人脸模型进行区域分割,不同的分割区域用不同颜色进行标记,每个区域包含很多三维人脸模型顶点。由于很多三维人脸模型额头部分包含的顶点相对较少,特征信息也相对较少,所以将额头区域划分至其它区域。人脸模型的每个区域包含的所有顶点属于同一类,根据上述BFM数据库特点可知,数据库中任何一个人脸模型每个区域包含的所有顶点索引都是一致的。
  2 随机森林算法分类标记人脸区域
  2.1 随机森林算法
  分类回归树[21]是一个强大的工具,能够映射复杂的输入空间到离散或者分段连续的输出空间。一棵树通过分裂原始问题到更简单、可解决的预测以实现高度非线性映射。树上的每一个节点包含一个测试,测试的结果指导数据样本将分到左子树或是右子树。在训练期间,这些测试被选择用来将训练数据分组,这些分组对应着实现很好预测的简单模型。这些模型是由训练时到达叶子节点的被标记的数据计算而来,并且存储于叶子节点。Breiman[22]指出虽然标准的决策树单独使用会产生过拟合,但许多随机被训练的树有很强的泛化能力。随机被训练树的随机性包括两方面,一是用来训练每棵树的训练样本是随机选取的,二是每棵树上的二元测试是从使每个节点最优的测试集中随机选取的。这些树的总和称为随机森林。本文将三维人脸模型区域的标记与分割描述为一个分类问题,并利用随机森林算法来有效地解决它。
  2.2 训练
  训练数据集是由BFM生成的50个三维人脸模型。从每个模型上随机取n=10 000个顶点样本,每个顶点对应一个正方形切平面块。本文实验中森林由100棵树建立而成,森林里每个树由随机选取的一系列块(patch){Pi=Vfi,θi}构建而成。Vfi是从每个样本提取的特征,即正方形切平面描述符,f是特征通道的个数,正方形划分为K2个小正方形,f=K2。实值θi是这个样本所属的类别,例如鼻子区域类别设为数字1,那么鼻子区域内的顶点样本所对应的θ=1。建立决策树时,在每个非叶子节点上随机生成一系列可能的二元测试,该二元测试定义为:
  这里的Pi∈{L,R}是到达左子树或右子树节点上的样本集合,wi是到左子树或右子树节点的样本数目和到父节点样本数目的比例,例如:wi=|Pi||P|。
  2.3 测试
  通过BFM生成55个三维人脸模型,其中50个人脸模型作为训练数据,剩下5个人脸模型作为测试数据。测试数据依然取10 000个样本点,并且知道每个样本点属于哪一个区域,通过测试数据计算三维人脸模型网格点分类的准确率。为了测试提出方法的有效性,研究过程中从网上下载获取了其它三维人脸模型,对人脸模型上的所有网格点通过之前训练好的随机森林模型进行分类。因为其它人脸模型与BFM生成人脸模型的尺寸、坐标单位等不一致,所以本研究对这些测试模型进行了后期处理,对正方形的边长按照模型尺寸的比例�M行选取。
  3 实验
  3.1 数据集与实验环境
  本文三维人脸标记与分割所用的训练和测试三维人脸模型由BFM生成,50个模型作为训练数据,5个模型作为测试数据。每个模型包含53 490个顶点和106 466个三角形网格,每个训练模型选取10 000个顶点样本。用C++和OpenGL、OpenCV等库对三维人脸模型数据进行采样,得到每个样本的正方形切平面描述符。在Matlab平台下用随机森林算法对数据集进行训练和测试,并对实验结果进行可视化。
  3.2 实验结果
  利用已训练好的模型对测试数据集上三维人脸模型的所有顶点进行分类,计算顶点分类的准确率。准确率(Accuracy Rate)计算公式为:
  准确率=预测正确的顶点个数(m)人脸模型上所有顶点个数(N)   根据文献[10]提出的类似描述符参数选取以及参数优化策略,经过多次实验,研究发现正方形边长L和正方形划分的小正方形数目K2两个参数的选取对顶点分类准确率有着一定影响。实验中选取参数L∈{60,80,100}、参数K2∈{9,16,25,36}进行对比,具体对比结果如表1、表2所示(其中表1中K2为16,表2中L为80mm)。
  根据上面两个表格,可以明显得出,L=80mm,K2=25时顶点分类准确率最高。接下来对L=80mm,K2=25情况下的三维人脸模型区域进行标记,可视化结果如图4所示,上边是原始三维模型数据,下边是标记后的结果。(a)、(b)模型标记图是由BFM生成的三维人脸模型区域标记的结果,模型有53 490个顶点。为了验证本文方法的一般性和对分辨率具有不变性,(c)~(e)模型标记图是非BFM生成的其它三维人脸模型的标记结果,模型约有5 000个顶点。以上所有图都是对三维人脸模型所有顶点进行标记的结果。
  文献[6]~[8]中提到的基于深度图的特征提取方法(见图1),同样利用随机森林算法进行了实验,并与本文的正方形特征描述符的实验结果进行了比较,如表3所示。将深度图投影到96*96大小,深度图patch所取边长�c深度图大小的比例和正方形所取边长与模型大小的比例相等。
  由表3可得,对三维人脸模型顶点级分类和区域标记问题,本文提出的特征描述符的标记结果优于深度图patch特征选取方法。此外,由于深度图的一些局限性,直接对三维模型处理要比对深度图处理更有优势。
  3.3 结果讨论与分析
  图4中5个模型顶点数目、三角形面数目和头部姿势都不一样,验证了本文所提方法对于姿势、模型尺寸和模型分辨率具有较好的鲁棒性。并且其对不同的眉毛、眼睛、脸颊区域也能进行很好的区分,将左右眉毛、左右眼睛和左右脸颊用同一颜色、不同符号进行显示。本文提出的描述符和直接对三维模型处理的方法,与在深度图上选取特征方法相比具有一定优势。由于手动分割人脸区域时,很难避免分割粗糙,区域交界处有的部分顶点没有包含进去,因此在区域交界处顶点的分类误差会相对略大,特别是嘴唇之间的部分。另外,三维人脸模型中额头和下巴的顶点和特征相对较少,所以相较于其它区域,这两个区域的顶点分类误差也会略大。
  4 结语
  本文提出一种基于正方形切平面描述符的三维人脸区域标记方法。将这种几何特征描述符作为选取样本的特征,通过随机森林算法,对三维人脸模型进行区域分类和标记。该方法可有效识别出三维人脸模型的眉毛、眼睛、鼻子、嘴巴和脸颊等区域,这对三维人脸特征点的定位及其它三维人脸方面的研究都具有重要意义。本文提出的方法对三维人脸模型头部姿态、模型尺寸、模型分辨率具有较好的鲁棒性。和基于深度图的方法相比,本文提出的方法具有更好的泛化能力,是一种行之有效的特征提取方法。
  然而,手动分割人脸区域的做法在一定程度上略显粗糙,特征选取速度亦仍需优化。同时,本文仅对三维模型上所有顶点所属区域进行标记,没有将标记后的结果结合三维分割算法进行区域分割优化。如何对相关算法加以改进,将是下一步需要解决的问题。
  参考文献:
  [1]SUN Y, WANG X, TANG X. Deep convolutional network cascade for facial point detection[J]. Computer Vision & Pattern Recognition,2013,9(4):3476-3483.
  [2]CAO C, WENG Y, LIN S, et al. 3D shape regression for real-time facial animation[J]. Acm Transactions on Graphics, 2013, 32(4):96-96.
  [3]CAO C, HOU Q, ZHOU K. Displaced dynamic expression regression for real-time facial tracking and animation[J]. Acm Transactions on Graphics, 2014, 33(4):1-10.
  [4]SEEMAN E, NICKEL K, STIEFELHAGEN R. Head pose estimation using stereo vision for human-robot interaction[C].ICAFGR, 2004 Sixth IEEE International Conference on Automatic Face and Gesture Recognition. IEEE, 2004: 626-631.
  [5]BREITENSTEIN M D, KUETTEL D, WEISE T, et al. Real-time face pose estimation from single range images[C]. Proc.IEEE Conf.Comput.Vis.Pattern Recognit, 2008:1-8.
  [6]FANELLI G, GALL J, GOOL L V. Real time head pose estimation with random regression forests[C]. IEEE Conference on Computer Vision & Pattern Recognition, 2011:617-624.
  [7]FANELLI G, WEISE T, GALL J, et al. Real time head pose estimation from consumer depth cameras[C].Pattern Recognition Dagm Symposium, Frankfurt/main, Germany, 2011:101-110.   [8]FANELLI G, DANTONE M, GALL J, et al. Random forests for real time 3D face analysis[J]. International Journal of Computer Vision, 2013, 101(3):437-458.
  [9]PAPAZOV C, MARKS T K, JONES M. Real-time 3D head pose and facial landmark estimation from depth images using triangular surface patch features[C].IEEE Conference on Computer Vision and Pattern Recognition. 2015:4722-4730.
  [10]SHAPIRA L, SHALOM S, SHAMIR A, et al. Contextual part analogies in 3D objects[J]. International Journal of Computer Vision, 2010, 89(2):309-326.
  [11]SIDI O, KAICK O V, KLEIMAN Y, et al. Unsupervised co-segmentation of a set of shapes via descriptor-space spectral clustering[C].SIGGRAPH Asia Conference. 2011.
  [12]KALOGERAKIS E, HERTZMANN A, SINGH K. Learning 3D mesh segmentation and labeling[J]. Acm Transactions on Graphics, 2010, 29(4):157-166.
  [13]XIE Z, XU K, LIU L, et al. 3D shape segmentation and labeling via extreme learning machine[J]. Computer Graphics Forum, 2014, 33(5):85-95.
  [14]GUO K, ZOU D, CHEN X. 3D mesh labeling via deep convolutional neural networks[J]. Acm Transactions on Graphics, 2015, 35(1):1-12.
  [15]JOHNSON A E, HEBERT M. Using spin images for efficient object recognition in cluttered 3d scenes[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1999, 21(5):433-449.
  [16]FROME A, HUBER D, KOLLURI R, et al. Recognizing objects in range data using regional point descriptors[J]. Lecture Notes in Computer Science, 2004.
  [17]TOMBARI F, SALTI S, STEFANO L D. Unique signatures of histograms for local surface description[C].European Conference on Computer Vision Conference on Computer Vision. Springer-Verlag, 2010:356-369.
  [18]ZAHARESCU A, BOYER E, VARANASI K, et al. Surface feature detection and description with applications to mesh matching[C]. IEEE Conference on Computer Vision & Pattern Recognition, 2009:373-380.
  [19]ZAHARESCU A, BOYER E, HORAUD R. Keypoints and local descriptors of scalar functions on 2D manifolds[J]. International Journal of Computer Vision, 2012, 100(1):78-98.
  [20]PAYSAN P, KNOTHE R, AMBERG B, et al. A 3D face model for pose and illumination invariant face recognition[C].IEEE International Conference on Advanced Video & Signal Based Surveillance. IEEE Computer Society, 2009:296-301.
  [21]BREIMAN, LEO. Classification and regression trees[M].Classification and regression trees /. Chapman & Hall/CRC, 1984:17-23.
  [22]MITCHELL. Machine learning[M]. McGraw-Hill, 2003.
  (�任编辑:黄 健)
  英文摘要Abstract:Aiming at the shortcomings of current research on semantic marking and segmentation of 3D face models, a 3D region labeling algorithm based on square tangent plane descriptors was proposed. This new descriptor was obtained by encoding the geometric information in the square area on the surface of 3D face mesh model. Then it was learnt by the random forest algorithm to realize the classification of the vertex on 3D face model, so as to identify and mark the eyebrows, eyes, nose, mouth and other regions. Simulation result can achieve a classification accuracy of 94.46%. The proposed descriptor has rotation, head pose, 3D model resolution invariance and is robust to noise. Experimental results show that the proposed method can effectively mark the 3D face model region.
  英文关键词Key Words: Semantic Marking; 3D Face; Random Forest; Square Tangent Plane Descriptor; Mesh Labeling


【相关论文推荐】
  • 圆的正方形
  • 正方形的开方问题
  • 正方形中的侧同构
  • 孩子眼里的正方形
  • 正方形中的计算问题
  • “正方形”的狂欢之夜
  • 蒸发的小正方形
  • 正方形的“自我复制”
  • 完美正方形