基于级联卷积神经网络的三维人脸特征点定位方法与流程

文档序号:11677999阅读:240来源:国知局
基于级联卷积神经网络的三维人脸特征点定位方法与流程

本发明涉及三维人脸识别技术领域的关键算法研究,具体涉及一种基于级联卷积神经网络的三维人脸特征点定位方法。



背景技术:

三维人脸识别技术相对于二维人脸识别而言拥有丰富的深度信息可以更好的还原人脸的原始几何信息,因而是一种有着广阔发展前景的新兴技术。它广泛地设计到计算机视觉、图像处理、机器学习、信号处理和模式识别等多方面的学科知识,目前三维人脸识别技术已经成为国际人脸识别领域的研究热点。但是由于各方面因素的制约,比如计算机的计算水平限制,三维采集设备的不成熟等,相关的研究没有得到很大的突破。

三维人脸定位是关系到三维人脸准确识别的关键步骤,目前主要的算法有基于相对位置的算法,基于侧影线的算法,基于曲率的算法,基于特征描述的算法,基于二维图像辅助的算法等。基于相对位置的算法适用范围狭窄,对噪声较敏感;基于侧影线的算法无法适用于眼睛、嘴角等区域多包涵的人脸特征点;基于曲率的算法对三维人脸数据的质量要求比较高,除了内眼点、鼻尖点外,在其他人脸特征点上的定位效果较差;基于特征描述的算法缺乏普遍适用性;基于二维图像辅助的算法无法用于仅包含三维信息的人脸数据上。总之,目前现有的三维人脸定位研究没有很好的解决三维人脸的普适应和高效性的问题。



技术实现要素:

本发明克服了现有技术的不足,提供一种基于级联卷积神经网络的三维人脸定位方法,实现在复杂场景和条件下,达到准确高效的定位效果。

为解决上述的技术问题,本发明采用以下技术方案:

一种基于级联卷积神经网络的三维人脸特征点定位方法,所述的方法包括以下步骤:

步骤一、对训练数据的三维人脸特征点进行预处理,获取spider描述子;

步骤二、构造级联卷积神经网络函数,分别对人脸轮廓点和人脸内部关键点,利用全局约束迭代求解的过程分别计算人脸轮廓特征点和人脸内部特征点的三维坐标。

更进一步的技术方案是所述步骤一包括:

步骤a,对用于训练的三维人脸定位的特征点数据进行坐标系转换,根据式

(1)将人脸特征点由空间直角坐标系下(x,y,z)的坐标转换到球坐标系下的坐标

步骤b,球坐标系下的子空间划分以及子空间的直方图统计。

更进一步的技术方案是所述步骤b包括:

步骤ⅰ,三维人脸曲面由一系列的顶点与三角面片所构成,三角面片的集合表示为t,ti表示其中第i个三角面片;对于曲面上的一个顶点p,给定局部曲面影响半径r,则定点p周围的局部曲面由三角面片集合ti={ti|||ci-p||<r,ci为ti的重心}表示;将影响半径r平均分为m份,将tr分为m个子集m=1,2,...,m,且其中ci为ti的重心,m=1,2,...,m;

步骤ⅱ,以p为原点中心,将极坐标系等分为多个扇形区域的扇形划分;即以p为原点中心,在xy平面上建立极坐标系,其中x轴为极坐标系θ轴,将θ轴等分为n份,将t分为n个子集{tn},n=1,2,...,n,且对于三角面片ti,其重心ci在xy平面上的投影ci'表示为极坐标系上的坐标值第n子集定义为n=1,2,...,n;

步骤ⅲ,将步骤ⅰ和步骤ⅱ曲面划分的笛卡尔积,将以p点为中心的局部曲面划分为m×n个子曲面m=1,2,...,m,n=1,2,...,n,其中

步骤ⅳ,对于第m×n个子曲面表示其中的一个三角面片,使用表示的法向向量;以法向向量空间中坐标(0,0,0)为原点建立球坐标系,其中三维直角坐标系中坐标z轴是球坐标系轴,x轴是θ轴,法向由求坐标系的坐标值来表示;

在球坐标系中,半个球面的轴的取值范围是θ轴的取值范围是[0,2π);分别将轴k等分,θ轴l等分,将法向向量空间划分为k×l个单元;法向向量位于第k×l个但愿的面片集合表示为其中和θi分别是三角面片的法向在求坐标系下的坐标值;将每一个单元均视为一个bin,对于第k×l个单元,统计集合sk×l中所有三角面片的面积之和为ak×l,并将其视为子曲面的统计直方图hm×n中第k×l个bin的值;

步骤ⅴ,计算顶点p周围所有m×n个子曲面的统计直方图,将它们逐一连接构成一个高维直方图h'p,同时计算这m×n个子曲面的面积之和ap,使用ap对h'p归一化后,得到的直方图hp就是顶点p的spider描述子。

更进一步的技术方案是所述步骤二包括:卷积神经网络学习卡方距离χ2作为相似度检验函数的度量,衡量带检测点的spider描述子与指定人脸特征点spider描述子模板的相似程度其中xi是特征点的spider的描述子模版中第i个bin中的数值,y是待测点的spider描述子中第i个bin中的数值。

更进一步的技术方案是所述步骤二包括:对于各个特征点,求解卡方距离最小的m个点,并使用k近邻算法找到该m个点的聚类中心,即是目标模型上的三维人脸的特征点。

更进一步的技术方案是所述步骤二包括:

步骤c,使用spider描述子定位三维人脸上的人脸轮廓特征点和人脸内部特征点;

步骤d,根据人脸特征点的数量和要求,设定人脸轮廓点的卷积神经网络参数,训练求解人脸轮廓特征点坐标;

步骤e,根据人脸特征点的数量和要求,设定人脸内部关键点的卷积神经网络参数,训练求解人脸内部关键点坐标;

步骤f,将球坐标系下的坐标转换为空间直角坐标系下的坐标,即获得空间直角坐标系下的人脸关键点坐标,转换过程如式(6)

更进一步的技术方案是所述步骤d包括:

步骤ⅰ,使人脸轮廓特征点坐标向量化后,表示为使用主

元分析获得特征值集合并使用式(2)求解dm;

步骤ⅱ,定义一个适合的dmax,如果dm≤dmax则停止迭代;{p1,p2,...,pf}就是人脸轮廓特征点定位的结果;否则使用式(3)逐个更新中的数值获得约束到一个适合的范围内,其中qk是中第k个元素,q'k是中第k个元素,即

使用重构定义一个适合的阈值δ,依照式(4)

逐个更新人脸轮廓特征点位置{p1,p2,...,pf};

步骤ⅲ,定义初始搜索半径r0以及半径缩小率η,1>η>0,第j次迭代的搜索半径表示为rj,其中rj=η×rj-1;在经过步骤ⅱ更新过的每个特征点{p1,p2,...,pf}周围,以rj为半径的邻域内搜索各自相应的特征点。

更进一步的技术方案是所述步骤d包括:

循环迭代步骤ⅰ、步骤ⅱ、步骤ⅲ直至rj小于某个阈值ζ时停止迭代,此时的{p1,p2,...,pf}就是人脸轮廓特征点的定位结果。

与现有技术相比,本发明实施例的有益效果之一是:本发明可以在复杂场景和条件下,使三维人脸定位可以达到令人满意的结果。

附图说明

图1为本发明一个实施例的方法流程图。

图2为本发明一个实施例中空间坐标系和球坐标系之间的对应关系图。

具体实施方式

本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

下面结合附图及实施例对本发明的具体实施方式进行详细描述。

如图1所示,根据本发明的一个实施例,本实施例公开一种基于级联卷积神经网络的三维人脸特征点定位的方法。本实施例首先设计了一种基于曲面划分、直方图统计的三维局部曲面描述子——球划分直方图描述子,并使用该描述子逐点提取三维曲面顶点的局部曲面信息,其次计算其相似度,以定位三维人脸曲面上的主要特征点;采用不同的卷积神经网络模型分别对人脸的内部关键点和外部轮廓点的关键点坐标分别进行计算,然后通过级联的方式连接上述网络,然后在通过空间直角坐标系和球坐标系之间的转换关系,获得所需的三维人脸特征点的空间直角坐标。通过级联卷积神经网络可以更准确高效的获取三维人脸的特征点。

具体的,本实施例将人脸特征点空间直角坐标下的坐标通过坐标系之间的转换关系,转换到球坐标系下的球坐标,运用笛卡儿积的方法进行扇形曲面划分,进行直方图统计获得三维局部曲面描述子,获取球划分直方图描述子。分别对人脸轮廓特征点和人脸内部关键点分别构建卷积神经网络,一方面可以获得更精确的特征点估计,另一方面由于采用并行级联的方式,训练效率更高效。

该卷积神经网络学习卡方距离χ2作为相似度检验函数的度量,衡量带检测点的spider描述子与指定人脸特征点spider描述子模板的相似程度其中xi是特征点的spider的描述子模版中第i个bin中的数值,y是待测点的spider描述子中第i个bin中的数值。对于各个特征点,求解卡方距离最小的m个点,并使用k近邻算法找到该m个点的聚类中心,即是目标模型上的三维人脸的特征点p′1,p′2,...,p′f。

具体的,本实施例基于级联卷积神经网络的三维人脸特征点定位方法包括以下步骤:

步骤1.对训练数据的三维人脸特征点进行预处理,获取spider描述子。

步骤1.1对用于训练的三维人脸定位的特征点数据进行坐标系转换,根据式(1)将人脸特征点由空间直角坐标系下(x,y,z)的坐标转换到球坐标系下的坐标。空间坐标系和球坐标系之间的对应关系如图2所示。

步骤1.2球坐标系下的子空间划分以及子空间的直方图统计

步骤1.2.1三维人脸曲面由一系列的顶点与三角面片所构成,三角面片的集合可以表示为t,ti表示其中第i个三角面片。对于曲面上的一个顶点p,给定局部曲面影响半径r,则定点p周围的局部曲面可由三角面片集合ti={ti|||ci-p||<r,ci为ti的重心}表示。将影响半径r平均分为m份,由此可将tr分为m个子集m=1,2,...,m且其中ci为ti的重心,m=1,2,...,m。

步骤1.2.2以p为原点中心,将极坐标系等分为多个扇形区域的扇形划分。即以p为原点中心,在xy平面上建立极坐标系,其中x轴为极坐标系θ轴,将θ轴等分为n份,据此可将t分为n个子集{tn},n=1,2,...,n,且对于三角面片ti,其重心ci在xy平面上的投影ci'可表示为极坐标系上的坐标值第n子集定义为

步骤1.2.3将步骤1.2.1和步骤1.2.2曲面划分的笛卡尔积可将以p点为中心的局部曲面划分为m×n个子曲面其中

步骤1.2.4对于第m×n个子曲面表示其中的一个三角面片,使用表示的法向向量。以法向向量空间中坐标(0,0,0)为原点建立球坐标系,其中三维直角坐标系中坐标z轴是球坐标系轴,x轴是θ轴,法向可由求坐标系的坐标值来表示;

在球坐标系中,半个球面的轴的取值范围是θ轴的取值范围是[0,2π);分别将轴k等分,θ轴l等分,可将法向向量空间划分为k×l个单元。法向向量恰好位于第k×l个但愿的面片集合表示为其中和θi分别是三角面片的法向在求坐标系下的坐标值。将每一个单元均视为一个bin,对于第k×l个单元,统计集合sk×l中所有三角面片的面积之和为ak×l,并将其视为子曲面的统计直方图hm×n中第k×l个bin的值。

步骤1.2.5归一化。计算顶点p周围所有m×n个子曲面的统计直方图,将他们逐一连接构成一个高维直方图h'p,同时计算这m×n个子曲面的面积之和ap,使用ap对h'p归一化后,得到的直方图hp就是顶点p的spider描述子。

步骤2.构造级联卷积神经网络函数,分别对人脸轮廓点和人脸内部关键点,利用全局约束迭代求解的过程分别计算人脸轮廓特征点和人脸内部特征点的三维坐标。

该卷积神经网络学习卡方距离χ2作为相似度检验函数的度量,衡量带检测点的spider描述子与指定人脸特征点spider描述子模板的相似程度其中xi是特征点的spider的描述子模版中第i个bin中的数值,y是待测点的spider描述子中第i个bin中的数值。对于各个特征点,求解卡方距离最小的m个点,并使用k近邻算法找到该m个点的聚类中心,即是目标模型上的三维人脸的特征点p′1,p'2,...,p'f。

步骤2.1使用spider描述子定位三维人脸上的人脸轮廓特征点和人脸内部特征点。

步骤2.2根据人脸特征点的数量和要求,设定人脸轮廓点的卷积神经网络参数,训练求解人脸轮廓特征点坐标。

步骤2.2.1使人脸轮廓特征点坐标向量化后,可表示为使用主元分析可获得特征值集合并使用式(2)求解dm。

步骤2.2.2定义一个适合的dmax,如果dm≤dmax则停止迭代;{p1,p2,...,pf}就是人脸轮廓特征点定位的结果;否则使用式(3)逐个更新中的数值获得约束到一个适合的范围内,其中qk是中第k个元素,q'k是中第k个元素,即

使用重构定义一个适合的阈值δ,依照式(4)

逐个更新人脸轮廓特征点位置{p1,p2,...,pf}

步骤2.2.3定义初始搜索半径r0以及半径缩小率η,1>η>0,第j次迭代的搜索半径表示为rj,其中rj=η×rj-1。在经过步骤2.2.2更新过的每个特征点{p1,p2,...,pf}周围,以rj为半径的邻域内搜索各自相应的特征点。循环迭代步骤2.2.1、2.2.2、2.2.3直至rj小于某个阈值ζ时停止迭代,此时的{p1,p2,...,pf}就是人脸轮廓特征点的定位结果。

步骤2.3根据人脸特征点的数量和要求,设定人脸内部关键点的卷积神经网络参数,本发明给出的模型参数设定如表2所示,训练求解人脸内部关键点坐标,求解步骤和2.2.1~2.2.3相似,只需根据特征点的数量调节输入向量的维数即可。

步骤2.4将球坐标系下的坐标转换为空间直角坐标系下的坐标,即获得空间直角坐标系下的人脸关键点坐标,转换过程如式(6)所示。

本实施例的方法可以在复杂场景和条件下,可以达到令人满意的结果。

在本说明书中所谈到的“一个实施例”、“另一个实施例”、“实施例”等,指的是结合该实施例描述的具体特征、结构或者特点包括在本申请概括性描述的至少一个实施例中。在说明书中多个地方出现同种表述不是一定指的是同一个实施例。进一步来说,结合任一个实施例描述一个具体特征、结构或者特点时,所要主张的是结合其他实施例来实现这种特征、结构或者特点也落在本发明的范围内。

尽管这里参照发明的多个解释性实施例对本发明进行了描述,但是,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。更具体地说,在本申请公开权利要求的范围内,可以对主题组合布局的组成部件和/或布局进行多种变型和改进。除了对组成部件和/或布局进行的变型和改进外,对于本领域技术人员来说,其他的用途也将是明显的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1