首页 / 专利库 / 数学与统计 / 扩散张量 / 一种基于单幅图像的头发建模和肖像编辑方法

一种基于单幅图像的头发建模和肖像编辑方法

阅读:321发布:2020-10-17

专利汇可以提供一种基于单幅图像的头发建模和肖像编辑方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于单幅图像的头发建模和肖像编辑方法,该方法可对输入图像中人物发型、头部等部分进行三维结构的重建,仅需要少量的用户输入即可实现多种肖像编辑功能;该方法经过图像预处理、头部三维模型重建、二维发丝 抽取 和三维发型重建步骤后,最终实现肖像立体化、发型迁移、发型编辑等肖像编辑功能;本发明首次提出了从单张肖像图像中构建三维头发模型的方法,实现了一系列实用的肖像发型编辑功能,效果优于现有方法,且具有交互简便、计算效率高等特点。,下面是一种基于单幅图像的头发建模和肖像编辑方法专利的具体信息内容。

1.一种基于单幅图像的头发建模和肖像编辑方法,其特征在于,该方法包括以下步骤:
(1)图像预处理:基于用户的简单笔画,利用Lazy-Snapping图像分割方法交互地将图像分割为人物头发、人物脸部、人物身体、背景四大部分,对分割得到的人物头发区域用alpha-matting方法计算该区域内不透明度值并分离其前景背景颜色,补齐人物身体及背景区域中被遮挡部分;
(2)头部三维模型重建:采用ASM方法自动标定人脸特征点,基于这些特征点与PCA降维后的三维头部模型数据库,通过最小二乘优化估算头部的变换参数与拟合三维模型,并根据步骤1分割得到的人物脸部区域进行反纹理映射得到头部模型的纹理图像;
(3)二维发丝抽取:在步骤1中得到的图像头发区域内使用Gabor核函数计算二维方向场及对应的置信图,基于此追踪得到一系列稀疏分布的二维发丝曲线;
(4)三维发型重建:结合步骤2中的拟合头部模型、相邻发丝深度的相似性以及发丝间相互遮挡关系进行能量优化,求解得到步骤3中生成的所有二维发丝的深度信息,基于这些三维发丝进行加密得到足够密集的包围头部的三维发丝集合作为恢复的发型模型,并为所有发丝顶点在原始图像中采样得到头发的颜色值;
(5)合成与应用:利用前面步骤1-4的人物发型模型、人物头部模型等重建的三维信息,实现肖像立体化、发型迁移、发型编辑等肖像编辑操作。
2.根据权利要求1所述基于单幅图像的头发建模和肖像编辑方法,其特征在于,所述步骤1包括以下子步骤:
(1.1)用户辅助的图像分割:采用Lazy-Snapping技术由用户辅助指定少量笔画对各层的可见区域进行分割,得到四层区域,分别为人物头发区域Rhair、人物脸部区域Rface、人物身体区域Rbody与背景区域Rbackground;
(1.2)头发区域的matting操作:通过如下matting操作自动地改善头发的分割结果:
(1.2.1)对头发区域Rhair腐蚀与膨胀10个像素的宽度,得到两个新的头发区域与
(1.2.2)将步骤(1.2.1)中得到的头发区域Rhair、 与 视为一组trimap,即
令膨胀后的 外区域头发的不透明度为0,腐蚀后的 内区域头发的不透明度为
1,对 内 外区域,即头发的边界区域,由matting方法求解的头发不透明度,得到头发在整个图像上的不透明度值Ahair,以及在头发边界区域内的前景颜色 与背景颜色 满足:
式中,Cimage为带不透明度的头发区域
(1.2.3)将步骤(1.2.2)中得到的带不透明度的头发区域作为改进的头发分割结果,并在头发边界区域( 内 外区域)内,将前景颜色 作为头发区域颜色,背
景颜色 作为头发背景区域的颜色;
(1.3)身体与背景区域的填补及立体化:对遮挡部分使用PatchMatch方法进行填补,并交互地在遮挡位置指定身体的边界。
3.根据权利要求1所述基于单幅图像的头发建模和肖像编辑方法,其特征在于,所述步骤2由以下子步骤来实现:
(2.1)图像人脸特征点识别:首先采用Viola-Jones识别算法进行人脸识别,大致估算人脸区域大小;
(2.2)头部模型拟合:使用Basel Face Model数据库作为头部模型数据库,保证其中所有模型在拓扑结构上保持一致,且模型尺度归一化;将数据库中的每个头部模型所有顶点的三维坐标串联为一个向量,形如 作为一个训练数据样本;
对所有数据进行PCA分析,得到平均数据向量 前np个主元向量V及对应的特征值λ;给定任一主元向量系数向量β,即可生成对应的头部模型数据向量:
假定肖像为弱透视投影模型,对投影矩阵R,将三维点P3D投影到二维图像平面上的操作为P2D=R·P3D;在头部模型拟合过程中,定义能量方程E包括特征点误差Eerror与参数惩罚Ecoef两项如下:
E=werrorEerror+wcoefEcoef,
其中wk为对应特征点的权重值,Xk为标定的特征点位置, 与V(k)分别为头部模型上该特征点在平均模型与特征向量上的对应值;对于非脸部轮廓特征点,在头部模型上固定选择某一顶点作为其对应点,即:
V(k)=Vindex(k),
而对于脸部轮廓线,动态选取当前头部模型上与该特征点距离最近顶点为特征点对应模型位置;
使用最小二乘方法对能量项进行优化,求得 时的特征向量系数β,求得其对
应头部模型即为拟合结果Sfit;
拟合过程中,迭代地根据当前拟合结果Sfit通过最小二乘优化估计投影矩阵R及在当前投影矩阵R下拟合头部模型Sfit;
(2.3)模型纹理重建:利用头部模型的纹理参数化UV坐标,将步骤1中分割得到的人物脸部区域Rface反纹理映射至步骤(2.2)中的拟合头部模型Sfit,生成可见部分纹理图像Ifit;在Ifit上对不可见部分(即未被反纹理映射到的区域)进行填补操作;参考Basel Face Model数据库中标准人脸纹理图像Iref,对Ifit上所有不可见像素求解使其拉普拉斯算子值(ΔI(x,y)=4I(x,y)-I(x-1,y)-I(x+1,y)-I(x,y-1)-I(x,y+1))与Iref上一致。
4.根据权利要求1所述基于单幅图像的头发建模和肖像编辑方法,其特征在于,所述步骤3由以下子步骤来实现:
(3.1)方向场估计:使用有向滤波函数{Kθ}对图像预处理中得到的头发区域Rhair(其边界颜色为matting过程中提取的头发前景颜色 )进行滤波操作,其中每个滤波函数Kθ用来检测度θ对应方向的响应值;令F(x,y,θ)=(Kθ*I)(x,y)表示Kθ在像素(x,y)上的响应值;则像素(x,y)上的局部方向为 该步骤采用的滤波
函数由32个对称Gabor核函数构成,它们的方向在[0,π]间均匀分布:
Gabor函数的参数理论上需要与图像中可见发丝特征大小成正比,使用的参数
σu=1.8,σv=2.4,λ=4;
除了估计局部方向场 还对每像素计算一置信度w(x,y),用以表示方向场的准确度:
其中,dist(θ1,θ2)表示方向间的夹角;
在得到初始的方向场结果 后,使用其对应的置信度值w(x,y)作为下一次迭代的输入,从w(x,y)使用同样的方法重新估计一个新的方向场 及对应的置信度值w’(x,y);对于常见的输入图像,只需进行1到2个迭代过程;这个过程可以有效地滤去由图像噪声导致的高置信度方向估计值,得到一个干净可靠的二维方向场;
(3.2)发丝抽取:将步骤3.1得到的稀疏二维方向场转换为对应单独发丝结构的曲线几何的集合:首先在头发区域内选取种子像素点作为发丝追踪的起点;在置信值图上选取置信度的局部最大值点P作为种子点,令其满足:
wP>whigh;
其中, 与 为在垂直于P上局部方向 的两边方向上,通过双线性插值方法采样得到的临近置信度值;令whigh=0.3,wlow=0.05,∈=0.2;
对于任一选取的种子点Pseed及其局部方向 同时从其相反的两个方向上进行发丝追踪;每一步发丝追踪都通过在当前位置P沿角度 对应的方向vP,向前延伸曲线:
对每个发丝追踪过程,都维护一个追踪状态与一个健康度值:追踪过程的一开始健康度均初始为5,当健康度降至0则当前发丝的追踪过程结束;若当前追踪步骤的追踪状态为“确定的”,追踪方向决定于局部的方向场且将健康度重置为5;若追踪状态为“不确定的”,则追踪方向由上一个追踪顶点决定以保持曲线的曲率,并将健康度值减1;在追踪过程的每一步i,通过如下规则更新追踪状态:
A)若i=0,将状态初始为“确定的”;
B)若 则将状态改为“不确定的”;
C)若 且 则将状态改为“不确定的”;
D)若 且 则将状态改为“确定的”;
E)否则保持当前的状态不变;
若上述规则C)成立,假设当前及其所有的后续“不确定”顶点都被其它的发丝所遮挡,因此将他们标记为被遮挡的;
追踪过程中同时从种子点列表中去除那些发丝曲线上的像素点,来保证所有发丝都只被追踪一次;追踪步长δ为像素宽度的75%,θmax=π/6;在每个发丝追踪完成后都将首尾的“不确定的”顶点去除;
由于可能的误差累积,上述步骤追踪得到的发丝很可能偏离正确的图像发丝中心;在追踪得到每个顶点后都进行一步重定位修正如下:
对于每个二维曲线顶点P,都在垂直于P上局部方向 的两边方向上采样得到的临近置信度值 与 拟合一个帐篷函数Λ(t)如下:令Λ(0)=wP,
然后求取argmax(Λ(t))作为P在垂直方向上的修正偏移量;
对于这一步生成的所有二维发丝顶点,都对其在图像中对应位置进行采样得到其颜色值。
5.根据权利要求1所述基于单幅图像的头发建模和肖像编辑方法,其特征在于,所述步骤4由以下子步骤来实现:
(4.1)深度估计:假设发型最外圈轮廓处的深度都为0(即头部模型中心的深度);挡住头部前额的发丝深度为头部模型对应位置深度加上发型厚度值;在两者之间的其它发丝的深度将在这一步中进行求解并保持二维发丝抽取中得到的相互遮挡关系;
在深度优化过程中定义如下的深度限制:
a)深度限制:来限制前额与轮廓处等已知部分的深度值;用户同样可以通过画刷工具手动指定部分位置的深度;
b)发丝限制:保持一条发丝上相邻顶点的深度光滑,防止尖角的产生;
c)领域限制:保持相邻类似方向顶点的深度一致性;
令Pi为第i个发丝顶点的位置,Z(Pi)为其深度值,分别定义上述限制的能量如下:
其中 为Pi的预定义深度值, 包含Pi的不在同一发丝上的相邻顶点,其方
向相近且有相同的遮挡标记;
最终通过对如下能量E进行最小化求解,得到所有发丝顶点的深度值:
E=wZEZ+wSES+wNEN;
令wZ=5,wS=2,wN=1;使用共轭梯度法进行求解;
(4.2)三维发丝合成:首先,定义如下三个深度图:Dfront,Dmiddle与Dback;其中,前部深度图Dfront通过将计算得到的稀疏三维发丝光栅化得到的,然后将被三维发丝覆盖到的像素的深度值均匀扩散到整个头发区域;为了计算Dmiddle,首先将原始的头发区域与头部模型投影后得到的头部区域合并为一扩展的头发区域,将原始头发区域轮廓处的深度值作为边界条件,将其扩散到整个扩展头发区域内,从而生成中层深度图Dmiddle;后部深度图Dback通过固定区域边界的深度值,将区域内部的深度向后均匀延伸生成,使其深度在头部之后并使得整个区域完全覆盖脑后;这三层深度将整个头发区域划分为两个封闭的区域,对任一三维点P(x,y,z),若Dfront(x,y)6.根据权利要求1所述基于单幅图像的头发建模和肖像编辑方法,其特征在于,所述步骤5中,所述发型迁移具体为:对肖像中人物的发型进行替换允许用户尝试不同种类的发型并看到可能的实际效果;给定来源肖像图片Isrc与目标肖像图片Idst,本应用的目标是将目标肖像图片Idst中的发型替换为来源肖像图片Isrc中的发型;首先从Isrc中提取其发型模型与头部模型,并为Idst构建一个肖像立体化模型;利用来源肖像与目标肖像头部模型顶点之间的一一对应关系,可以计算从Isrc到Idst的头部的变换矩阵MT,来弥补两者在形状与位置上的差异;MT包括两个部分:在头部模型拟合过程中计算得到的平移与旋转参数以及将两个头部模型包围盒进行对齐的缩放参数;随后便将从Isrc中提取的发型模型经过MT变换至Idst中的合适位置;
所述发型编辑具体为:用户可以在发丝尺度上修改发型颜色或者增加颜色细节,光滑度的修改是通过简单对发丝顶点上的颜色进行滤波操作;采用Marschner模型来对发型增加高光效果。

说明书全文

一种基于单幅图像的头发建模和肖像编辑方法

技术领域

[0001] 本发明涉及图像处理领域,尤其涉及一种基于单幅图像的头发建模和肖像编辑方法。

背景技术

[0002] 本发明相关的研究背景简述如下:
[0003] 一、肖像编辑
[0004] 由于人物肖像是真实照片的主要组成部分,也是人们最感兴趣的图像类型之一,肖像编辑具有重要的研究与应用价值。
[0005] 虽然有一些直接作用在图像二维空间上的肖像编辑方法已经在人脸美化(Leyvand,T.,Cohen-Or,D.,Dror,G.,and Lischinski,D.2008.Data-driven enhancement of facial attractiveness.ACM Trans.Graph.27,3,38:1-38:9.)、不 指 定 来 源 人脸 替 换(Bitouk,D.,Kumar,N.,Dhillon,S.,Belhumeur,P.N.,and Nayar,S.K.2008.Face Swapping:Automatically replacing faces in photographs.ACM Trans.Graph.27,39:1-39:8.)、 人 脸 增 强(Joshi,N.,Matusik,W.,Adelson,E.H.,and Kriegman,D.J.2010.Personal photo enhancement using example images.ACM Trans.Graph.29,3,12:1-12:15.)等领域取得了不错的结果,但是最新的研究趋势表明,通过采用将二维图像对应到三维形状,可以实现更为复杂的肖像编辑功能,如人体变形(Zhou,S.,Fu,H.,Liu,L.,Cohen-Or,D.,and Han,X.2010.Parametric reshaping of human bodies in images.ACM Trans.Graph.29,4,126:1-126:10.)、指定来源的人脸替换(Dale,K.,Sunkavalli,K.,Johnson,M.K.,Vlasic,D.,Matusik,W.,and Pfister,H.2011.Video face replacement.ACM Trans.Graph.30,6,130:1-130:10.)、人脸表情迁移(Yang,F.,Wang,J.,Shechtman,E.,Bourdev,L.,and Metaxas,D.2011.Expression flow for 3D-aware face component transfer.ACM Trans.Graph.30,4,60:1-60:10.)、基于图像集的人脸动画生成(Shlizerman,I.K.,Shechtman,E.,Garg,R.,and Seitz,S.M.2011.Exploring photobios.ACM Trans.Graph.30,4,61:1-61:9.)等。
[0006] 基于这些特定的三维模型信息,可以使肖像编辑过程从根本上理解图像中包含的复杂语义信息并更好地解决由于目标图像中的歧义性与相互遮挡造成的许多棘手的实际问题。
[0007] 基于这些研究发现,本发明通过为肖像人物发型构建基于发丝的三维发型模型,实现了许多新的肖像发型编辑功能。
[0008] 一、发型建模
[0009] 发型建模是计算机图像学界的一个研究热点,详见文献综述(Ward,K.,Bertails,F.,Kim,T.-Y.,Marschner,S.R.,Cani,M.-P.,and Lin,M.C.2007.A survey on hair modeling:styling,simulation,and rendering.IEEE Transactionson Visualization and Computer Graphics 13,2,213-234.)。 本 发 明 的 方 法与其中基于图像的发型采集方法紧密相关,包括(Paris,S.,Briceno,H.,and
Sillion,F.2004.Capture of hair geometry from multiple images.ACM Trans.Graph.23,3,712-719.)(Wei,Y.,Ofek,E.,Quan,L.,and Shum,H.-Y.2005.Modeling hair from multiple views.ACM Trans.Graph.24,3,816-820.)(Paris,S.,Chang,W.,Kozhushnyan,O.I.,Jarosz,W.,Matusik,W.,Zwicker,M.,and Durand,F.2008.Hair photobooth:geometric and photometric acquisition of real hairstyles.ACM Trans.Graph.27,3,30:1-30:9.)(Jakob,W.,Moon,J.T.,and Marschner,S.2009.Capturing hair assemblies fiber by fiber.ACM Trans.Graph.28,5,164:1-164:9.)。这些方法利用不同视下的多张头发图像来重建其完全的三维模型,而后便可在计算机图像应用中重新渲染这些发型模型。而在本方法应用情景中,输入仅仅是单幅图像,并且没有关于发型三维几何形态或者场景光照条件的信息。因此本方法目标在于生成可信的高分辨率的基于发丝的发型模型,而不要求一定与实际情况一致。
[0010] 二、单视点下的三维建模
[0011] 单视点的建模问题在本质上是不适定问题。针对特定物体或场景,(Hoiem,D.,Efros,A.A.,and Hebert,M.2005.Automatic photo pop-up.ACM Trans.Graph.24,3,577-584.)提出了对包含地面、天空与墙体的室外场景照片进行立体化(pop-up)的方法;(Rivers,A.,Igarashi,T.,and Durand,F.2010.2.5D cartoon models.ACM Trans.Graph.29,4,59:1-59:7.)提出了对卡通图像的2.5D建模方法,通过对少量不同视点下的卡通图片进行光滑插值使其看似三维物体;(Oztireli,A.C.,Uyumaz,U.,Popa,T.,Sheffer,A.,and Gross,M.2011.3D modeling with a symmetric sketch.In Proceedings of SBIM,23-30.)提出了对简单用户草图中双边对称物体提取2.5D模型的方法。

发明内容

[0012] 本发明的目的在于针对现有技术的不足,提供一种基于单幅图像的头发建模和肖像编辑方法,该方法通过重建发型等对象的三维模型,可以实现许多现有图像编辑方法难以解决的交互式肖像编辑功能,且具有很高的实用价值。
[0013] 本发明的目的是通过以下技术方案来实现的:一种基于单幅图像的头发建模和肖像编辑方法,该方法包括以下步骤:
[0014] (1)图像预处理:基于用户的简单笔画,利用Lazy-Snapping图像分割方法交互地将图像分割为人物头发、人物脸部、人物身体、背景四大部分,对分割得到的人物头发区域用alpha-matting方法计算该区域内不透明度值并分离其前景背景颜色,补齐人物身体及背景区域中被遮挡部分;
[0015] (2)头部三维模型重建:采用ASM方法自动标定人脸特征点,基于这些特征点与PCA降维后的三维头部模型数据库,通过最小二乘优化估算头部的变换参数与拟合三维模型,并根据步骤1分割得到的人物脸部区域进行反纹理映射得到头部模型的纹理图像;
[0016] (3)二维发丝抽取:在步骤1中得到的图像头发区域内使用Gabor核函数计算二维方向场及对应的置信图,基于此追踪得到一系列稀疏分布的二维发丝曲线;
[0017] (4)三维发型重建:结合步骤2中的拟合头部模型、相邻发丝深度的相似性以及发丝间相互遮挡关系进行能量优化,求解得到步骤3中生成的所有二维发丝的深度信息,基于这些三维发丝进行加密得到足够密集的包围头部的三维发丝集合作为恢复的发型模型,并为所有发丝顶点在原始图像中采样得到头发的颜色值;
[0018] (5)合成与应用:利用前面步骤1-4的人物发型模型、人物头部模型等重建的三维信息,实现肖像立体化、发型迁移、发型编辑等肖像编辑操作。
[0019] 本发明的有益效果是,本发明通过重建肖像的三维模型来指导肖像编辑过程,可以有效避免图像的歧义性与关键信息遮挡对结果的影响;本发明首次提出了对单幅肖像复杂发型的三维建模方法,通过构建基于发丝的三维发型模型,从而方便地估计发型的可信三维信息并合成不可见部分的结构,从而可与其它单视点三维建模方法结合用于许多肖像编辑应用,并使得相关编辑效果与真实情况更相符,相比现有类似肖像编辑方法,对输入肖像中不同发型种类、脸部朝向、身体姿态以及背景都有更强的适应能附图说明
[0020] 图1是本发明中用户交互对图像进行分割的示意图;
[0021] 图2是本发明中对图像计算二维稀疏方向场的示意图;
[0022] 图3是本发明中迭代地优化二维稀疏方向场的示意图;
[0023] 图4是本发明中抽取稀疏的二维发丝曲线及与密集发丝曲线的对比示意图;
[0024] 图5是本发明中对二维发丝曲线位置进行重定位修正的示意图;
[0025] 图6是本发明中肖像立体化的结果图;
[0026] 图7是本发明中发型迁移的结果图。

具体实施方式

[0027] 本发明的核心技术是对单幅肖像中的头发等各部分进行三维重建并应用于发型建模及肖像编辑等功能。该方法主要分为如下五个主要步骤:图像预处理、头部三维模型重建、二维发丝抽取、三维发型重建、合成与应用。
[0028] 一、图像预处理:基于用户的简单笔画,利用Lazy-Snapping图像分割方法交互地将图像分割为人物头发、人物脸部(未被头发遮挡部分)、人物身体、背景四大部分,对分割得到的人物头发区域用alpha-matting方法计算该区域内不透明度值并分离其前景背景颜色,补齐人物身体及背景区域中被遮挡部分;
[0029] 如图1所示,该步骤通过以下3个子步骤来实现:
[0030] 1.1用户辅助的图像分割
[0031] 由于肖像中各层的内容及其边界的形态复杂性,没有方法能够鲁棒地对这些区域进行自动分割,因此本方法采用Lazy-Snapping技术(Li,Y.,Sun,J.,Tang,C.,and Shum,H.2004.Lazy snapping.ACM Trans.Graph.23,3,303-308.),由用户辅助指定少量笔画对各层的可见区域进行分割,得到四层区域Rhair、Rface、Rbody与Rbackground。
[0032] 1.2头发区域的matting操作
[0033] 图像中头发往往具有半透明的特性,并且其边界形状非常复杂,步骤1.1中分割得到的头发区域通常仅仅近似正确但对本方法的需求而言并不足够精确。本方法通过如下matting操作自动地改善头发的分割结果:
[0034] 1)对用户辅助的图像分割步骤中得到的头发区域Rhair腐蚀与膨胀一定宽度(本方法腐蚀与膨胀的宽度均为10个像素的宽度大小),得到两个新的头发区域 与
[0035] 2)将步骤1)中得到的头发区域Rhair、 与 视为一组trimap,即令膨胀后的 外区域头发的不透明度为0,腐蚀后的 内区域头发的不透明度为1,
对 内 外区域,即头发的边界区域,由matting方法求解的头发不透明度(在
(0,1)范围之内)。本方法采用Closed-form matting方法(Levin,A.,Lischinski,D.,and Weiss,Y.2008.A closed-form solution to natural image matting.IEEE Transactions on Pattern Analysis and Machine Intelligence 30,2,228-242.)进行求解,得到头发在整个图像上的不透明度值Ahair,以及在头发边界区域内的前景颜色(即去除图像其它区域颜色后的头发颜色) 与背景颜色(即去除头发颜色后的图像其它区域颜色)满足:
[0036]
[0037] 3)将步骤2)中得到的带不透明度的头发区域作为改进的头发分割结果,并在头发边界区域( 内 外区域)内,将前景颜色 作为头发区域颜色,背景颜色 作为头发背景区域(即在该处与头发重叠的其它层)的颜色。
[0038] 1.3身体与背景区域的填补及立体化
[0039] 通常,人物身体与背景会被人物身体、人物头发等遮挡,当用户对肖像进行交互操作,例如旋转视点、改变发型时,被遮挡部分就会重新成为可见的。为了解决这个问题,本方法对这两层的遮挡部分使用PatchMatch方法(Barnes,C.,Shechtman,E.,Finkelstein,A.,and Goldman,D.B.2009.PatchMatch:A randomized correspondence algorithm for structural image editing.ACM Trans.Graph.28,3,24:1-24:11.)进行填补。对于身体部分,用户需要交互地在遮挡位置指定身体的边界。
[0040] 二、头部三维模型重建:采用ASM(Active Shape Model)方法自动标定人脸特征点,基于这些特征点与PCA(Principle Component Analysis)降维后的三维头部模型数据库,通过最小二乘优化估算头部的变换参数与拟合三维模型,并根据步骤一分割得到的人物脸部区域进行反纹理映射得到头部模型的纹理图像;
[0041] 2.1图像人脸特征点识别
[0042] 首先采用Viola-Jones识别算法进行人脸识别,大致估算人脸区域大小。
[0043] 自动对图像中人脸区域进行脸部特征点的自动标定,该过程采用Active Shape Model(ASM)方法(Milborrow,S.,and Nicolls,F.2008.Locating facial features with an extended active shape model.In Proceedings of ECCV’08,Springer,504-513.)标定73个人脸特征点(nf=73),包括15个脸部轮廓特征点、12个眉部特征点(左右各6个)、16个眼部特征点(左右各8个)、12个鼻部特征点以及18个嘴部特征点(内外轮廓分别为12个与6个)。
[0044] 2.2头部模型拟合
[0045] 使用公开的Basel Face Model数据库作为头部模型数据库,保证其中所有模型在拓扑结构上保持一致(同样的顶点数量、索引号以及连接关系),且模型尺度归一化。将数据库中的每个头部模型所有顶点的三维坐标串联为一个向量,形如作为一个训练数据样本。对所有数据进行PCA分析,得到平均数据向量 前np个主元向量V及对应的特征值λ(本方法的结果取主元数np为100个)。给定任一主元向量系数向量β,即可生成对应的头部模型数据向量:
[0046]
[0047] 假定肖像为弱透视投影模型,对投影矩阵R,将三维点P3D投影到二维图像平面上的操作为P2D=R·P3D。在头部模型拟合过程中,定义能量方程E包括特征点误差Eerror与参数惩罚Ecoef两项如下:
[0048] E=werrorEerror+wcoefEcoef,
[0049]
[0050]
[0051] 其中wk为对应特征点的权重值,Xk为标定的特征点位置, 与V(k)分别为头部模型上该特征点在平均模型与特征向量上的对应值。对于非脸部轮廓特征点,在头部模型上固定选择某一顶点作为其对应点,即:
[0052] V(k)=Vindex(k),
[0053] 而对于脸部轮廓线,动态选取当前头部模型上与该特征点距离最近顶点为特征点对应模型位置。
[0054] 使用最小二乘方法对能量项进行优化,求得 时的特征向量系数β,求得其对应头部模型即为拟合结果Sfit。
[0055] 拟合过程中,本方法迭代地根据当前拟合结果Sfit通过最小二乘优化估计投影矩阵R及在当前投影矩阵R下拟合头部模型Sfit。迭代过程一般进行4~5次即会收敛。
[0056] 2.3模型纹理重建
[0057] 利用头部模型的纹理参数化UV坐标,将步骤一中分割得到的人物脸部区域Rface反纹理映射至步骤2.2中的拟合头部模型Sfit,生成可见部分纹理图像Ifit。在Ifit上对不可见部分(即未被反纹理映射到的区域)进行填补操作。参考Basel Face Model数据库中标准人脸纹理图像Iref,对Ifit上所有不可见像素求解使其拉普拉斯算子值(ΔI(x,y)=4I(x,y)-I(x-1,y)-I(x+1,y)-I(x,y-1)-I(x,y+1))与Iref上一致。
[0058] 三、二维发丝抽取:在步骤一中得到的图像头发区域内使用Gabor核函数计算二维方向场及对应的置信图,基于此追踪得到一系列稀疏分布的二维发丝曲线;
[0059] 3.1方向场估计
[0060] 与以往方法类似,本方法使用一系列有向滤波函数{Kθ}对图像预处理中得到的头发区域Rhair(其边界颜色为matting过程中提取的头发前景颜色 )进行滤波操作,其中每个滤波函数Kθ用来检测角度θ对应方向的响应值。令F(x,y,θ)=(Kθ*I)(x,y)表示Kθ在像素(x,y)上的响应值。则像素(x,y)上的局部方向为
[0061] 本方法采用的滤波函数由32个对称Gabor核函数构成,它们的方向在[0,π]间均匀分布:
[0062]
[0063]
[0064]
[0065] Gabor函数的参数理论上需要与图像中可见发丝特征大小成正比,本方法使用的参数σu=1.8,σv=2.4,λ=4。
[0066] 除了估计局部方向场 本方法还对每像素计算一置信度w(x,y),用以表示方向场的准确度:
[0067]
[0068] 其中dist(θ1,θ2)表示方向间的夹角。通过设置置信度的阈值,可以去除那些不可靠的方向结果而得到一个稀疏而精确的方向场用以表示图像中头发区域的方向特征,如图2所示。
[0069] 由于输入图像可能存在的各种瑕疵,有时候一些不可靠的方向结果同样有较高的置信值,通过设置阈值也很难区分这些错误结果与实际的发丝方向特征。实验发现,一个准确的高置信度的方向结果往往在这个方向上有同样高置信度的相邻像素,而错误的高置信度方向结果通常是孤立的,基于此,本方法采用一种迭代的方向场改进过程来改善方向场结果,去除噪声对结果的影响。
[0070] 在得到初始的方向场结果 后,使用其对应的置信度值w(x,y)作为下一次迭代的输入,从w(x,y)使用同样的方法重新估计一个新的方向场 及对应的置信度值w’(x,y)。对于常见的输入图像,只需进行1到2个迭代过程。这个过程可以有效地滤去由图像噪声导致的高置信度方向估计值,得到一个干净可靠的二维方向场,如图3所示。
[0071] 3.2发丝抽取
[0072] 如图4所示,在得到步骤3.1的稀疏二维方向场后,本方法将这个方向场转换为对应单独发丝结构的曲线几何的集合。由于本方法的输入是单幅未知光照条件的图片,要想恢复准确的三维曲线几乎是不可能的,因此这一步中本方法在图像的二维平面上抽取所有的曲线几何,并对所有相交的发丝求解其正确的拓扑关系存为对应曲线顶点的局部层次关系,如图5所示。
[0073] 首先在头发区域内选取种子像素点作为发丝追踪的起点。在置信值图上选取置信度的局部最大值点P作为种子点,令其满足:
[0074]
[0075] wP>whigh;
[0076] 其中 与 为在垂直于P上局部方向 的两边方向上,通过双线性插值方法采样得到的临近置信度值。对于普通图片,令whigh=0.3,wlow=0.05,∈=0.2。对于任一选取的种子点Pseed及其局部方向 本方法同时从其相反的两个方向上进行发丝追踪。类似现有的方法,每一步发丝追踪都通过在当前位置P沿角度 对应的方向vP,向前延伸曲线:
[0077]
[0078] 对每个发丝追踪过程,都维护一个追踪状态与一个健康度值:追踪过程的一开始健康度均初始为5,当健康度降至0则当前发丝的追踪过程结束。若当前追踪步骤的追踪状态为“确定的”,追踪方向决定于局部的方向场且将健康度重置为5;若追踪状态为“不确定的”,则追踪方向由上一个追踪顶点决定以保持曲线的曲率,并将健康度值减1。在追踪过程的每一步i,通过如下规则更新追踪状态:
[0079] 1)若i=0,将状态初始为“确定的”;
[0080] 2)若 则将状态改为“不确定的”;
[0081] 3)若 且 则将状态改为“不确定的”;
[0082] 4)若 且 则将状态改为“确定的”;
[0083] 5)否则保持当前的状态不变。
[0084] 若上述规则3)成立,本方法假设当前及其所有的后续“不确定”顶点都被其它的发丝所遮挡,因此将他们标记为被遮挡的。
[0085] 追踪过程中同时从种子点列表中去除那些发丝曲线上的像素点,来保证所有发丝都只被追踪一次。在本方法中,追踪步长δ为像素宽度的75%,θmax=π/6。在每个发丝追踪完成后都将首尾的“不确定的”顶点去除。
[0086] 由于可能的误差累积,上述步骤追踪得到的发丝很可能偏离正确的图像发丝中心。本方法在追踪得到每个顶点后都进行一步重定位修正如下:
[0087] 对于每个二维曲线顶点P,都在垂直于P上局部方向 的两边方向上采样得到的临近置信度值 与 拟合一个帐篷函数Λ(t)如下:令Λ(0)=wP,然后求取argmax(Λ(t))作为P在垂直方向上的修正偏移量。
[0088] 对于这一步生成的所有二维发丝顶点,都对其在图像中对应位置进行采样得到其颜色值。
[0089] 四、三维发型重建:结合步骤二中的拟合头部模型、相邻发丝深度的相似性以及发丝间相互遮挡关系进行能量优化,求解得到步骤三中生成的所有二维发丝的深度信息,基于这些三维发丝进行加密得到足够密集的包围头部的三维发丝集合作为恢复的发型模型,并为所有发丝顶点在原始图像中采样得到头发的颜色值;
[0090] 4.1深度估计
[0091] 假设发型最外圈轮廓处的深度都为0(即头部模型中心的深度);挡住头部前额的发丝深度为头部模型对应位置深度加上发型厚度值;在两者之间的其它发丝的深度将在这一步中进行求解并保持二维发丝抽取中得到的相互遮挡关系。
[0092] 在深度优化过程中定义如下的深度限制:
[0093] 1)深度限制:来限制前额与轮廓处等已知部分的深度值。用户同样可以通过画刷工具手动指定部分位置的深度;
[0094] 2)发丝限制:保持一条发丝上相邻顶点的深度光滑,防止尖角的产生;
[0095] 3)领域限制:保持相邻类似方向顶点的深度一致性。
[0096] 令Pi为第i个发丝顶点的位置,Z(Pi)为其深度值,分别定义上述限制的能量如下:
[0097]
[0098]
[0099]
[0100] 其中 为Pi的预定义深度值, 包含Pi的不在同一发丝上的相邻顶点,其方向相近且有相同的遮挡标记。
[0101] 最终通过对如下能量E进行最小化求解,得到所有发丝顶点的深度值:
[0102] E=wZEZ+wSES+wNEN;
[0103] 令wZ=5,wS=2,wN=1。使用共轭梯度法进行求解。
[0104] 4.2三维发丝合成
[0105] 真实的头发会构成一个围绕头部的空间区域,而到步骤4.1本方法生成的三维头发模型仅仅包含在图片中可视的区域,它们通常只包含整个发型模型前半的最外层。由于真实发型的复杂结构与多种格,任何对不可见部分的假设都不可能永远成立。因此,本过程的目标在于定义一个头发空间区域,使得:1)在原始视点下渲染,与原肖像发型相比不会增加任何发丝;2)从前半(可见部分)光滑过渡到后半(不可见部分)。
[0106] 首先,定义如下三个深度图:Dfront,Dmiddle与Dback。其中,前部深度图Dfront通过将计算得到的稀疏三维发丝光栅化得到的,然后将被三维发丝覆盖到的像素的深度值均匀扩散到整个头发区域。为了计算Dmiddle,首先将原始的头发区域与头部模型投影后得到的头部区域合并为一扩展的头发区域,将原始头发区域轮廓处的深度值作为边界条件,将其扩散到整个扩展头发区域内,从而生成中层深度图Dmiddle。后部深度图Dback通过固定区域边界的深度值,将区域内部的深度向后均匀延伸生成,使其深度在头部之后并使得整个区域完全覆盖脑后。这三层深度将整个头发区域划分为两个封闭的区域,对任一三维点P(x,y,z),若Dfront(x,y)
[0107] 同样通过扩散的方法,将发丝的三维方向、颜色与不透明度值从这三层向发型模型内部扩散。对三维方向,首先将其转化为结构张量再将其向内扩散。对Dmiddle与Dback不可见部分的头发颜色,将可见部分作为来源,同样采用PatchMatch方法进行图像合成。对于本方法的应用,并不需要填充所有内部区域,仅需要构成一个厚度足够的无缝外层边缘即可。
[0108] 与发型采集的相关工作不同,本方法并不要求所有三维发丝起始于头皮位置,因为可能导致在原视点下重新渲染结果与原图像间不必要的差异。因此,本方法从发型模型内部的随机点开始追踪额外的三维发丝。追踪过程中同时记录所有体素上的发丝密度。当某体素的发丝密度超过一定阈值即终止。
[0109] 五、合成与应用:利用前面步骤一至四的人物发型模型、人物头部模型等重建的三维信息,可方便实现肖像立体化、发型迁移、发型编辑等肖像编辑功能。
[0110] 5.1肖像立体化
[0111] 如图6所示,将单幅肖像中的人物进行重建是一个有很高价值的交互应用。但是由于人物发型的复杂结构,现有方法仅能关注脸部区域,或对拟合得到的头部模型添加虚构的发型。但是应用本方法构造的基于发丝的头发模型可以生成更逼真的头部角色。
[0112] 5.2发型迁移
[0113] 如图7所示,对肖像中人物的发型进行替换允许用户尝试不同种类的发型并看到可能的实际效果。给定来源肖像图片Isrc与目标肖像图片Idst,本应用的目标是将目标肖像图片Idst中的发型替换为来源肖像图片Isrc中的发型。首先从Isrc中提取其发型模型与头部模型,并为Idst构建一个肖像立体化模型。利用来源肖像与目标肖像头部模型顶点之间的一一对应关系,可以计算从Isrc到Idst的头部的变换矩阵MT,来弥补两者在形状与位置上的差异。MT包括两个部分:在头部模型拟合过程中计算得到的平移与旋转参数以及将两个头部模型包围盒进行对齐的缩放参数。随后便将从Isrc中提取的发型模型经过MT变换至Idst中的合适位置。
[0114] 为了提高结果的真实性,对迁移后的发型模型与目标人物之间计算相互间的环境光遮挡效果。为了避免对目标产生对度的变暗效果,本方法去除自遮挡效果而仅考虑发型与目标间的相互遮挡。
[0115] 5.3发型编辑
[0116] 通过利用三维发型模型,可以实现许多工具来允许用户编辑肖像发型,例如编辑颜色、光滑度、高光或者增加几何细节。用户可以在发丝尺度上修改发型颜色或者增加颜色细节,光滑度的修改是通过简单对发丝顶点上的颜色进行滤波操作。当编辑发型高光时,初始假设场景中只存在位于摄像机位置的一个点光源(模拟相机闪光灯)并允许用户对其进行实时修改,本方法采用Marschner模型(Marschner,S.,Jensen,H.W.,Cammarano,M.,Worley,S.,and Hanrahan,P.2003.Light scattering from human hair fibers.ACM Trans.Graph.22,3,780-791.)来对发型增加高光效果。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈