技术领域
[0001] 本
发明属于
图像识别、
三维建模领域,具体为一种基于
图像序列的人脸三维重建的设计和实现方法。
背景技术
[0002] 在整体上看,不同的人脸有很高的相似性,人脸的五官区域分布大致相同,大小和形状也并没有十分大的差异。然而在局部细节上,人脸在不同性别和宗族的个体之间又有很大的区别。从
计算机视觉领域来看,人脸是标识不同个体身份的主要方法,而三维形状因其特性能更好的描述特征信息,可操作性更强,更是研究的热点。
[0003] 将物体拍摄为二维图像时,其三维形状和表面反射性质并不断随着拍摄视
角、光照条件和背景内其他物体遮挡方式的改变而变化。这个特性可以简化计算机对图像的分析过程,因为其可以预测在不同拍摄条件下物体形成的图像效果。因此,计算机视觉领域一直致
力于直接从图像中提取感兴趣的三维信息,特别是从单张图像中获取一幅人脸照片往往由比较多的
像素构成,如果以每个像素作为1维特征,将得到一个维数非常高的
特征向量, 计算将十分困难;而且这些像素之间通常具有相关性。这样,利用PCA技术在降低维数的同时在一定程度上去除原始特征各维之间的相关性自然成为了一个比较理想的方案。PCA算法提供了一种压缩数据的方式,也可以将PCA视为学习数据表示的
无监督学习算法。PCA学习一种比原始输入维数更低的表示。它也学习了一种元素之间彼此没有线性相关的表示。PCA可以通过协方差矩阵得到。主成分也可以通过奇异值分解(SVD)得到。在多元统计分析中,PCA是一种分析、简化数据集的技术。主成分分析经常用于减少数据集的维数,同时保持数据集中的对方差贡献最大的特征。这是通过保留低阶主成分,忽略高阶主成分做到的。这样低阶成分往往能够保留住数据的最重要方面。但是,这也不是一定的,要视具体应用而定。由于主成分分析依赖所给数据,所以数据的准确性对分析结果影响很大。
[0004] 由于本设计期望实现的是虚拟发型变换等系统中的人脸三维重建,结合多方面因素,本设计提出了一种改进的PCA算法用于人脸的三维重建,在基于单张图像重建三维人脸的
基础上采用基于图像序列的方法重建三维人脸。系统在完成图像获取、
人脸检测、人脸特征点的提取与人脸一般模型的建立后,需要进行模型调整(整体和局部调整)及其
皮肤纹理映射,最终实现三维人脸模型的重建。下面详细阐述本设计及相关算法的模型调整以及纹理映射过程。
发明内容
[0005] 提出了一种改进的PCA算法,以序列图像相邻
帧人脸特征点PCA系数的补偿量按其权系数
迭代优化模型形变的PCA系数以重建人脸的三维形状与
颜色信息。利用PCA算法提取人脸特征点的PCA系数,并将序列图像后一帧对前一帧的PCA补偿量按其权系数不断融入PCA系数中,迭代更新二维人脸的PCA系数,结合摄像机的空间投影变换关系获得三维模型的形变系数以重建三维模型的形状和颜色。本设计在基于单张图像重建三维人脸算法的基础上,采用基于图像序列的人脸三维重建法重建三维人脸。基于图像序列的人脸三维重建法根据采用先验模型与否分为基于模型形变的三维重建和非基于模型形变的三维重建法。本设计采用第一种方法,以改进的PCA算法重建三维人脸的形状和颜色。在重建三维人脸的过程中,首先将二维人脸图像与形变模型面部对准,利用PCA算法提取二维人脸特征点的PCA特征向量,不断将序列图像中后一帧对前一帧人脸特征点的PCA特征补偿量按其所占权重融入到二维人脸的PCA系数中,经过不断地迭代优化并结合空间投影变换得到调整三维人脸模型的PCA形变系数以恢复人脸的三维形状与颜色。以下是对改进PCA算法的详细说明:
1、整体调整
本设计基于图像序列进行人脸三维重建,获取的人脸
姿态是在不断变化的,引入人脸图像的边缘及轮廓特征点。首先通过检测到的二维人脸大小调整形变模型人脸大小,判断人脸的边缘及可见像素,再将人脸轮廓特征点与形变模型的轮廓特征点对齐,统一人脸中线上点的X坐标,建立
坐标系,实现模型的整体调整。
[0006] 2、局部调整本设计是在基于上述单张图像重建三维人脸的算法基础之上采用基于图像序列并利用改进的PCA算法重建三维人脸形状和颜色。从人脸序列图像的高维数据中获得面部形状和颜色的PCA系数,利用序列图像的相邻帧,将后一帧对前一帧人脸特征点的PCA特征补偿量按其所占权重不断融入到二维人脸的PCA系数中,通过迭代不断优化PCA系数并依据二维图像的特征点与三维人脸模型的特征点的映射关系不断更新模型的形变系数以控制一般人脸模型的形变,实现人脸的三维重建。由于三维人脸的颜色重建与形状重建过程类似,这里仅对三维人脸的形状建立过程做详细说明。
[0007] (1)图像序列的PCA系数更新,依据Adaboost算法对视频的当前帧检测到人脸图像后,利用ASM算法获得共计68个特征点,以本设计提出的改进的PCA算法对人脸特征点提取特征向量,通过不断获得的图像序列计算出帧间PCA系数的补偿量,按其权系数不断融入二维人脸的PCA系数中,根据二维图像的特征点与三维人脸模型的特征点的映射关系不断更新模型的形变系数以控制一般三维人脸模型的形变。
[0008] (2)摄像机矩阵的获取,首先将摄像机拍摄的第一张图像的中心与世界坐标系的中心重合。由于不存在平移和旋转量的计算,其投影矩阵 可以直接表示出来。再根据第二张图像含有平移和旋转量的投影矩阵 ,利用匹配点得出不含缩放因子的特征点三维坐标,得到基础矩阵。
[0009] (3)三维PCA形变系数的获取,依据二维人脸特征点与三维稀疏人脸特征点X、Y分量的对应关系,获得三维稀疏人脸二维分量的形变系数。在确定人脸三维重建的形变系数时,对重构图像 的二维投影与输入的二维人脸图像 进行比较,计算两者之间的误差并迭代寻优找到一组最优的形变系数。
附图说明
[0011] 图2 空间坐标与面部模型。
[0013] 图4 投影矩阵获取过程图。
[0014] 图5 改进PCA算法重建人脸形状流程图。
具体实施方式
[0015] 一种基于人脸三维重建的改进PCA设计与实现方法,其具体实现步骤如下:1、将形变模型与二维人脸进行面部对准,实现二维人脸与
三维形变模型像素点与像素点的对应。
[0016] 2、通过检测到的二维人脸大小调整形变模型人脸大小,判断人脸的边缘及可见像素。
[0017] 3、再将人脸轮廓特征点与形变模型的轮廓特征点对齐,统一人脸中线上点的X坐标,建立坐标系,实现模型的整体调整。
[0018] 4、从人脸序列图像的高维数据中获得面部形状和颜色的PCA系数,得到序列图像的相邻帧。
[0019] 5、通过不断获得的图像序列计算出帧间PCA系数的补偿量,按其权系数不断融入二维人脸的PCA系数中。
[0020] 6、依据二维人脸特征点与三维稀疏人脸特征点X、Y分量的对应关系,获得三维稀疏人脸二维分量的形变系数。
[0021] 7、通过迭代不断优化PCA系数并依据二维图像的特征点与三维人脸模型的特征点的映射关系不断更新模型的形变系数以控制一般人脸模型的形变。
[0022] 8、在确定人脸三维重建的形变系数时,对重构图像 的二维投影与输入的二维人脸图像 进行比较,计算两者之间的误差并迭代寻优找到一组最优的形变系数。
[0023] 9、通过二维人脸特征点形变系数的级联迭代不断更新当前模型调整系数,并利用已求出的模型调整系数以及空间投影变换关系,利用反向变换法获得当前三维模型调整的形变系数 。
[0024] 10、最后,采用三维模型的形变系数替代原有PCA系数。即利用改进的PCA算法,以不断获取的图像序列获得后一帧对前一帧的PCA特征补偿量。并通过空间变换关系以及二维人脸图像特征点与三维人脸图像特征点的对应关系传递三维人脸模型的PCA形状调整系数,完成对三维可
变形模型的形变,获得相应三维模型的空间坐标点并将其
三维网格化,实现人脸三维重建。