首页> 中国专利> 三维虚拟人头脸建模中的纹理映射方法

三维虚拟人头脸建模中的纹理映射方法

摘要

本发明提供的一种三维虚拟人头脸建模中的纹理映射方法,通过构建个性化人脸模型,将待映射人物真实人脸的正面视图以及侧面视图按照特征点位置进行裁剪,计算每个齐平区域的偏移量以及偏移角;将裁剪后的侧面视图按照所述偏移量以及偏移角进行错切变换,获得错切变换后的侧面视图;引入拉普拉斯金字塔算法对裁剪后的正面视图、错切变换后的侧面视图以及错切变换后的侧面视图的镜像图像进行融合,将融合图像映射入所述个性化人脸模型中,获得待映射人物的纹理映射人脸模型。本发明可以在保证数据采集成本低的条件下,有效减少纹理裂缝,使得映射出的纹理映射人脸模型更加逼真。

著录项

  • 公开/公告号CN113808272A

    专利类型发明专利

  • 公开/公告日2021-12-17

    原文格式PDF

  • 申请/专利权人 西北工业大学;

    申请/专利号CN202110984213.2

  • 申请日2021-08-25

  • 分类号G06T17/20(20060101);G06T3/00(20060101);G06T3/40(20060101);G06T5/50(20060101);

  • 代理机构61230 西安嘉思特知识产权代理事务所(普通合伙);

  • 代理人王萌

  • 地址 710072 陕西省西安市碑林区友谊西路127号

  • 入库时间 2023-06-19 13:45:04

说明书

技术领域

本发明属于图像处理和计算机图形学技术领域,具体涉及一种三维虚 拟人头脸建模中的纹理映射方法。

背景技术

纹理映射是三维虚拟人脸建模的重要阶段,逼真的三维虚拟人脸重建 是建立在良好的纹理映射基础上的,但是,在实践中存在以下问题:

(1)利用三维扫描数据对人脸进行几何重建与纹理特征恢复虽然能够 得到理想的人脸效果,模型精度高,但扫描设备造价昂贵,操作复杂,难 以推广;

(2)利用人物的正侧面照片生成头部全景纹理图时,其纹理来源于不 同的照片,因此会因为纹理来源图片的颜色差异而产生缝隙,因此必须对 纹理来源不同的区域进行颜色融合,才能使得纹理颜色能够平滑过渡。

发明内容

为了解决现有技术中存在的上述问题,本发明提供了一种三维虚拟人 头脸建模中的纹理映射方法。本发明要解决的技术问题通过以下技术方案 实现:

本发明提供的一种三维虚拟人头脸建模中的纹理映射方法包括:

获取待映射人物真实人脸的正面视图以及侧面视图;

对所述正面视图以及侧面视图进行特征点标注,选取特征点标注后的 正面视图和侧面视图中的面部边缘特征点,并对特征点标注后的正面和侧 面视图中面部边缘特征点进行修正,并按照修正后的面部边缘特征点位置 进行裁剪,获得裁剪后包含面部边缘特征点的正面视图以及侧面视图;

获取描述真实人物头部比例以及结构的头部数据集;

利用所述头部数据集构建虚拟的通用人脸模型;

利用径向基插值算法,基于正面视图以及侧面视图标注后的特征点对 所述通用人脸模型进行几何形变以及特征点适配,得到个性化人脸模型;

针对裁剪后的正面视图与裁剪后的侧面视图的齐平区域,计算每个齐 平区域的偏移量以及偏移角;

将裁剪后的侧面视图按照所述偏移量以及偏移角进行错切变换,获得 错切变换后的侧面视图;

计算裁剪后的正面视图、错切变换后的侧面视图以及错切变换后的侧 面视图的镜像图像的拉普拉斯金字塔;

将裁剪后的正面视图、错切变换后的侧面视图以及镜像图像的拉普拉 斯金字塔,按照各层进行分界线拼接,获得拼接后的拉普拉斯金字塔;

根据拼接后的拉普拉斯金字塔逐层重构高斯金字塔;

根据所述高斯金字塔确定融合图像;

将所述融合图像映射入所述个性化人脸模型中,获得待映射人物的纹 理映射人脸模型。

可选的,所述利用所述头部数据集构建虚拟的通用人脸模型包括:

依据所述头部数据集中描述真实人物头部的基本比例以及结构的数据, 在3DsMax中建立虚拟的通用头脸模型并进行细化;

其中,边缘特征点变换比较明显勾选特定区域,

其中,所述通用头脸模型为三维网格面片模型,所述三维网格面片模 型表示为:

M={V

其中,V

可选的,对所述正面视图以及侧面视图进行特征点标注,选取特征点 标注后的正面和侧面视图中的面部边缘特征点,并对特征点标注后的正面 和侧面视图中面部边缘特征点进行修正,并按照修正后的面部边缘特征点 位置进行裁剪,获得裁剪后包含面部边缘特征点的正面视图以及侧面视图 包括:

对所述正面视图以及侧面视图按照等高线切割、等比例缩放以及人脸 对齐,获得对齐之后的正面视图以及侧面视图;

其中,对齐之后的正面视图以及侧面视图按照等高线分割为多个区域;

在对齐之后的正面视图以及侧面视图的不同区域进行特征点标注;

在标注特征点后的真实人物的正面视图中选择第一面部边缘特征点, 以及侧面视图中选择第二面部边缘特征点;

对所述第一面部边缘特征点以及第二面部边缘特征点进行修正;

将修正后的位于齐平区域的第一面部边缘特征点以及第二面部边缘特 征点作为匹配特征点,并存储匹配特征点坐标信息;

将正面视图中的每个第一面部边缘特征点连接绘制第一曲线,以及在 侧面视图中的每个第二面部边缘特征点连接绘制第二曲线;

以第一曲线以及第一曲线的镜像曲线为临界对所述正面视图进行裁剪, 保留正面视图的中间部分,以及以第二曲线为临界,将侧面视图的左侧区 域裁剪,获得裁剪后的正面视图以及裁剪后的侧面视图。

可选的,所述利用径向基插值算法,基于正面视图以及侧面视图标注 后的特征点对所述通用人脸模型进行几何形变以及特征点适配,得到个性 化人脸模型包括:

在通用人脸模型确定特征点;

基于正面视图以及侧面视图标注后的特征点,利用径向基插值算法对 通用人脸模型特征点附近的曲面进行局部变形,获得个性化人脸模型。

可选的,对所述正面视图以及侧面视图按照等高线切割、等比例缩放 以及人脸对齐,获得对齐之后的正面视图以及侧面视图包括:

对所述正面视图以及侧面视图分别进行切割,获得不同区域组成的正 面视图以及侧面视图;

将所述切割后的正面视图以及侧面视图在对应的区域进行等比例缩放, 以使所述正面视图以及侧面视图在同一区域大小相同;

将头顶、眼睛、嘴唇、下巴作为等高线,对所述等比例缩放后的正面 视图以及侧面视图进行相互对齐,获得互相对齐之后的正面视图与侧脸图 像。

6.根据权利要求3所述的纹理映射方法,其特征在于,所述对所述第一 面部边缘特征点以及第二面部边缘特征点进行修正包括:

对所述第一面部边缘特征点以及第二面部边缘特征点使用拖动以进行 修正,以使第一面部边缘特征点以及第二面部边缘特征点位于面部边缘位 置。

其中,所述拉普拉斯金字塔表示为:

每一层拼接后的拉普拉斯图像表示为:

所述重构后的高斯金字塔表示为:

其中,Expend算子表示对输入的图像进行内插放大,G

可选的,所述将裁剪后的正面视图、错切变换后的侧面视图以及镜像 图像的拉普拉斯金字塔,按照各层进行分界线拼接,获得拼接后的拉普拉 斯金字塔包括:

将裁剪后的正面视图、错切变换后的侧面视图以及镜像图像的拉普拉 斯金字塔按照各层进行分界线拼接,在分界线上采用像素加权平均的方式 进行融合,获得每一层拼接后的拉普拉斯图像;

每一层拼接后的拉普拉斯图像还原出拉普拉斯金字塔,获得拼接后的 拉普拉斯金字塔。

可选的,将所述融合图像映射入所述个性化人脸模型中包括:

将所述人脸个性化模型的网格按照正交投影的方式展开;

将人脸个性化模型的正面网格投影到所述融合图像中人脸正前方的二 维平面;

将所述人脸个性化模型的两个侧面网格投影到,相垂直的所述融合图 像的侧面平面。

可选的,在将所述人脸个性化模型的两个侧面网格投影到相垂直的融 合图像的侧面平面之后,所述纹理映射方法还包括:

将投影后的两个侧面网格以及正面网格按照投影分界线进行融合,获 得待映射人物的纹理映射人脸模型。

本发明提供的一种三维虚拟人头脸建模中的纹理映射方法,通过构建 个性化人脸模型,将待映射人物真实人脸的正面视图以及侧面视图按照特 征点位置进行裁剪,计算每个齐平区域的偏移量以及偏移角;将裁剪后的 侧面视图按照所述偏移量以及偏移角进行错切变换,获得错切变换后的侧 面视图;引入拉普拉斯金字塔算法对裁剪后的正面视图、错切变换后的侧 面视图以及错切变换后的侧面视图的镜像图像进行融合,将融合图像映射 入所述个性化人脸模型中,获得待映射人物的纹理映射人脸模型。本发明 可以在保证数据采集成本低的条件下,有效减少纹理裂缝,使得映射出的 纹理映射人脸模型更加逼真。

以下将结合附图及实施例对本发明做进一步详细说明。

附图说明

图1是本发明实施例提供一种三维虚拟人头脸建模中的纹理映射方法 的流程示意图;

图2a是为标注特征点后的真实人物的正面人脸以及侧面人脸图;

图2b是人物正侧视图预处理结果;

图2c是正侧视图特征点标定结果;

图2d是正侧视图区域划分图;

图3a是通用人脸几何模型及其网格结构;

图3b为MPEG-4标准中的FDP点示意图;

图3c为本发明使用的特征点的示意图;

图4是个性化人脸模型建模测试结果;

图5是放射变换图例;

图6是错切变换结果对比;

图7是图像裁剪与直接拼合结果;

图8是三幅图像的金字塔分解与融合过程图;

图9是拉普拉斯金字塔恢复图像的流程图;

图10是基于拉普拉斯金字塔的纹理融合结果;

图11是个性化人脸模型网格的投影分解;

图12是正侧面网格投影至二维平面;

图13是正侧面拼接结果图;

图14是个性化人脸模型添加纹理映射后的图像。

具体实施方式

下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施 方式不限于此。

如图1所示,本发明提供的一种三维虚拟人头脸建模中的纹理映射方 法包括:

S1,获取待映射人物真实人脸的正面视图以及侧面视图;

S2,对正面视图以及侧面视图进行特征点标注,选取特征点标注后的 正面视图和侧面视图中的面部边缘特征点,并对特征点标注后的正面和侧 面视图中面部边缘特征点进行修正,并按照修正后的面部边缘特征点位置 进行裁剪,获得裁剪后包含面部边缘特征点的正面视图以及侧面视图;

作为本发明一种可选的实施方式,步骤S2包括:

S21:对正面视图以及侧面视图按照等高线切割、等比例缩放以及人脸 对齐,获得对齐之后的正面视图以及侧面视图;

其中,对齐之后的正面视图以及侧面视图按照等高线分割为多个区域;

步骤S21包括:

步骤a,对正面视图以及侧面视图分别进行切割,获得不同区域组成的 正面视图以及侧面视图;

步骤b,将切割后的正面视图以及侧面视图在对应的区域进行等比例缩 放,以使正面视图以及侧面视图在同一区域大小相同;

步骤c,将头顶、眼睛、嘴唇、下巴作为等高线,对等比例缩放后的正 面视图以及侧面视图进行相互对齐,获得互相对齐之后的正面视图与侧脸 图像。

本步骤对人脸正侧面视图进行切割与等比缩放,最大程度上保留图像 中面部区域信息并居中,同时按照头顶、眼睛、嘴唇、下巴作为四条主要 等高线,对齐正侧视图的面部信息,如图2b示。

步骤S22:在对齐之后的正面视图以及侧面视图的不同区域进行特征点 标注;

图2a为标注特征点后的真实人物的正面人脸以及侧面人脸;

图2a为标注特征点后的真实人物的正面人脸以及侧面人脸。本步骤分 别在正面和侧面视图中标定人脸的特征点。由正面视图可以获取特征点的 宽度和高度信息,分别记为(x,y

步骤S23:在标注特征点后的真实人物的正面视图中选择第一面部边缘 特征点,和侧面视图中选择第二面部边缘特征点;

本步骤在标注特征点后的正面和侧面视图中,分别选取正面视图每个 区域的一个第一面部边缘特征点以及侧面视图每个区域的一个第二面部边 缘特征点;

步骤S24:对第一面部边缘特征点以及第二面部边缘特征点进行修正;

本发明可以对第一面部边缘特征点以及第二面部边缘特征点使用拖动 以进行修正,以使第一面部边缘特征点以及第二面部边缘特征点位于面部 边缘位置。

步骤S25:将修正后的位于齐平区域的第一面部边缘特征点以及第二面 部边缘特征点作为匹配特征点,并存储匹配特征点坐标信息;

定义正侧视图的面部边缘特征点,本步骤中可以在面部区域共定义了 10个变换面部边缘特征点,且以图像高度为一个单位,默认均匀分布在图 像竖直中分线上,将图像分割成9个横向的等高区域,创建并绘制可拖动 点到图像上,选择各拖动点,移动到面部边缘的合适位置,记录其坐标, 将变换特征点对齐到各拖动点,记第i(0≤i≤10)个特征点为p

步骤S26:将正面视图中的每个第一面部边缘特征点连接绘制第一曲线, 以及在侧面视图中的每个第二面部边缘特征点连接绘制第二曲线;

步骤S27:以第一曲线以及第一曲线的镜像曲线为临界对正面视图进行 裁剪,保留正面视图的中间部分,以及以第二曲线为临界,将侧面视图的 左侧区域裁剪,获得裁剪后的正面视图以及裁剪后的侧面视图。

首先根据定义的面部边缘特征点集合P

S3,获取描述真实人物头部比例以及结构的头部数据集;

S4,利用头部数据集构建虚拟的通用人脸模型;

本步骤可以依据头部数据集中描述真实人物头部的基本比例以及结构 的数据,在3DsMax中建立虚拟的通用头脸模型并进行细化;

其中,边缘特征点变换比较明显勾选特定区域,

三维网格面片模型表示为:

M={V

其中,V

本发明可以通过三维激光扫描仪扫描真实人脸得到原始的三维人脸网 格模型,或者由Proser专业人体建模软件,从其模型库中直接导出所需的 人头部模型,也可以通过3DS MAX、MAYA等专业建模软件手工建立人脸 维模型。本步骤在3DsMax中建立虚拟人通用头脸模型,通用头脸模型为 三维网格面片模型如图3a所示。

S5,利用径向基插值算法,基于正面视图以及侧面视图标注后的特征 点对通用人脸模型进行几何形变以及特征点适配,得到个性化人脸模型;

作为本发明一种可选的实施方式,步骤S5包括:

S51:在通用人脸模型确定特征点;

参考图3b,图3b为MPEG-4标准中的FDP点,本发明在特征点适配 时选取的人脸特征点以MPEG-4标准为基础,在MPEG-4标准中,与人脸 几何造型相关的是FDP。MPEG-4中共定义了84个FDP特征点。这些特征 点被分成面颊、眼睛、鼻子、嘴巴、耳朵等共11个组,通过这些特征点的 定义就可以把一个通用人脸模型转化为特定的人脸模型。参考图2b,图2b 为本发明在通用人脸模型中定义的人脸特征点参照MPEG-4的标准重新定 义了153个人脸特征点,如3c所示,包括眼睛、眼睑、脸廓等共14个部 分。

S52:利用径向基插值算法,基于正面视图以及侧面视图标注后的特征 点对通用人脸模型特征点附近的曲面进行局部变形,获得个性化人脸模型。

为了将通用人脸与照片中的个性化人脸归一化到同一坐标空间,需要 对通用人脸模型实施整体变换,使其尺寸与个性化人脸大体相同。设通用 人脸模型的任意一个网格顶点坐标为V(Vx,Vy,Vz),以两眼中心为原点,记为 O(Ox,Oy,Oz),测得模型的宽度,高度和深度分别记为Lx,Ly和Lz,则变换 后的新位置V′(V′x,V′y,V′z)由以下公式计算出:

V

径向基函数(Radial Basic Function,RBF)是一种基于空间离散数 据插值的变形方法,用于多维空间中多变量函数的近似。该方法首先通过 使用基函数的线性组合来拟合连续的多变量函数。径向基函数对不规则点 云的拟合效果较好,在三维空间中可以产生平滑的表面,因而被广泛应用 于三维人脸模型的重构。

将径向基插值算法应用到人脸几何变形中,其原理如下:已知在通用 人脸模型中定义的n个特征点,并且已知通用人脸模型所有网格顶点的坐标, 假设特征点从原始位置p

设通用人脸模型特征点(观测点)坐标为P={p

其中Mp+t为低阶多项式,在此表示仿射变换。为保持插值结果的光滑性, 建立如下约束条件:

根据已求出的特征点位移,令Δp

联立约束条件,可以得到n+4个方程。将方程组写为矩阵形式,为

其中φ

求解此线性方程组,得到径向基函数系数c

将人脸通用模型的非特征点坐标p代入插值函数表达式,即可得到非 特征点变形后的产生的位移Δp,因此非特征点变形后的坐标即个性化人脸 非特征点坐标p′=p+Δp,进而个性化人脸模型网格点坐标可以全部经计算 得出。至此,我们得到了个性化人脸网格模型。

本发明利用径向基插值算法对S4获得的通用人脸模型进行几何变形实 现通用人脸个性化,所得结果在面部特征的表现上具有较好的精度,测试 效果如图4所示。本步骤输入的人物正视图大小为583px*658px,侧视图大 小为640px*658px。

S6,针对裁剪后的正面视图与裁剪后的侧面视图的齐平区域,计算每 个齐平区域的偏移量以及偏移角;

首先在对正侧视图进行区域划分之后,对于侧视图中第i个区域所需要 的水平错切偏移量Δx有:

Δx=(x

其中x

进一步计算错切角θ,由于在水平错切变换中,对图像某一行像素的变 换偏移量是相等的,故可以用图像的边界像素点作为特例变换计算得到错 切角θ,如图5所示。在特征点变换图例中,暂时假定将四个特征点形成的 两个向量起始点平移至重合,则错切偏移量Δx可以简化为下边界特征点位 置的横向差,在保证Δx一致的前提下,对比侧视图边界像素变换前后结果, 得到错切角θ满足如下关系式:

tanθ=(x′

构造该区域的水平错切矩阵有:

S7,将裁剪后的侧面视图按照偏移量以及偏移角进行错切变换,获得 错切变换后的侧面视图;

本步骤针对侧视图各区域依次完成错切处理,得到特征曲线一致于正 视图的输出图像,对比结果如图6所示。

S8,计算裁剪后的正面视图、错切变换后的侧面视图以及错切变换后 的侧面视图的镜像图像的拉普拉斯金字塔;

本步骤可以将裁剪后的正面视图、错切变换后的侧面视图以及镜像图 像的拉普拉斯金字塔按照各层进行分界线拼接,在分界线上采用像素加权 平均的方式进行融合,获得每一层拼接后的拉普拉斯图像;如图7效果所 示。每一层拼接后的拉普拉斯图像还原出拉普拉斯金字塔,获得拼接后的 拉普拉斯金字塔。

S9,将裁剪后的正面视图、错切变换后的侧面视图以及镜像图像的拉 普拉斯金字塔,按照各层进行分界线拼接,获得拼接后的拉普拉斯金字塔;

S10,根据拼接后的拉普拉斯金字塔逐层重构高斯金字塔;

S11,根据高斯金字塔确定融合图像;

其中,拉普拉斯金字塔融合获得融合图像的过程如图8所示。对于左 侧、正面和右侧三幅人脸纹理图像,首先求解个图像的高斯金字塔分解。 设原始图像为G

其中

式中w(m,n)是生成核函数,本发明采用5×5的高斯模板。

拉普拉斯金字塔是一种残差预测金字塔。预测残差是指第l层图像与第 l+1层图像经过内插放大得到的预测图像之间的差异。建立图像的高斯金字 塔后,将每一层图像G

拉普拉斯金字塔则由如下公式构造

由LP

LP

根据拼接后的拉普拉斯金字塔,逐层恢复出对应的高斯金字塔。重建 高斯金字塔的公式如下:

式中Expend算子表示对输入的图像进行内插放大,即G

本发明可以采用4层拉普拉斯金字塔,并从拉普拉斯金字塔的最顶层 开始的,由上至下逐层递推,最终得到拼接图像的高斯金字塔,其中高斯 金字塔的最底层图像G

S12,将融合图像映射入个性化人脸模型中,获得待映射人物的纹理映 射人脸模型。

作为本发明一种可选的实施方式,步骤S12包括:

S121:将人脸个性化模型的网格按照正交投影的方式展开;

S122:将人脸个性化模型的正面网格投影到融合图像中人脸正前方的 二维平面;

S123:将人脸个性化模型的两个侧面网格投影到,相垂直的融合图像 的侧面平面。

本步骤将投影后的两个侧面网格以及正面网格按照投影分界线进行融 合,获得待映射人物的纹理映射人脸模型。

本发明可以将人脸网格划分为正面网格和侧面网格。在拼接正侧面照 片时,本发明根据照片中的特征点定义了图像拼接的分界线。在三维人脸 模型中,同样可以查找出相同的特征点,并按照模型网格顶点的连接关系, 确定出近似的分界线。此时,三维人脸模型的网格划分为三个部分,如图 11所示。将整个网格按照正交投影的方式展开,其中正面网格投影到人脸 正前方的二维平面,两个侧面网格投影到相垂直的侧面平面,投影结果如图12所示。将三个平面内的网格拼接成为一个完整的人脸展开网格。平面 网格的拼接方式与纹理的拼接方式相同:保持正面网格的投影不变,按照 网格分界线的定义,对两个侧面网格的投影进行仿射变换,使其投影的分 界线与正面网格投影的分界线重合。最后将正侧面网格沿分界线对齐,即 得到完整的人脸模型网格展开图,如图13所示。

由于人脸网格的投影方式与正侧面照片的投影方式相同,并且其拼接 过程都进行了相同的仿射变换,因而展开后网格中的特征点与纹理中的特 征点是完全重合的。因此将展开后的网格与人脸纹理图对齐,网格中每个 顶点在纹理空间中的二维坐标即为纹理坐标。在确定顶点的纹理坐标后, DirectX 3D渲染环境自动将图9中的纹理映射到个性化人脸模型表面,最 终得到人脸模型如图14所示。

本发明提供的一种三维虚拟人头脸建模中的纹理映射方法,通过构建 个性化人脸模型,将待映射人物真实人脸的正面视图以及侧面视图按照特 征点位置进行裁剪,计算每个齐平区域的偏移量以及偏移角;将裁剪后的 侧面视图按照偏移量以及偏移角进行错切变换,获得错切变换后的侧面视 图;引入拉普拉斯金字塔算法对裁剪后的正面视图、错切变换后的侧面视 图以及错切变换后的侧面视图的镜像图像进行融合,将融合图像映射入个 性化人脸模型中,获得待映射人物的纹理映射人脸模型。本发明可以在保 证数据采集成本低的条件下,有效减少纹理裂缝,使得映射出的纹理映射 人脸模型更加逼真。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明, 不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域 的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简 单推演或替换,都应当视为属于本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号