一种基于正面图像的遗容三维重建方法与流程

文档序号:13393259阅读:268来源:国知局

本发明基于正面图像的人脸重建技术,采用了基于3d人脸扫描数据库的统计模型和参数优化相结合的方法,全自动生成可直接用于3d打印的三维人脸模型,主要应用于遗体面部修复。



背景技术:

遗体整容技术:遗体整容、告别是殡葬过程中体现以人为本的基本观念和表现人类精神文明发展的重要环节,主要由遗体整容师完成。由于人脸的唯一性、独特性,传统遗容修复为手工塑造,要求以雕塑为基础进行上色、化妆,材料主要为橡皮泥、石膏、油泥等,整容效果因防腐整容师的个人技术能力而异。对于头面部变形较为严重或是缺损的遗体,仅能够凭借照片进行重新塑造,宛如雕塑,需要极高的审美和手工能力,即使是有着丰富的经验的防腐整容师,也不一定能够还原逝者原貌,修复失真、耗时极长、无法修复等等都是目前难以克服的问题。此外,防腐整容是殡仪职工与遗体接触最密切、卫生防疫压力最大、技术要求最高的环节。因此,三维人脸模型的全自动生成技术,可大大提高遗体整容师的工作条件和工作效率,降低人工操作难度和安全卫生风险。

基于正面图像的人脸重建技术:基于单张图片的三维重建技术在生活中有着广泛的应用前景,也有很高的技术难度。基于正面图像的三维人脸重建技术主要分为基于机器学习的方法和基于统计模型的方法。blanz和vetter的研究小组提出了基于三维可变形模型的重建方法,首先通过统计学习得到一个三维可变形人脸模型,包括三维形状模型(用约70000个顶点表示)和对应的二维纹理模型,然后利用牛顿迭代法使该可变形模型对准特定的人脸图像,进而得到该人脸的三维模型,这种方法能够得到较为精确的三维形状和纹理信息,并已将其成功应用于三维人脸识别。tran和hassner等人利用深度神经网络构建出了一个可以从单张图片生成三维人脸的系统,这种方法比blanz的方法更加快速和高效,可以很方便的应用于对实时性要求较高的系统中,比如视频会议等。



技术实现要素:

本方法的目的是克服现有技术缺陷的一种基于正面图像的遗容三维重建方法。

本发明的目的是这样实现的:针对头面部有严重损伤的遗体,可以将一张面部正面照片全自动生成可直接用于3d打印的三维人脸模型。特点是:拥有自主知识产权,改进了一种基于3d人脸扫描数据库的人脸统计模型生成方法、提出了一种人脸特征自动提取方法;可对生成模型进行后期修改调整;对于不同需求有面具、阳模、阴模等多种导出形式;且系统使用简单方便,功能全面灵活。

具体技术路线如下:

(1)通过建立人脸、人头的2d和3d数据库,得到人脸、人头的参数模型和统计模型;

(2)基于人脸的参数模型来识别人脸图像特征点;

(3)基于人脸统计模型来完成基于图像的人脸重建;

(4)基于人头统计模型来完成人头的修复,并利用人头左右对称和人头先验知识,辅之以镜像、局部修饰等修复操作。

附图说明

图1为基于正面图像的遗容三维重建方法整体流程框架图

具体实施方式

1总体设计

本方法基于正面图像的人脸重建技术,采用的基于3d人脸扫描数据库的统计模型和参数优化相结合的方法,图1给出了基于单张图像的3d人脸重建框架,其整体设计如下:

(1)基于3d人脸扫描数据库,生成一组特征对齐的、并且拓扑结构一致的3d人脸网格模型,采用形状统计分析方法,建立3d人脸的统计模型(基于pca的概率模型来表示人头部形状的统计变化);

(2)对给定的一张人脸正面照片,自动提取一组人脸特征点,用此组特征点对统计模型的形状参数和投影矩阵参数进行优化,得到给定照片的最优3d人脸模型。

2人脸数据库

本项目采用bjut-3d人脸数据库来建立3d人脸的统计模型。bjut-3d大型中国人脸数据库中目前包含了500张中国人三维人脸,男女人脸各占一半,其数据是用cyberware公司3030rgb/ps激光扫描仪获得。扫描时人脸保持中性表情,且不戴眼镜和饰物。扫描光源使用的是扫描仪自带光源,该光源可以模拟环境光的光照环境。

3数据预处理

由于扫描仪在扫描人脸时由于各种原因不能得到完美的三维人脸数据,因此在做成三维数据库之前对获得的数据进行预处理是完全有必要的。其步骤主要包括数据平滑,移除毛刺,填补空洞(缺失的数据)以及校正坐标(都统一到人体头部解剖学坐标系下)和三维裁剪等,最后得到坐标对齐的规范化的3d人脸模型。

4特征对齐的同构网格生成

形状的统计分析要求3d数据库中的所有人脸3d数据库中的所有人脸都能用一个形状向量和一个纹理向量来表示。这需要对3d人脸进行特征标注(识别),进行特征对齐并生成同质的人脸三角网格。特征对齐的同构网格模型是指一组网格拓扑结构一致、特征点对齐的三角网格模型。

每个人脸生成特征对齐的同质三角网格后,每个人脸都能用一个形状向量和一个纹理向量来表示分别如下:

si=(x1,y1,z1,x2,...,xn,yn,zn)t

ti=(r1,g1,b1,r2,...,rn,gn,bn)t

其中1≤i≤m,m为人脸数,n为每个三维人脸的点数。形状向量si中的元素人脸上各点的坐标值x,y,z,而纹理向量ti为各点的rgb颜色值。

5人脸统计模型建立

在所有m训练样本(人脸)都确立生成了特征对齐的同构网格模型后,就可以建立人脸统计模型。根据m各人脸模型的形状向量和纹理向量,利用主成分分析法(principlecomponentanalysis,pca)可提取出形状特征向量和纹理特征向量。

bjut-3d人脸数据库使用了200个人脸(100个男性和100个女性)作为样本(即m=200)。使用pca分析得到的统计模型包括了平均形状向量和平均纹理向量,以及它们对应的特征向量。

pca分别应用到由m个样本人脸组成的一系列的形状向量si和纹理向量ti中去,i=1,...,m。对于形状,定义一个数据矩阵l=(l1,l2,...,lm):

其中s为形状向量的平均值,c为其协方差矩阵:

根据协方差矩阵c一系列的形状特征向量s1,s2,...,同理可以得到一系列的纹理特征向量t1,t2,...,特征向量组成一组正交基,即:

改变形状和纹理系数αi和βi,就能得到不同的三维人脸,这些人脸有可能是原数据库中不存在的。6人脸特征参数模型建立和人脸特征检测

本技术使用sdm算法实现人脸特征点检测,该过程分为训练和检测两步:

(1)sdm模型训练

sdm需要从训练集中得到rk和bk。训练时,人脸图片集为{ii},每张图片手工标定的特征点为每张图片的初始特征点为x0,这样人脸特征点定位就变成了一个线性回归问题,回归问题的目标是从x0到迭代的步长,这个回归问题的输入特征就是在x0处的sift特征φ0。这样,套用线性回归问题就可以得到目标函数:

这样就从训练集中得到了r0和b0。这里是得到了第一次迭代的系数r0和b0,相同的方法可以得到第k次迭代的系数rk和bk

这样,就可以从训练集中得到每次迭代的参数rk和bk。

(2)sdm人脸检测

表示图片中的p个特征点坐标,h是每个特征点处的非线性特征提取函数,本文使用的特征是sift特征,也就是每个特征点要提取128维的sift特征,所以h(d〔x〕)∈128*1。由人工标定的最优解为处提取的sift特征可以记为由此,人脸特征点检测可以看做,求使得下列函数最小的δx:

这里需要做的是,得到一系列的方向和步长δx,将特征点从初值x0收敛到最优解这里通过使用sdm算法不断迭代公式xk=xk-1+rk-1φk-1+bk-1并最终得到最优解,公式中的rk和bk就是上一步训练得到的。

7生成人脸

经过上面的特征点标定后,便可以开始通过这组特征点的约束来调整人脸统计模型参数化向量,并生成真实的三维人脸模型。设上面得到的三维统计模型为smm,r个特征点集为{pj},为了得到尽量符合图片中人脸的三维模型,只需要让统计模型中的对应点经过参数为的相机投影变换后落在二维平面上的点尽量符合特征点集{pj}即可。下面将讨论如何调整优化统计模型的参数化向量以达到该目的。

为了得到三维统计模型顶点在二维平面上的位置,需要相机参数和模型参数化向量这两个参数的初始值由操作员估计并手动输入,于是二维图像可表示为

为了衡量经过向量参数化后的统计模型与实际图片对应真实人脸的差距,定义一个衡量该差距的偏差函数e=||iinput-imod||2,该公式表示以输入图像特征点集和渲染图像特征点集的欧式距离平方和来衡量生成的人脸模型与真实人脸模型的差距,偏差越小,效果越好。为了求取偏差函数极小值采用梯度下降法调整参数化向量这里假设相机参数是被正确估计了的,所以保持不变。

以上优化过程中的λ是逼近因子,它反映了优化过程的逼近速率,值越大,速率越大,一般由经验得出。但是如果该值太小会导致优化过程漫长,还容易陷入局部极值。如果该值选择较大则无法得到更精确的模型,还可能导致偏差函数不收敛。为了避免以上情况出现,需要动态调整逼近因子。这里使用以下策略:

(1)初始时刻由经验得出一个较大的逼近因子λinit;

(2)如果在迭代的过程中梯度方向发生变化就缩小λ‘=kλ,其中k是每次缩小的比例,一般取0.7~0.8即可。

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