CN105184735B - 一种人像变形方法及装置 - Google Patents
一种人像变形方法及装置 Download PDFInfo
- Publication number
- CN105184735B CN105184735B CN201410275849.XA CN201410275849A CN105184735B CN 105184735 B CN105184735 B CN 105184735B CN 201410275849 A CN201410275849 A CN 201410275849A CN 105184735 B CN105184735 B CN 105184735B
- Authority
- CN
- China
- Prior art keywords
- grid
- deformation
- picture
- control point
- pixel
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000001514 detection method Methods 0.000 claims description 19
- 239000000203 mixture Substances 0.000 claims description 6
- 239000002131 composite material Substances 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 description 13
- 210000001508 eye Anatomy 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 210000000056 organ Anatomy 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 210000004709 eyebrow Anatomy 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 210000000214 mouth Anatomy 0.000 description 2
- 210000001331 nose Anatomy 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/18—Image warping, e.g. rearranging pixels individually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/14—Transformations for image registration, e.g. adjusting or mapping for alignment of images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/165—Detection; Localisation; Normalisation using facial parts and geometric relationships
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Geometry (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
Abstract
本发明适用于图像处理领域,提供了一种人像变形方法及装置。所述方法包括:读取包含人像的图片;检测所述图片中人像的脸部特征;根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场,所述预先设定的控制点的个数大于1;将所述变形场作用在图片上,以将所述图片转换为变形后的图片。本发明实施例使变形后的人像线条更连续。
Description
技术领域
本发明属于图像处理领域,尤其涉及一种人像变形方法及装置。
背景技术
随着图像处理技术的发展及智能终端的普及,用户希望利用智能终端美化人像图片的愿望越来越强烈。
现有的对人像图片的变形方法主要为以下2种:
1)手动方法:该方法需要用户手动选取画刷大小,对用户希望修补的地方进行手动调整。参见图1,以对人像瘦脸为例,用户选取合适的瘦脸半径,得到图1显示的圆圈的瘦脸范围,再将该瘦脸范围定位到要变形的区域,最后对该要变形的区域进行变形。但该方法需要反复操作才能保证操作后的脸是左右对称,且瘦脸效果不错的,对操作用户的要求较高。
2)智能(自动)方法,该方法通过人脸检测算法自动确定变形范围,再根据用户通过强度进度条选择的变形强度自动对确定的变形范围执行变形操作。该方法虽然无需用户执行多次操作,但若选择的变形强度不对,则变形效果也不够理想。以现有的自动瘦脸方法为例,假设变形之前的人体头像如图2A所示,用户拖动强度进度条控制变形的强度,假设使用最强的变形强度对图2A的头像进行瘦脸变形,得到的效果图如图2B所示。从图2B可以看到,这种方法在较强的变形强度下,下巴变小,但脸部的其他部分没有很好的相应变化,从而导致脸部的线条不够连续,效果不好。这是因为现有的对人像图片自动变形方法是采用一个控制点得到的变形场,而由于控制点只对其附近区域的像素具有形变作用,因此在其他区域的像素没有相应的形变时,导致整个变形场的线条不够连续。其中,一个控制点得到的变形场如图3所示。
综上所述,手动对人像图片进行变形时,操作过于复杂,而自动对人像图片进行变形操作时,由于只采用一个控制点对人像图片进行变形,因此导致变形后的人像图片线条不够连续,效果不好。
发明内容
本发明实施例提供了一种人像变形方法,旨在解决现有的方法在自动对人像图片变形时,容易导致变形后的人像线条不连续,效果不好的问题。
本发明实施例是这样实现的,一种人像变形方法,所述方法包括下述步骤:
读取包含人像的图片;
检测所述图片中人像的脸部特征;
根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场,所述预先设定的控制点的个数大于1;
将所述变形场作用在图片上,以将所述图片转换为变形后的图片。
本发明实施例的另一目的在于提供一种人像变形装置,所述装置包括:
图片读取单元,用于读取包含人像的图片;
人脸识别单元,用于检测所述图片中人像的脸部特征;
变形场确定单元,用于根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场,所述预先设定的控制点的个数大于1;
变形场应用单元,用于将所述变形场作用在图片上,以将所述图片转换为变形后的图片。
在本发明实施例中,由于多个控制点同时对人像的脸部特征进行变形,因此变形的脸部特征的线条更连续,使变形后的效果更佳,提高了用户的良好体验。
附图说明
图1是现有技术提供的一种手动瘦脸的示意图;
图2A是现有技术提供的自动瘦脸前的图像示意图;
图2B是现有技术提供的采用最强变形强度自动瘦脸的图像示意图;
图3是现有技术提供的由单个控制点得到的变形场示意图;
图4是本发明第一实施例提供的一种人像变形方法的流程图;
图5是本发明第一实施例提供的控制点投影示意图;
图6是本发明第一实施例提供的由多个控制点得到的变形场示意图;
图7是本发明第二实施例提供的一种人像变形装置的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例中,采用多个控制点对人像的脸部特征进行变形,得到相应的变形场,再将得到的变形场作用在图片上,以将所述图片转换为变形后的图片。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
图4示出了本发明第一实施例提供的一种人像变形方法的流程图,本实施例中,主要对人像的器官进行变形,如将人的眼睛变大,下巴变小等,详述如下:
步骤S41,读取包含人像的图片。
该步骤中,读取一幅包含人像需要变形的器官的图片,通常,需要变形的器官为眼睛、下巴等器官,即读取的图片可为仅包括人的脸部的图片,也可以为包括一个人全身的图片。
步骤S42,检测所述图片中人像的脸部特征。
该步骤中,通过检测脸部特征的方法检测出人像的脸部特征。其中,脸部特征包括以下至少一种:眼睛、眉毛、鼻子、嘴巴、脸部轮廓等。优选地,该步骤检测的人像的脸部特征为用户需要变形的脸部特征,例如,在用户只需放大眼睛时,只需检测出眼睛的位置即可,以提高检测速度。
在实际情况中,可根据对检测速度、匹配精度的要求,选择不同的检测脸部特征的方法。例如,在要求较高的匹配精度时,可选择多点人脸检测方法,如主动形状模型(ActiveShape Model,ASM)方法、主动表现模型(Active Appearance Model,AAM)方法。这时,所述检测所述图片中人像的脸部特征的步骤具体包括:
A1、选取用于检测脸部特征的方法,所述检测脸部特征的方法包括主动形状模型ASM方法、主动表现模型AAM方法。其中,ASM利用物体的形状信息学习形状变化的模式,然后按照学得的变化模式进行形变来搜索图像中的目标。AAM利用形状与纹理两者的信息建立表现模型,也是用学得的变化模式表示图像中的目标,搜索得到的参数就成为参数特征。
A2、根据选取的检测脸部特征的方法检测图片中人像的脸部特征。
步骤S43,根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场,所述预先设定的控制点的个数大于1。
在脸部特征变形之前,若接收到用户发出的变形强度指定指令,则根据该变形强度指定指令在不同的脸部特征,如嘴巴、眼睛等位置生成控制点,当用户拖动强度进度条得到的变形强度不同时,控制点的个数、位置中的至少一种也不同,以根据用户指定的变形强度控制脸部特征的变形量。由于每个控制点对其附近的脸部特征都具有一定的影响,因此,设定了控制点之后可控制该控制点附近区域的脸部特征的变形,并且,多个控制点的控制力共同作用于脸部特征时,叠加的效果更自然
作为本发明另一实施例,所述根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场的步骤具体包括:
B1、确定所述包含人像的图片的大小,所述图片的大小采用像素个数表示。该步骤中,确定读取的包含人像的图片的大小,该图片的大小的单位为像素,比如,在图片的大小为1600*1200时,表示该图片的长为1600像素,宽为1200像素。
B2、确定所有预先设定的控制点的变形量,所述控制点的变形量为二维矢量。该步骤中,控制点的变形量为二维矢量,包括控制点在x轴的变形矢量和在y轴的变形矢量。
B3、依据所述图片的大小和所述控制点的变形量,将所述包含人像的图片划分为多个网格。其中,划分的网格可以为三角形网格、四边形网格、五边形网格等,此处不作限定。该步骤中,选取一个与控制点的变形量相关的值作为划分阈值,再将图片的大小和划分阈值相比,将图片划分为与比值相等的网格。具体为:
B31、在所述所有预先设定的控制点的变形量中,选取一个最大值。该步骤中,在确定了所有控制点的在x轴的变形矢量和y轴的变形矢量之后,比较所有控制点在x轴的变形矢量和y轴的变形矢量,得到一个所有控制点在x轴的变形矢量和y轴的变形矢量的最大值。例如,假设有2个控制点,控制点A在x轴的变形矢量的值为10,在y轴的变形矢量的值为20,控制点B在x轴的变形矢量的值为10,在y轴的变形矢量的值为40,则控制点A和控制点B在x轴的变形矢量和y轴的变形矢量的最大值为“40”。
B32、根据所述图片的大小和选取的最大值,将所述包含人像的图片划分为多个网格。该步骤中,假设图片的大小为1600*1200像素,所有控制点的横坐标和纵坐标的最大值为40,则可将图片划分为40*30个网格。进一步地,若所有控制点的横坐标和纵坐标的最大值不能被图片的大小整除,则选取一个大于所有控制点的横坐标和纵坐标的最大值的数,且选取的数为图片的大小的公约数,替换所有控制点的横坐标和纵坐标的最大值,以保证划分的网格数为整数。
B4、根据预先设定的控制点及预先设定的样条函数,确定网格变形场。该步骤中,根据预先设定的控制点及预先设定的样条函数,确定网格变形场的步骤具体包括:
B41、根据控制点的变形量确定控制点所属的网格的网格顶点的变形量。该步骤中,若将图片划分为三角形的网格,则需要确定控制点所属的三角形的网格的3个网格顶点的变形量;若将图片划分为四边形的网格,则需要确定控制点所属的四边形的网格的4个网格顶点的变形量,当然,也可以将图片划分为五边形的网格,并确定五边形的网格的5个网格顶点的变形量,此次不作限定。优选地,本发明实施例将图片划分为四边形的网格,以提高确定网格中4个网格顶点的坐标的速度。如图5所示,控制点A的变形量将传递到M1、M2、M3、M4这4个网格顶点上,控制点传递的变形量的大小由控制点在网格上的相对位置决定。当一个网格具有多个控制点时,该网格的4个网格顶点受到该多个控制点的变形量的影响,即1个网格顶点为该多个控制点的变形量传递的变形量的和。具体地,根据下式确定控制点的变形量传递到的4个网格顶点的变形量对应的变形矢量:
其中,w(u,v)为变形后的网格顶点的变形量对应的变形矢量,u,v为变形前的网格顶点的坐标,为控制点的变形量,其中,i,j是指落在网格内的控制点与网格顶点的相对坐标,Bk(s)、Bl(t)为三次B样条,s、t为落在网格内的控制点与网格顶点的相对坐标归一化后的值,下面仅列出了Bl(t)的表达式,Bk(s)的表达式与Bl(t)的相同,此处不再赘述:B0(t)=(-t3+3t2-3t+1)/6,B1(t)=(3t3+6t2+4)/6,B2(t)=(-3t3+3t2+3t+1)/6,B3(t)=t3/6,0≤t<1;
B42、根据确定的网格的网格顶点的变形量确定当前控制点的变形量。该步骤中,可通过网格变形量反过来计算控制点的变形量,以验证计算得到的控制点的变形量与预先设定的控制点的变形量是否相同。具体地,根据控制点在网格的相对位置确定控制点的变形量,控制点距离哪个网格顶点越近,其受到的影响也越大。
B43、将网格变形前的控制点的变形量与网格变形后确定的当前控制点的变形量相减,得到控制点的剩余变形量。该步骤中,可预先设定一个变形量阈值,该变形量阈值取为当前控制点变形量的1/2,若得到的控制点的剩余变形量大于该变形量阈值,则取该变形量阈值作为控制点的剩余变形量。例如,在该预先设定的变形量阈值为当前网格变形前的控制点变形量的1/2时,假设网格变形前的控制点的变形量为160,变形量阈值为160*1/2=80,网格变形后确定的当前控制点的变形量为120,由于120大于80,因此,控制点的剩余变形量取值为80。
B44、判断所述控制点的剩余变形量是否满足精度要求,若是,由确定的控制点所属的网格的网格顶点的变形量组成的多个网格组成的网格场为网格变形场,若否,将控制点的剩余变形量作为新的控制点的变形量,并返回步骤B41。例如,假设控制点的剩余变形量为(20,10),精度要求为(5,5),则需要继续对网格进行变形。
B5、根据所述网格变形场以及像素在变形前的网格的相对位置,确定像素变形场。该步骤中,像素变形场是指图片中原有的像素在位置和/或数值上发生形变后得到的像素组合。优选地,在所述当前控制点满足精度要求时,所述根据所述网格变形场以及像素在变形前的网格的相对位置,确定像素变形场的步骤具体包括:
C1、确定每一次自由变形FFD后,像素在变形后的网格的相对位置。该步骤中,自由变形(freeform deformation,FFD)的基本思想是通过操纵包含物体的一个空间平行点阵来完成变形,***纵的空间点阵决定了该物体的变形函数,该变形函数指定了物体每个点的新位置。具体地,确定每一次FFD后像素在变形后的网格的相对位置的步骤具体包括:
C11、确定像素与其最近的一个网格在变形前的网格顶点的相对位置。
C12、确定所述变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置。
C13、根据确定的像素与其最近的网格在变形前的网格顶点的相对位置,以及变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置,确定像素在变形后的网格的相对位置。
上述步骤C11~C13中,在划分的网格为四边形时,与网格顶点相关的计算都是指4个网格顶点,通过对变形后的网格的4个网格顶点进行插值计算得到像素的位置。当然,在划分的网格为五边形时,与网格顶点相关的计算都是指5个网格顶点,此处不再赘述。
C2、对确定的每一次FFD后像素在变形后的网格的相对位置进行叠加,得到像素变形场。例如,假设第一次FFD后,像素v的坐标为(1,2),第二次FFD后,像素v的坐标为(2,4),则该像素V的最后位置为(2,6)。
B6、组合所述网格变形场与像素变形场,得到脸部特征的变形场。优选地,可通过2个具有着色器的图像处理器gpu shader分别确定网格变形场和像素变形场,以提高处理速度。进一步地,可复用第一次计算得到的网格变形场,通过复用得到的网格变形场,能够大大提高对人像变形的时间。例如,采用该技术方案,若只需对人像进行瘦脸操作,则只需20ms。其中,能够复用网格变形场的原因如下:由于网格的顶点数不多,在实际应用中,保存了网格坐标的所有数值,因此,第一次计算得到的网格变形场几乎没有误差,后续复用不会加大误差。例如,假设已计算了第一次的网格变形场,若后续需要计算的网格变形场为第一次的网格变形场的一半时,可直接通过1/2与第一次的网格变形场相乘得到,大大减少了计算量。
步骤S44,将所述变形场作用在图片上,以将所述图片转换为变形后的图片。
参见图6,该图6示出了多个控制点得到的变形场的示意图,由于变形场是由多个控制点共同作用得到,因此得到的变形场的线条更连续,自然。
在本发明第一实施例中,采用多个控制点对人像的脸部特征进行变形,得到相应的变形场,再将得到的变形场应用在图片上,得到变形后的图片。由于多个控制点同时对人像的脸部特征进行变形,因此变形的脸部特征的线条更连续,线条更柔和,使变形后的效果更佳,提高了用户的良好体验。
实施例二:
图7示出了本发明第二实施例提供的一种人像变形装置的结构图,为了便于说明,仅示出了与本发明实施例相关的部分。
该人像变形装置包括:图片读取单元71、人脸识别单元72、变形场确定单元73、变形场应用单元74。
图片读取单元71,用于读取包含人像的图片。
其中,取的图片可为仅包括人的脸部的图片,也可以为包括一个人全身的图片。
人脸识别单元72,用于检测所述图片中人像的脸部特征。
其中,脸部特征包括以下至少一种:眼睛、眉毛、鼻子、嘴巴、脸部轮廓等。优选地,该步骤检测的人像的脸部特征为用户需要变形的脸部特征。
作为本发明一优选实施例,所述人脸识别单元72包括:人脸识别算法选取模块和人脸检测模块。
人脸识别算法选取模块,用于选取用于检测脸部特征的方法,所述检测脸部特征的方法为主动形状模型ASM方法或者为主动表现模型AAM方法。
人脸检测模块,用于根据选取的检测脸部特征的装置检测图片中人像的脸部特征。
变形场确定单元73,用于根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场,所述预先设定的控制点的个数大于1。
其中,预先设定多个控制点,以控制该控制点附近区域的脸部特征的变形。
作为本发明另一优选实施例,所述变形场确定单元73包括:图片大小确定模块、控制点位置确定模块、图片划分模块、网格变形场确定模块、像素变形场确定模块、变形场组合模块。
图片大小确定模块,用于确定所述包含人像的图片的大小,所述图片的大小采用像素个数表示。
控制点位置确定模块,用于确定所有预先设定的控制点的变形量,所述控制点的变形量为二维矢量。其中,预先设定的控制点作为一个二维矢量,包括控制点在x轴的变形矢量和在y轴的变形矢量。
图片划分模块,用于依据所述图片的大小和所述控制点的变形量,将所述包含人像的图片划分为多个网格。
其中,划分的网格可以为三角形网格、四边形网格、五边形网格等,此处不作限定。
作为本发明另一优选实施例,所述图片划分模块包括:最大值选取模块、图片网格化模块。其中,最大值选取模块,用于在所有预先设定的控制点的变形量中,选取一个最大值。选取的最大值为所有预先设定的控制点的变形量的最大值。图片网格化模块,用于根据所述图片的大小和选取的最大值,将所述包含人像的图片划分为多个网格。
网格变形场确定模块,用于根据预先设定的控制点及预先设定的样条函数,确定网格变形场。优选地,若所有控制点的变形量的最大值不能被图片的大小整除,则选取一个大于所有控制点的变形量的最大值的数,且选取的数为图片的大小的公约数,替换所有控制点的变形量的最大值,以保证划分的网格数为整数。作为本发明另一优选实施例,所述网格变形场确定模块包括:控制点投影模块、当前控制点的变形量确定模块、控制点剩余变形量确定模块、网格变形场判定模块。其中:
控制点投影模块,用于根据控制点的变形量确定控制点所属的网格的网格顶点的变形量。具体地,根据下式确定控制点的变形量传递到的4个网格顶点的变形量对应的变形矢量:
其中,w(u,v)为变形后的网格顶点的变形量对应的变形矢量,u,v为变形前的网格顶点的坐标,为控制点的变形量,其中,i,j是指落在网格内的控制点与网格顶点的相对坐标,Bl(t)、Bl(t)为三次B样条,s、t为落在网格内的控制点与网格顶点的相对坐标归一化后的值,下面仅列出了Bl(t)的表达式,Bk(s)的表达式与Bl(t)的相同,此处不再赘述:B0(t)=(-t3+3t2-3t+1)/6,B1(t)=(3t3+6t2+4)/6,B2(t)=(-3t3+3t2+3t+1)/6,B3(t)=t3/6,0≤t<1。
变形控制点确定模块,用于对控制点进行自由变形FFD后,得到变形后的控制点。
当前控制点的变形量确定模块,用于根据确定的网格的网格顶点的变形量确定当前控制点的变形量。
控制点剩余变形量确定模块,用于将网格变形前的控制点的变形量与网格变形后确定的当前控制点的变形量相减,得到控制点的剩余变形量。其中,可预先设定一个变形量阈值,该变形量阈值取为当前控制点变形量的1/2,若得到的控制点的剩余变形量大于该变形量阈值,则取该变形量阈值作为控制点的剩余变形量。
网格变形场判定模块,用于判断所述控制点的剩余变形量是否满足精度要求,若是,由确定的控制点所属的网格的网格顶点的变形量组成的多个网格组成的网格场为网格变形场,若否,将控制点的剩余变形量作为新的控制点的变形量,并返回控制点投影模块。
像素变形场确定模块,用于根据所述网格变形场以及像素在变形前的网格的相对位置,确定像素变形场。
变形场组合模块,用于组合所述网格变形场与像素变形场,得到脸部特征的变形场。
优选地,可通过2个具有着色器的图像处理器gpu shader分别确定网格变形场和像素变形场,以提高处理速度。进一步地,可复用第一次计算得到的网格变形场,通过复用得到的网格变形场,能够大大提高对人像变形的时间。
变形场应用单元74,用于将所述变形场作用在图片上,以将所述图片转换为变形后的图片。
在本发明第二实施例中,采用多个控制点对人像的脸部特征进行变形,得到相应的变形场,再将得到的变形场应用在图片上,得到变形后的图片。由于多个控制点同时对人像的脸部特征进行变形,因此变形的脸部特征的线条更连续,线条更柔和,使变形后的效果更佳,提高了用户的良好体验。
作为本发明另一优选实施例,在所述当前控制点满足精度要求时,所述像素变形场确定模块包括:
单次FFD后像素位置确定模块,用于确定每一次自由变形FFD后,像素在变形后的网格的相对位置。
作为本发明另一优选实施例,所述单次FFD后像素位置确定模块包括:像素与变形前网格顶点的相对位置确定模块、变形前、后网格顶点的相对位置确定模块、像素位置确定模块。
像素与变形前网格顶点的相对位置确定模块,用于确定像素与其最近的一个网格在变形前的网格顶点的相对位置。
变形前、后网格顶点的相对位置确定模块,用于确定所述变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置。
像素位置确定模块,用于根据确定的像素与其最近的网格在变形前的网格顶点的相对位置,以及变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置,确定像素在变形后的网格的相对位置。其中,在划分的网格为四边形时,与网格顶点相关的计算都是指4个网格顶点,通过对变形后的网格的4个网格顶点进行插值计算得到像素的位置。当然,在划分的网格为五边形时,与网格顶点相关的计算都是指5个网格顶点,此处不再赘述。
多次FFD后像素位置确定模块,用于对确定的每一次FFD后像素在变形后的网格的相对位置进行叠加,得到像素变形场。
在上述模块中,通过叠加多次FFD得到像素变形场。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种人像变形方法,其特征在于,所述方法包括下述步骤:
读取包含人像的图片;
检测所述图片中人像的脸部特征;
确定所述包含人像的图片的大小,所述图片的大小采用像素个数表示;
确定所有预先设定的控制点的变形量,所述控制点的变形量为二维矢量;
依据所述图片的大小和所述控制点的变形量,将所述包含人像的图片划分为多个网格;
根据预先设定的控制点及预先设定的样条函数,确定网格变形场;
根据所述网格变形场以及像素在变形前的网格的相对位置,确定像素变形场;
组合所述网格变形场与像素变形场,得到脸部特征的变形场,所述预先设定的控制点的个数大于1;
将所述脸部特征的变形场作用在图片上,以将所述图片转换为变形后的图片;
其中,所述根据预先设定的控制点及预先设定的样条函数,确定网格变形场的步骤具体包括:
步骤A、根据控制点的变形量确定控制点所属的网格的网格顶点的变形量;
步骤B、根据确定的网格的网格顶点的变形量确定当前控制点的变形量;
步骤C、将网格变形前的控制点的变形量与网格变形后确定的当前控制点的变形量相减,得到控制点的剩余变形量;
步骤D、判断所述控制点的剩余变形量是否满足精度要求,若是,由确定的控制点所属的网格的网格顶点的变形量组成的多个网格组成的网格场为网格变形场,若否,将控制点的剩余变形量作为新的控制点的变形量,并返回步骤A。
2.如权利要求1所述的方法,其特征在于,所述检测所述图片中人像的脸部特征的步骤具体包括:
选取用于检测脸部特征的方法,所述检测脸部特征的方法为主动形状模型ASM方法或者为主动表现模型AAM方法;
根据选取的检测脸部特征的方法检测图片中人像的脸部特征。
3.如权利要求1所述的方法,其特征在于,所述依据所述图片的大小和所述控制点的坐标,将所述包含人像的图片划分为多个网格的步骤具体包括:
在所述所有预先设定的控制点的变形量中,选取一个最大值;
根据所述图片的大小和选取的最大值,将所述包含人像的图片划分为多个网格。
4.如权利要求1所述的方法,其特征在于,在所述当前控制点满足精度要求时,所述根据所述网格变形场以及像素在变形前的网格的相对位置,确定像素变形场的步骤具体包括:
确定每一次自由变形FFD后,像素在变形后的网格的相对位置;
对确定的每一次FFD后像素在变形后的网格的相对位置进行叠加,得到像素变形场。
5.如权利要求4所述的方法,其特征在于,所述确定每一次自由变形FFD后像素在变形后的网格的相对位置的步骤具体包括:
确定像素与其最近的一个网格在变形前的网格顶点的相对位置;
确定所述变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置;
根据确定的像素与其最近的网格在变形前的网格顶点的相对位置,以及变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置,确定像素在变形后的网格的相对位置。
6.一种人像变形装置,其特征在于,所述装置包括:
图片读取单元,用于读取包含人像的图片;
人脸识别单元,用于检测所述图片中人像的脸部特征;
变形场确定单元,用于根据预先设定的控制点对检测到的脸部特征进行变形,得到相应的变形场,所述预先设定的控制点的个数大于1;
变形场应用单元,用于将所述变形场作用在图片上,以将所述图片转换为变形后的图片;
所述变形场确定单元包括:
图片大小确定模块,用于确定所述包含人像的图片的大小,所述图片的大小采用像素个数表示;
控制点位置确定模块,用于确定所有预先设定的控制点的变形量,所述控制点的变形量为二维矢量;
图片划分模块,用于依据所述图片的大小和所述控制点的变形量,将所述包含人像的图片划分为多个网格;
网格变形场确定模块,用于根据预先设定的控制点及预先设定的样条函数,确定网格变形场;
像素变形场确定模块,用于根据所述网格变形场以及像素在变形前的网格的相对位置,确定像素变形场;
变形场组合模块,用于组合所述网格变形场与像素变形场,得到脸部特征的变形场;
其中,所述网格变形场确定模块包括:
控制点投影模块,用于根据控制点的变形量确定控制点所属的网格的网格顶点的变形量;
当前控制点的变形量确定模块,用于根据确定的网格的网格顶点的变形量确定当前控制点的变形量;
控制点剩余变形量确定模块,用于将网格变形前的控制点的变形量与网格变形后确定的当前控制点的变形量相减,得到控制点的剩余变形量;
网格变形场判定模块,用于判断所述控制点的剩余变形量是否满足精度要求,若是,由确定的控制点所属的网格的网格顶点的变形量组成的多个网格组成的网格场为网格变形场,若否,将控制点的剩余变形量作为新的控制点的变形量,并返回控制点投影模块。
7.如权利要求6所述的装置,其特征在于,所述人脸识别单元包括:
人脸识别算法选取模块,用于选取用于检测脸部特征的方法,所述检测脸部特征的方法为主动形状模型ASM方法或者为主动表现模型AAM方法;
人脸检测模块,用于根据选取的检测脸部特征的装置检测图片中人像的脸部特征。
8.如权利要求6所述的装置,其特征在于,所述图片划分模块包括:
最大值选取模块,用于在所有预先设定的控制点的变形量中,选取一个最大值;
图片网格化模块,用于根据所述图片的大小和选取的最大值,将所述包含人像的图片划分为多个网格。
9.如权利要求6所述的装置,其特征在于,在所述当前控制点满足精度要求时,所述像素变形场确定模块包括:
单次FFD后像素位置确定模块,用于确定每一次自由变形FFD后,像素在变形后的网格的相对位置;
多次FFD后像素位置确定模块,用于对确定的每一次FFD后像素在变形后的网格的相对位置进行叠加,得到像素变形场。
10.如权利要求9所述的装置,其特征在于,所述单次FFD后像素位置确定模块包括:
像素与变形前网格顶点的相对位置确定模块,用于确定像素与其最近的一个网格在变形前的网格顶点的相对位置;
变形前、后网格顶点的相对位置确定模块,用于确定所述变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置;
像素位置确定模块,用于根据确定的像素与其最近的网格在变形前的网格顶点的相对位置,以及变形前的网格的网格顶点与所述变形前的网格的网格顶点变形后得到的网格顶点的相对位置,确定像素在变形后的网格的相对位置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410275849.XA CN105184735B (zh) | 2014-06-19 | 2014-06-19 | 一种人像变形方法及装置 |
PCT/CN2015/081982 WO2015192809A1 (en) | 2014-06-19 | 2015-06-19 | Portrait deformation method and apparatus |
US15/215,924 US9639914B2 (en) | 2014-06-19 | 2016-07-21 | Portrait deformation method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410275849.XA CN105184735B (zh) | 2014-06-19 | 2014-06-19 | 一种人像变形方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105184735A CN105184735A (zh) | 2015-12-23 |
CN105184735B true CN105184735B (zh) | 2019-08-06 |
Family
ID=54906790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410275849.XA Active CN105184735B (zh) | 2014-06-19 | 2014-06-19 | 一种人像变形方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9639914B2 (zh) |
CN (1) | CN105184735B (zh) |
WO (1) | WO2015192809A1 (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9646195B1 (en) * | 2015-11-11 | 2017-05-09 | Adobe Systems Incorporated | Facial feature liquifying using face mesh |
CN107203963B (zh) * | 2016-03-17 | 2019-03-15 | 腾讯科技(深圳)有限公司 | 一种图像处理方法及装置、电子设备 |
CN105956997B (zh) * | 2016-04-27 | 2019-07-05 | 腾讯科技(深圳)有限公司 | 图像形变处理的方法和装置 |
CN105894446A (zh) * | 2016-05-09 | 2016-08-24 | 西安北升信息科技有限公司 | 一种视频中的自动脸部轮廓修饰方法 |
US10748579B2 (en) | 2016-10-26 | 2020-08-18 | Adobe Inc. | Employing live camera feeds to edit facial expressions |
CN106506970B (zh) * | 2016-11-30 | 2019-10-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种拍摄方法和终端 |
CN106846428A (zh) * | 2017-01-25 | 2017-06-13 | 迈吉客科技(北京)有限公司 | 一种图像形状调节方法和调节装置 |
CN108830782B (zh) * | 2018-05-29 | 2022-08-05 | 北京字节跳动网络技术有限公司 | 图像处理方法、装置、计算机设备和存储介质 |
CN110555794B (zh) | 2018-05-31 | 2021-07-23 | 北京市商汤科技开发有限公司 | 图像处理方法及装置、电子设备和存储介质 |
CN108830787A (zh) * | 2018-06-20 | 2018-11-16 | 北京微播视界科技有限公司 | 图像变形的方法、装置及电子设备 |
US10867164B2 (en) * | 2018-06-29 | 2020-12-15 | Intel Corporation | Methods and apparatus for real-time interactive anamorphosis projection via face detection and tracking |
CN109087239B (zh) * | 2018-07-25 | 2023-03-21 | 腾讯科技(深圳)有限公司 | 一种人脸图像处理方法、装置及存储介质 |
CN109242765B (zh) * | 2018-08-31 | 2023-03-10 | 腾讯科技(深圳)有限公司 | 一种人脸图像处理方法、装置和存储介质 |
CN110942422A (zh) * | 2018-09-21 | 2020-03-31 | 北京市商汤科技开发有限公司 | 一种图像处理方法、装置和计算机存储介质 |
CN109360166B (zh) * | 2018-09-30 | 2021-06-22 | 北京旷视科技有限公司 | 一种图像处理方法、装置、电子设备和计算机可读介质 |
CN109472753B (zh) * | 2018-10-30 | 2021-09-07 | 北京市商汤科技开发有限公司 | 一种图像处理方法、装置、计算机设备和计算机存储介质 |
CN109903217B (zh) * | 2019-01-25 | 2023-05-02 | 北京百度网讯科技有限公司 | 图像变形方法和装置 |
CN110069191B (zh) * | 2019-01-31 | 2021-03-30 | 北京字节跳动网络技术有限公司 | 基于终端的图像拖拽变形实现方法和装置 |
CN110069195B (zh) * | 2019-01-31 | 2020-06-30 | 北京字节跳动网络技术有限公司 | 图像拖拽变形方法和装置 |
CN110141857A (zh) * | 2019-04-26 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 虚拟角色的面部显示方法、装置、设备及存储介质 |
CN110827336A (zh) * | 2019-11-01 | 2020-02-21 | 厦门美图之家科技有限公司 | 一种图像对齐方法、装置、设备及存储介质 |
CN110837332A (zh) * | 2019-11-13 | 2020-02-25 | 北京字节跳动网络技术有限公司 | 面部图像变形方法、装置、电子设备和计算机可读介质 |
CN116452703B (zh) * | 2023-06-15 | 2023-10-27 | 深圳兔展智能科技有限公司 | 用户头像生成方法、装置、计算机设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021943A (zh) * | 2007-04-06 | 2007-08-22 | 北京中星微电子有限公司 | 一种图像调整的方法和*** |
CN101377814A (zh) * | 2007-08-27 | 2009-03-04 | 索尼株式会社 | 人脸图像处理设备、人脸图像处理方法以及计算机程序 |
CN101551911A (zh) * | 2009-05-07 | 2009-10-07 | 上海交通大学 | 人脸素描肖像画自动生成方法 |
CN102393951A (zh) * | 2011-06-30 | 2012-03-28 | Tcl集团股份有限公司 | 一种人脸模型的变形方法 |
CN102971769A (zh) * | 2010-04-30 | 2013-03-13 | 欧姆龙株式会社 | 图像变形装置、电子设备、图像变形方法、图像变形程序、以及记录有该程序的记录介质 |
CN102999929A (zh) * | 2012-11-08 | 2013-03-27 | 大连理工大学 | 一种基于三角网格化的人物图像瘦脸处理方法 |
CN103198520A (zh) * | 2013-03-19 | 2013-07-10 | 重庆大学 | 基于控制点和控制线邻域变形的个性化人像产品设计方法 |
CN103337085A (zh) * | 2013-06-17 | 2013-10-02 | 大连理工大学 | 一种高效的人像面部变形方法 |
CN103824253A (zh) * | 2014-02-19 | 2014-05-28 | 中山大学 | 一种基于图像局部精确变形的人物五官变形方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6069634A (en) * | 1997-01-08 | 2000-05-30 | Mitsubishi Electric Information Technology Center America, Inl | System for rapidly deforming a graphical object |
JP2002175538A (ja) * | 2000-12-08 | 2002-06-21 | Mitsubishi Electric Corp | 似顔絵生成装置及び似顔絵生成方法及び似顔絵生成プログラムを記録した記録媒体及び通信用端末及び通信用端末による通信方法 |
US7174050B2 (en) * | 2002-02-12 | 2007-02-06 | International Business Machines Corporation | Space-optimized texture maps |
JP5451302B2 (ja) * | 2009-10-19 | 2014-03-26 | キヤノン株式会社 | 画像処理装置及び方法、プログラム及び記憶媒体 |
US9928406B2 (en) * | 2012-10-01 | 2018-03-27 | The Regents Of The University Of California | Unified face representation for individual recognition in surveillance videos and vehicle logo super-resolution system |
-
2014
- 2014-06-19 CN CN201410275849.XA patent/CN105184735B/zh active Active
-
2015
- 2015-06-19 WO PCT/CN2015/081982 patent/WO2015192809A1/en active Application Filing
-
2016
- 2016-07-21 US US15/215,924 patent/US9639914B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021943A (zh) * | 2007-04-06 | 2007-08-22 | 北京中星微电子有限公司 | 一种图像调整的方法和*** |
CN101377814A (zh) * | 2007-08-27 | 2009-03-04 | 索尼株式会社 | 人脸图像处理设备、人脸图像处理方法以及计算机程序 |
CN101551911A (zh) * | 2009-05-07 | 2009-10-07 | 上海交通大学 | 人脸素描肖像画自动生成方法 |
CN102971769A (zh) * | 2010-04-30 | 2013-03-13 | 欧姆龙株式会社 | 图像变形装置、电子设备、图像变形方法、图像变形程序、以及记录有该程序的记录介质 |
CN102393951A (zh) * | 2011-06-30 | 2012-03-28 | Tcl集团股份有限公司 | 一种人脸模型的变形方法 |
CN102999929A (zh) * | 2012-11-08 | 2013-03-27 | 大连理工大学 | 一种基于三角网格化的人物图像瘦脸处理方法 |
CN103198520A (zh) * | 2013-03-19 | 2013-07-10 | 重庆大学 | 基于控制点和控制线邻域变形的个性化人像产品设计方法 |
CN103337085A (zh) * | 2013-06-17 | 2013-10-02 | 大连理工大学 | 一种高效的人像面部变形方法 |
CN103824253A (zh) * | 2014-02-19 | 2014-05-28 | 中山大学 | 一种基于图像局部精确变形的人物五官变形方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160328825A1 (en) | 2016-11-10 |
WO2015192809A1 (en) | 2015-12-23 |
CN105184735A (zh) | 2015-12-23 |
US9639914B2 (en) | 2017-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105184735B (zh) | 一种人像变形方法及装置 | |
CN103824253B (zh) | 一种基于图像局部精确变形的人物五官变形方法 | |
EP3144899B1 (en) | Apparatus and method for adjusting brightness of image | |
CN112669447B (zh) | 一种模型头像创建方法、装置、电子设备和存储介质 | |
Liao et al. | Automatic caricature generation by analyzing facial features | |
CN109033940B (zh) | 一种图像识别方法、装置、计算设备及存储介质 | |
US20100328307A1 (en) | Image processing apparatus and method | |
CN104537630A (zh) | 一种基于年龄估计的图像美颜方法和装置 | |
CN104616286B (zh) | 快速的半自动多视图深度修复方法 | |
US20140160123A1 (en) | Generation of a three-dimensional representation of a user | |
US9224245B2 (en) | Mesh animation | |
US10467793B2 (en) | Computer implemented method and device | |
CN104504376A (zh) | 一种人脸图像的年龄分类方法和*** | |
CN109859305A (zh) | 基于多角度二维人脸的三维人脸建模、识别方法及装置 | |
CN104899563A (zh) | 一种二维人脸关键特征点定位方法及*** | |
CN103839223A (zh) | 图像处理方法及装置 | |
CN106874861A (zh) | 一种人脸矫正方法及*** | |
KR20140037936A (ko) | 3차원 이미지 모델 조정을 위한 방법 및 장치 | |
CN104809457A (zh) | 一种基于区域化隐函数特征的三维人脸识别方法及*** | |
CN115689869A (zh) | 一种视频美妆迁移方法及*** | |
CN107469355A (zh) | 游戏人物形象创建方法及装置、终端设备 | |
KR20220054955A (ko) | 사용자 얼굴을 대상 얼굴로 교체하는 장치, 방법 및 컴퓨터 프로그램 | |
CN112200905A (zh) | 一种三维人脸补全的方法 | |
KR101701199B1 (ko) | 메시 워핑을 이용한 가상 성형수술의 방법 및 시스템 | |
JP2009251634A (ja) | 画像処理装置、画像処理方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |