CN108629834B - 一种基于单张图片的三维头发重建方法 - Google Patents
一种基于单张图片的三维头发重建方法 Download PDFInfo
- Publication number
- CN108629834B CN108629834B CN201810438459.8A CN201810438459A CN108629834B CN 108629834 B CN108629834 B CN 108629834B CN 201810438459 A CN201810438459 A CN 201810438459A CN 108629834 B CN108629834 B CN 108629834B
- Authority
- CN
- China
- Prior art keywords
- hair
- model
- strip
- retrieval
- grid
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
- G06T15/405—Hidden part removal using Z-buffer
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于单张图片的三维头发重建方法,包括:1)条带网格头发模型生成;2)条带网格头发模型数据库构建;3)基于图片的发型检索(发型检索);4)条带网格头发与头部融合(头发融合)。主要流程:将头发丝模型转化为条带网格模型,并构建条带网格头发模型数据库,给定输入图像,首先从其头发区域提取头发形状检索图,头发形状特征向量和头发方向图作为检索信息,然后从条带网格头发模型数据库中检索出与该检索信息最相似的头发模型,最后把该头发模型贴合到人体头部模型中。本发明解决的是针对单张图片的三维头发重建问题,可以应用于头发重建、头发动画制作。
Description
技术领域
本发明涉及计算机图形学和三维动画制作的技术领域,尤其是指一种基于单张图片的三维头发重建方法。
背景技术
人类既是各种活动的主体,又是很多应用的对象,因而虚拟现实应用大都不可避免以人为中心。人体表面形状及其运动的重建在这类应用中起到关键作用,从日常生活、游戏动画、教育培训到工业设计,构建高度真实的个性化虚拟人体静态模型和动态几何都日渐显示出其重要性。例如,在虚拟试衣中,除了身体形状和运动信息,试衣人的脸部表情、头发飘舞等,都会对体验效果产生影响。而在很多虚拟现实应用中,场景中的人物外观的逼真程度是衡量沉浸感强弱的一个重要指标。头发重建是构建真实人物外观的一个重要步骤。
以往的头发重建工作往往针对的是头发丝的重建。虽然使用头发丝进行重建可以最终渲染出非常逼真的结果,但这个渲染过程往往是离线的。在目前虚拟现实,3D游戏等应用场景中,用头发丝进行头发重建,不仅需要较大的存储空间,而且渲染难度较大,不利于其在实时环境中进行应用。使用头发丝这种无网格的表示形式也与目前实时渲染管线中常用的三角网格表示形式不匹配。因此本发明考虑的是针对单张图片进行条带网格头发的重建,而不是头发丝的重建。生成的头发带模型可以很方便地用在现有的游戏引擎,如Unity3D中。
发明内容
本发明针对目前三维头发重建工作不利于实时渲染的问题,提出了一种基于单张图片的三维头发重建方法,可以根据人脸图像重建出形状与原图接近的,可用于实时渲染的三维头发模型。
为实现上述目的,本发明所提供的技术方案为:一种基于单张图片的三维头发重建方法,包括以下步骤:
1)条带网格头发模型生成
将头发丝模型转换为条带网格头发模型,其中利用方向约束调整条带网格的朝向;
2)条带网格头发模型数据库构建
使用步骤1)方法生成条带网格头发模型,构造出一个包含686个条带网格头发模型的头发数据库,并为生成的条带网格头发模型生成检索用的头发形状检索图、头发形状特征向量和头发方向检索图;
3)基于图片的发型检索
从输入图片中获得头发形状检索图、头发形状特征向量和头发方向检索图,并根据头发距离公式从步骤2)中获得的条带网格头发模型数据库中计算并检索出与输入图片头发区域最相似的头发模型;
4)条带网格头发与头部融合
利用整体和局部变换将步骤3)中检索出的头发模型贴合到人头网格模型中进行融合。
在步骤1)中,所述的条带网格头发模型生成,其过程为:
首先将头发丝模型转换为条带网格头发模型,其中单个头发丝模型具体转化方法如下:
a)将该头发丝模型{Pj}的重心移动至笛卡尔坐标系的原点,第j条头发丝记为Pj的第i个采样点表示pi=(xi,yi,zi),其用笛卡尔坐标系来表示,p0表示头发丝根的位置,根据公式(1)计算第i个采样点的球坐标(ri,φi,θi):
其中arccos为反余弦函数,arctan为反正切函数;利用球坐标计算第i个采样点对应的三个正交方向ET,i,EN,i,EB,i如下:
其中ET,i为第i个采样点沿头发丝轴线的方向;根据采样点pi,以及它的三个正交方向,设定一个半径,然后生成螺旋圆柱网格头发;
b)若生成的是圆柱状的螺旋线结构,EN,i,EB,i的朝向并不会影响最终的显示结果;与螺旋圆柱网格头发不同,在此需要生成的是条带网格;假如将pi处的条带的平面设置为ET,i和EN,i构成的平面中,那么EN,i,EB,i的朝向会影响条带平面的朝向,并影响最终的视觉结果,因此需要对EN,i,EB,i的方向进行约束;而ET,i因为一直沿着头发法向,故通常情况下不需要进行修改;若不对条带平面进行约束,则在某些视角下看到的只是平面的切面,这将对头发的渲染结果造成不良影响;加入约束后,能在大多数视角上获得好的渲染结果;具体地,为EN,EB计算一个修正角度θrot,将EN和EB绕ET逆时针旋转角度θrot,得到一个新的方向E'N,E'B,这两个方向依旧与ET保持正交的关系,其中E'B将作为头发带平面的朝向,这个平面的朝向与头发带的法向一致;因为头发丝模型的重心位于原点,因此每根头发丝的采样点的坐标pi能够近似看作采样点的方向,记为Diri,这个将作为对条带朝向的约束,即希望得到的条带的朝向尽可能地接近于Diri;为了使各个相邻采样点间的角度应尽量接近,加入角度的平滑项,得到能量式子(3):
其中求解的目标为采样点修正角度的集合P={pi}为一条头发丝采样点的集合;表示将Eb,i绕ET逆时针旋转角度N(i)表示与第i个采样点相邻的采样点的序号;wsmooth为平滑项,用于控制角度的平滑程度;在实际求解计算过程中,若ET,i与Diri非常接近时,求解将变得不准确,此时只用平滑项进行约束;
c)实际使用中不需要使用所有的头发丝来生成条带头发,因此使用K-MEANS算法对头发丝进行聚类,聚类数量设置为100,聚类中的特征向量使用的是头发根节点的位置、头发的长度、头发的方向信息;然后以离聚类的中心最近的头发丝作为头发带生成的位置,并按照上面的方法将该头发丝生成头发带;但这样生成的头发带可能不能覆盖整个头部,因此通过在未覆盖区域周围搜索最近的头发带,并将该头发带复制到该区域,迭代多次,直到未覆盖区域的面积小于设定的阈值;
在步骤2)中,所述的条带头发数据库构建,其过程为:
根据a)的条带网格生成方法,将343个头发丝模型转换为条带网格模型,再对头发模型左右翻转,使得最终数据库中共包含686个发型;为了使用头发形状和头发走向这两个信息来检索头发,需要为数据库中的条带网格模型生成检索所用的信息;具体地,首先将头发都根据仿射变换放置在一个统一的人体模型中,然后根据模型人脸中的特征点选择包围盒,确定渲染图的尺寸以及模型在渲染图中的位置,接着使用z-buffer渲染算法生成头发形状检索图;将整个人体都放进去渲染是考虑到在头发长时,只放头部模型时得到的渲染图不符合遮挡关系,可能导致错误的检索结果;为了能检索到符合方向信息的头发模型,需为生成的条带网格模型上色,颜色代表头发的走向,使用z-buffer渲染算法生成方向检索图;为了加快检索的速度,对于头发形状检索图,进一步以人脸为中心,使用极坐标将渲染图均匀分为Nbin个区间,以正上方为极坐标原点,按顺时针方向在每个区间统计头发像素的大小,从而得到Nbin维特征向量;这个特征向量能用于估计头发的形状,有利于对头发模型进行检索;使用的检索图尺寸统一设为宽100,高213;形状检索图使用红色作为头发区域,方向检索图只保留头发区域的颜色值,其它均设为黑色;使用的头发颜色不包含黑色,因此黑色作为背景不会引起歧义。
在步骤3)中,所述的基于图片的发型检索,其过程为:
首先,通过人脸特征点检测库检测出图片上的人脸特征点,根据图片上的人脸特征点计算包围盒,将头发分割图中的头发区域图以及头发方向图都变化到与数据库中检索图一致的尺寸,并计算出头发形状特征向量f;利用Gabor滤波器配合手工交互修正,得到图片头发区域头发丝的走向,这些走向是以有序分段直线的方式来表示的,其中每个分段点都记录颜色信息,接着把这些分段直线都对齐到数据库中的头发方向检索图mt,其中mt对应于发型然后把这些分段直线光栅化,生成与mt相同尺寸的颜色检索图ms,其中ms对应于发型于是发型与发型间距离的具体计算方式如下:
其中 分别代表发型和发型的头发形状的特征向量; 分别代表发型检索图的第i个像素的颜色值以及发型检索图的第i个像素的颜色值,均为0~255间;代表发型的方向检索图与发型方向检索图中重合部分的像素序号的集合;代表这个集合中像素序号的数量;wc控制第二项的影响权重;这个距离计算公式用于检索一个头发形状以及头发的方向都尽可能接近的发型。
在步骤4)中,所述的条带网格头发与头部融合,其过程为:
预先在人体头部网格上划定头壳区域,即认为发根应只出现在这个区域;对条带头发的位置进行修正,修正方法如下:
a)对头发整体位置进行修正:在每个条带头发网格的根部顶点寻找头部网格头壳区域的最近点它们分别构成顶点集合vroot和vFLAME,然后计算一个变换矩阵MT,使得经过这个变换后的vroot与vFLAME间的距离最小;vroot经过MT变换后记为
本发明与现有技术相比,具有如下优点与有益效果:
1、重建结果更完整
图10展示本方法与Cao等方法在头发重建效果的对比,可以看到,本方法构造的头发有比较完整的结构,其边缘也有比较好的头发丝过渡感;Cao等方法重建的是粗糙的网格,不是完整的头发重建。
2、重建结果适合于实时渲染
本方法的头发的渲染方式如图7所示,只要提供一些合适的贴图,就可以基于现有游戏引擎对头发进行实时渲染,重建的条带网格结果适合于现有的实时渲染管线。
附图说明
图1为本发明的三维头发重建方法流程图。
图2为本发明所用头发丝数据库示意图。
图3为条带网格和圆柱形网格对比示意图。
图4为无视角约束与有视角约束对比图。
图5为本发明视角约束示意图。
图6为本发明的数据库检索图示意图。
图7为本发明头发渲染示意图。
图8为本发明头发重建算法的时间统计图。
图9为本发明发型检索的结果图。
图10为本发明的重建结果与Cao等结果的对比图。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
本实施例所提供的基于单张图片的三维头发重建方法,其具体情况如下:将头发丝模型转化为条带网格模型,并构建条带网格头发模型数据库,给定输入图像,首先从其头发区域提取头发形状检索图,头发形状特征向量和头发方向图作为检索信息,然后从条带网格头发模型数据库中检索出与该检索信息最相似的头发模型,最后把该头发模型贴合到人体头部模型中。以此为基础,本发明提出三维头发重建框架,如图1所示。
本实施例所述的基于单张图片的三维头发重建方法,算法流程如图1所示,包括以下步骤:
1)条带网格头发模型生成
a)将该头发丝模型{Pj}的重心移动至笛卡尔坐标系的原点,第j条头发丝(记为Pj)的第i个采样点表示pi=(xi,yi,zi),其用笛卡尔坐标系来表示,p0表示头发丝根的位置,根据公式(1)计算第i个采样点的球坐标(ri,φi,θi):
其中arccos为反余弦函数,arctan为反正切函数;利用球坐标计算第i个采样点对应的三个正交方向ET,i,EN,i,EB,i如下:
其中ET,i为第i个采样点沿头发丝轴线的方向;根据采样点pi,以及它的三个正交方向,设定一个半径,然后生成螺旋圆柱网格头发;
b)若生成的是圆柱状的螺旋线结构,如图3中(a)所示,EN,i,EB,i的朝向并不会影响最终的显示结果;与螺旋圆柱网格头发不同,在此需要生成的是条带网格,如图3中(b)所示;假如将pi处的条带的平面设置为ET,i和EN,i构成的平面中,那么EN,i,EB,i的朝向会影响条带平面的朝向,并影响最终的视觉结果,因此需要对EN,i,EB,i的方向进行约束;而ET,i因为一直沿着头发法向,故通常情况下不需要进行修改;若不对条带平面进行约束,则在某些视角下看到的只是平面的切面,这将对头发的渲染结果造成不良影响;加入约束后,能在大多数视角上获得好的渲染结果,如图4所示;具体地,为EN,EB计算一个修正角度θrot,将EN和EB绕ET逆时针旋转角度θrot,得到一个新的方向E'N,E'B,这两个方向依旧与ET保持正交的关系,其中E'B将作为头发带平面的朝向,这个平面的朝向与头发带的法向一致;因为头发丝模型的重心位于原点,因此每根头发丝的采样点的坐标pi能够近似看作采样点的方向,记为Diri,这个将作为对条带朝向的约束,即希望得到的条带的朝向尽可能地接近于Diri;为了使各个相邻采样点间的角度应尽量接近,加入角度的平滑项,得到能量式子(3):
其中求解的目标为采样点修正角度的集合P={pi}为一条头发丝采样点的集合;表示将Eb,i绕ET逆时针旋转角度N(i)表示与第i个采样点相邻的采样点的序号;wsmooth为平滑项,用于控制角度的平滑程度;在实际求解计算过程中,若ET,i与Diri非常接近时,求解将变得不准确,此时只用平滑项进行约束,如图5所示;
c)实际使用中不需要使用所有的头发丝来生成条带头发,因此使用K-MEANS算法对头发丝进行聚类,聚类数量设置为100,聚类中的特征向量使用的是头发根节点的位置、头发的长度、头发的方向信息;然后以离聚类的中心最近的头发丝作为头发带生成的位置,并按照上面的方法将该头发丝生成头发带;但这样生成的头发带可能不能覆盖整个头部,因此通过在未覆盖区域周围搜索最近的头发带,并将该头发带复制到该区域,迭代多次,直到未覆盖区域的面积小于设定的阈值。
2)条带头发数据库构建
据a)的条带网格生成方法,将343个头发丝模型(如图2所示)转换为条带网格模型,再对头发模型左右翻转,使得最终数据库中共包含686个发型;为了使用头发形状和头发走向这两个信息来检索头发,需要为数据库中的条带网格模型生成检索所用的信息;具体地,首先将头发都根据仿射变换放置在一个统一的人体模型中,然后根据模型人脸中的特征点选择包围盒,确定渲染图的尺寸以及模型在渲染图中的位置,接着使用z-buffer渲染算法生成头发形状检索图;将整个人体都放进去渲染是考虑到在头发长时,只放头部模型时得到的渲染图不符合遮挡关系,可能导致错误的检索结果;为了能检索到符合方向信息的头发模型,需为生成的条带网格模型上色,颜色代表头发的走向,使用z-buffer渲染算法生成方向检索图;为了加快检索的速度,对于头发形状检索图,进一步以人脸为中心,使用极坐标将渲染图均匀分为Nbin个区间,以正上方为极坐标原点,按顺时针方向在每个区间统计头发像素的大小,从而得到Nbin维特征向量;这个特征向量能用于估计头发的形状,有利于对头发模型进行检索;使用的检索图尺寸统一设为宽100,高213;形状检索图使用红色作为头发区域,方向检索图只保留头发区域的颜色值,其它均设为黑色;使用的头发颜色不包含黑色,因此黑色作为背景不会引起歧义;检索图如图6所示。
3)基于图片的发型检索
先通过人脸特征点检测库检测出图片上的人脸特征点,根据图片上的人脸特征点计算包围盒,将头发分割图中的头发区域图以及头发方向图都变化到与数据库中检索图一致的尺寸,并计算出头发形状特征向量f;利用Gabor滤波器配合手工交互修正,得到图片头发区域头发丝的走向,这些走向是以有序分段直线的方式来表示的,其中每个分段点都记录颜色信息,接着把这些分段直线都对齐到数据库中的头发方向检索图mt,其中mt对应于发型然后把这些分段直线光栅化,生成与mt相同尺寸的颜色检索图ms,其中ms对应于发型于是发型与发型间距离的具体计算方式如下:
其中 分别代表发型和发型的头发形状的特征向量; 分别代表发型检索图的第i个像素的颜色值以及发型检索图的第i个像素的颜色值,均为0~255间;代表发型的方向检索图与发型方向检索图中重合部分的像素序号的集合;代表这个集合中像素序号的数量;wc控制第二项的影响权重;这个距离计算公式用于检索一个头发形状以及头发的方向都尽可能接近的发型,检索结果如图9所示。
4)条带网格头发与头部融合
预先在人体头部网格上划定头壳区域,即认为发根应只出现在这个区域;对条带头发的位置进行修正,修正方法如下:
a)对头发整体位置进行修正:在每个条带头发网格的根部顶点寻找头部网格头壳区域的最近点它们分别构成顶点集合vroot和vFLAME,然后计算一个变换矩阵MT,使得经过这个变换后的vroot与vFLAME间的距离最小;vroot经过MT变换后记为
综上所述,在采用以上方案后,本发明提出的一种基于单张图片重建三维头发的方法,重建的头发模型符合输入图片,且有利于实时渲染。本头发重建方法的技术特点在于:
a)将头发丝模型转换为条带网格头发模型,利用方向约束调整条带网格的朝向;
b)生成条带网格头发模型,构造出一个包含686个条带网格头发模型的头发数据库,并为生成的条带网格头发模型生成检索用的头发形状检索图,头发形状特征向量,头发方向检索图;
c)从输入图片中获得头发区域的形状检索图、形状特征向量和方向图,并根据头发距离公式从条带网格头发模型数据库中计算并检索出与输入图片头发区域最相似的头发模型;
d)利用整体和局部变换将中检索出的头发模型贴合到人头网格模型中。
本发明经过实验验证其可行性,能广泛用于不同输入图像的头发重建工作;头发的渲染方式如图7所示;头发重建时间如图8所示;对头发发型检索的结果如图9所示(排在最前面的发型最相似);图10展示本方法与Cao等方法在头发重建效果的对比,可以看到,本方法构造的头发有比较完整的结构,其边缘也有比较好的头发丝过渡感;Cao等方法重建的是粗糙的网格,不是完整的头发重建;本方法重建的条带网格结果适合于现有的实时渲染管线。
从上述结果可以看出,本发明重建结果与输入图片相似度高,重建结果完整,重建结果适合于现有实时渲染管线,值得推广。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (4)
1.一种基于单张图片的三维头发重建方法,其特征在于,包括以下步骤:
1)条带网格头发模型生成
将头发丝模型转换为条带网格头发模型,其中利用方向约束调整条带网格的朝向;所述的条带网格头发模型生成,其过程为:
首先将头发丝模型转换为条带网格头发模型,其中单个头发丝模型具体转化方法如下:
a)将该头发丝模型{Pj}的重心移动至笛卡尔坐标系的原点,第j条头发丝记为Pj的第i个采样点表示pi=(xi,yi,zi),其用笛卡尔坐标系来表示,p0表示头发丝根的位置,根据公式(1)计算第i个采样点的球坐标(ri,φi,θi):
其中arccos为反余弦函数,arctan为反正切函数;利用球坐标计算第i个采样点对应的三个正交方向ET,i,EN,i,EB,i如下:
其中ET,i为第i个采样点沿头发丝轴线的方向;根据采样点pi,以及它的三个正交方向,设定一个半径,然后生成螺旋圆柱网格头发;
b)若生成的是圆柱状的螺旋线结构,EN,i,EB,i的朝向并不会影响最终的显示结果;与螺旋圆柱网格头发不同,在此需要生成的是条带网格;假如将pi处的条带的平面设置为ET,i和EN,i构成的平面中,那么EN,i,EB,i的朝向会影响条带平面的朝向,并影响最终的视觉结果,因此需要对EN,i,EB,i的方向进行约束;而ET,i因为一直沿着头发法向,故通常情况下不需要进行修改;若不对条带平面进行约束,则在某些视角下看到的只是平面的切面,这将对头发的渲染结果造成不良影响;加入约束后,能在大多数视角上获得好的渲染结果;具体地,为EN,EB计算一个修正角度θrot,将EN和EB绕ET逆时针旋转角度θrot,得到一个新的方向E'N,E'B,这两个方向依旧与ET保持正交的关系,其中E'B将作为头发带平面的朝向,这个平面的朝向与头发带的法向一致;因为头发丝模型的重心位于原点,因此每根头发丝的采样点的坐标pi能够近似看作采样点的方向,记为Diri,这个将作为对条带朝向的约束,即希望得到的条带的朝向尽可能地接近于Diri;为了使各个相邻采样点间的角度应尽量接近,加入角度的平滑项,得到能量式子(3):
其中求解的目标为采样点修正角度的集合P={pi}为一条头发丝采样点的集合;表示将Eb,i绕ET逆时针旋转角度N(i)表示与第i个采样点相邻的采样点的序号;wsmooth为平滑项,用于控制角度的平滑程度;在实际求解计算过程中,若ET,i与Diri非常接近时,求解将变得不准确,此时只用平滑项进行约束;
c)实际使用中不需要使用所有的头发丝来生成条带头发,因此使用K-MEANS算法对头发丝进行聚类,聚类数量设置为100,聚类中的特征向量使用的是头发根节点的位置、头发的长度、头发的方向信息;然后以离聚类的中心最近的头发丝作为头发带生成的位置,并按照上面的方法将该头发丝生成头发带;但这样生成的头发带可能不能覆盖整个头部,因此通过在未覆盖区域周围搜索最近的头发带,并将该头发带复制到该区域,迭代多次,直到未覆盖区域的面积小于设定的阈值;
2)条带网格头发模型数据库构建
使用步骤1)方法生成条带网格头发模型,构造出一个包含686个条带网格头发模型的头发数据库,并为生成的条带网格头发模型生成检索用的头发形状检索图、头发形状特征向量、头发方向检索图;
3)基于图片的发型检索
从输入图片中获得头发形状检索图、头发形状特征向量、头发方向检索图,并根据头发距离公式从步骤2)中获得的条带网格头发模型数据库中计算并检索出与输入图片头发区域最相似的头发模型;
4)条带网格头发与头部融合
利用整体和局部变换将步骤3)中检索出的头发模型贴合到人头网格模型中进行融合。
2.根据权利要求1所述的一种基于单张图片的三维头发重建方法,其特征在于:在步骤2)中,所述的条带头发数据库构建,其过程为:
根据上面步骤a)的条带网格生成方法,将343个头发丝模型转换为条带网格模型,再对头发模型左右翻转,使得最终数据库中共包含686个发型;为了使用头发形状和头发走向这两个信息来检索头发,需要为数据库中的条带网格模型生成检索所用的信息;具体地,首先将头发都根据仿射变换放置在一个统一的人体模型中,然后根据模型人脸中的特征点选择包围盒,确定渲染图的尺寸以及模型在渲染图中的位置,接着使用z-buffer渲染算法生成头发形状检索图;将整个人体都放进去渲染是考虑到在头发长时,只放头部模型时得到的渲染图不符合遮挡关系,可能导致错误的检索结果;为了能检索到符合方向信息的头发模型,需为生成的条带网格模型上色,颜色代表头发的走向,使用z-buffer渲染算法生成方向检索图;为了加快检索的速度,对于头发形状检索图,进一步以人脸为中心,使用极坐标将渲染图均匀分为Nbin个区间,以正上方为极坐标原点,按顺时针方向在每个区间统计头发像素的大小,从而得到Nbin维特征向量;这个特征向量能用于估计头发的形状,有利于对头发模型进行检索;使用的检索图尺寸统一设为宽100,高213;形状检索图使用红色作为头发区域,方向检索图只保留头发区域的颜色值,其它均设为黑色;使用的头发颜色不包含黑色,因此黑色作为背景不会引起歧义。
3.根据权利要求1所述的一种基于单张图片的三维头发重建方法,其特征在于:在步骤3)中,所述的基于图片的发型检索,其过程为:
首先,通过人脸特征点检测库检测出图片上的人脸特征点,根据图片上的人脸特征点计算包围盒,将头发分割图中的头发区域图以及头发方向图都变化到与数据库中检索图一致的尺寸,并计算出头发形状特征向量f;利用Gabor滤波器配合手工交互修正,得到图片头发区域头发丝的走向,这些走向是以有序分段直线的方式来表示的,其中每个分段点都记录颜色信息,接着把这些分段直线都对齐到数据库中的头发方向检索图mt,其中mt对应于发型然后把这些分段直线光栅化,生成与mt相同尺寸的颜色检索图ms,其中ms对应于发型于是发型与发型间距离的具体计算方式如下:
4.根据权利要求1所述的基于单张图片的三维头发重建方法,其特征在于:在步骤4)中,所述的条带网格头发与头部融合,其过程为:
预先在人体头部网格上划定头壳区域,即认为发根应只出现在这个区域;对条带头发的位置进行修正,修正方法如下:
a)对头发整体位置进行修正:在每个条带头发网格的根部顶点寻找头部网格头壳区域的最近点它们分别构成顶点集合vroot和vFLAME,然后计算一个变换矩阵MT,使得经过这个变换后的vroot与vFLAME间的距离最小;vroot经过MT变换后记为
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810438459.8A CN108629834B (zh) | 2018-05-09 | 2018-05-09 | 一种基于单张图片的三维头发重建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810438459.8A CN108629834B (zh) | 2018-05-09 | 2018-05-09 | 一种基于单张图片的三维头发重建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108629834A CN108629834A (zh) | 2018-10-09 |
CN108629834B true CN108629834B (zh) | 2020-04-28 |
Family
ID=63692436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810438459.8A Active CN108629834B (zh) | 2018-05-09 | 2018-05-09 | 一种基于单张图片的三维头发重建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108629834B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109685876B (zh) * | 2018-12-21 | 2020-11-03 | 北京达佳互联信息技术有限公司 | 毛发渲染方法、装置、电子设备及存储介质 |
CN109857311A (zh) * | 2019-02-14 | 2019-06-07 | 北京达佳互联信息技术有限公司 | 生成人脸三维模型的方法、装置、终端及存储介质 |
CN112767536B (zh) * | 2021-01-05 | 2024-07-26 | 中国科学院上海微系统与信息技术研究所 | 一种对象的三维重建方法、装置、设备及存储介质 |
CN112862807B (zh) * | 2021-03-08 | 2024-06-25 | 网易(杭州)网络有限公司 | 基于头发图像的数据处理方法及装置 |
CN112991523B (zh) * | 2021-04-02 | 2023-06-30 | 福建天晴在线互动科技有限公司 | 一种高效自动化的头发匹配头型生成方法及其生成装置 |
CN113269822B (zh) * | 2021-05-21 | 2022-04-01 | 山东大学 | 用于3d打印的人物发型肖像重建方法及系统 |
CN113269888B (zh) * | 2021-05-25 | 2022-08-19 | 山东大学 | 一种发型三维建模方法、人物三维建模方法及系统 |
CN114022395B (zh) * | 2022-01-06 | 2022-04-12 | 广州卓腾科技有限公司 | 一种证件照头发颜色矫正方法、装置及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5252074A (en) * | 1991-10-25 | 1993-10-12 | Pivot Point International, Inc. | Magnetic three-dimensional analysis system for hairdressing education |
CN102800129A (zh) * | 2012-06-20 | 2012-11-28 | 浙江大学 | 一种基于单幅图像的头发建模和肖像编辑方法 |
CN103955962A (zh) * | 2014-04-21 | 2014-07-30 | 华为软件技术有限公司 | 一种虚拟人头发生成的装置及方法 |
CN104376597A (zh) * | 2014-12-05 | 2015-02-25 | 北京航空航天大学 | 一种基于多方向约束的头发重建方法 |
CN105405163A (zh) * | 2015-12-28 | 2016-03-16 | 北京航空航天大学 | 一种基于多方向场的逼真的静态头发建模方法 |
CN106960465A (zh) * | 2016-12-30 | 2017-07-18 | 北京航空航天大学 | 一种基于方向场和螺旋线匹配的单幅图像头发重建方法 |
CN107146273A (zh) * | 2017-05-11 | 2017-09-08 | 北京航空航天大学 | 一种面向基于图像头发建模的自适应浮动切线匹配方法 |
-
2018
- 2018-05-09 CN CN201810438459.8A patent/CN108629834B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5252074A (en) * | 1991-10-25 | 1993-10-12 | Pivot Point International, Inc. | Magnetic three-dimensional analysis system for hairdressing education |
CN102800129A (zh) * | 2012-06-20 | 2012-11-28 | 浙江大学 | 一种基于单幅图像的头发建模和肖像编辑方法 |
CN103955962A (zh) * | 2014-04-21 | 2014-07-30 | 华为软件技术有限公司 | 一种虚拟人头发生成的装置及方法 |
CN104376597A (zh) * | 2014-12-05 | 2015-02-25 | 北京航空航天大学 | 一种基于多方向约束的头发重建方法 |
CN105405163A (zh) * | 2015-12-28 | 2016-03-16 | 北京航空航天大学 | 一种基于多方向场的逼真的静态头发建模方法 |
CN106960465A (zh) * | 2016-12-30 | 2017-07-18 | 北京航空航天大学 | 一种基于方向场和螺旋线匹配的单幅图像头发重建方法 |
CN107146273A (zh) * | 2017-05-11 | 2017-09-08 | 北京航空航天大学 | 一种面向基于图像头发建模的自适应浮动切线匹配方法 |
Non-Patent Citations (2)
Title |
---|
"Real-time Hair Mesh Simulation";Wu K etc.;《ACM Siggraph Symposium on Interactive 3d Graphics&Game》;20160228;全文 * |
"基于深度扫描仪的高辨识度三维人体模型";韩凯等;《图学学报》;20150831;第36卷(第4期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108629834A (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108629834B (zh) | 一种基于单张图片的三维头发重建方法 | |
Zhuang et al. | Dreameditor: Text-driven 3d scene editing with neural fields | |
US9792725B2 (en) | Method for image and video virtual hairstyle modeling | |
US11217010B2 (en) | Sketch-based shape-preserving tree animation method | |
Hu et al. | Self-supervised 3d mesh reconstruction from single images | |
EP1986158B1 (en) | Decorating computer generated character with surface attached features | |
Zhang et al. | Avatarverse: High-quality & stable 3d avatar creation from text and pose | |
Shen et al. | Deepsketchhair: Deep sketch-based 3d hair modeling | |
CN113593001A (zh) | 目标对象三维重建方法、装置、计算机设备和存储介质 | |
CN111524226B (zh) | 讽刺肖像画的关键点检测与三维重建方法 | |
CN116385667B (zh) | 三维模型的重建方法、纹理重构模型的训练方法以及装置 | |
CN113822965A (zh) | 图像渲染处理方法、装置和设备及计算机存储介质 | |
EP1986157B1 (en) | Placing skin-attached features on a computer generated character | |
CN115861525A (zh) | 基于参数化模型的多视图人脸重建方法 | |
Fei et al. | 3d gaussian splatting as new era: A survey | |
Du et al. | SAniHead: Sketching animal-like 3D character heads using a view-surface collaborative mesh generative network | |
Maxim et al. | A survey on the current state of the art on deep learning 3D reconstruction | |
Kazmi et al. | Efficient sketch‐based creation of detailed character models through data‐driven mesh deformations | |
Yu et al. | Mean value coordinates–based caricature and expression synthesis | |
Bhardwaj et al. | SingleSketch2Mesh: generating 3D mesh model from sketch | |
CN115984510A (zh) | 一种风格化人脸纹理建模方法及系统、设备、存储介质 | |
Chen et al. | Character animation creation using hand-drawn sketches | |
Kim et al. | Ae-nerf: Auto-encoding neural radiance fields for 3d-aware object manipulation | |
CN118521699B (zh) | 一种虚拟人三维头发丝发型的生成方法及系统 | |
Cheng | Retracted: Application of VR computer image technology in 3D virtualization of sports human science |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |