CN113160036B - 一种保持脸型不变的图像换脸方法 - Google Patents
一种保持脸型不变的图像换脸方法 Download PDFInfo
- Publication number
- CN113160036B CN113160036B CN202110415546.3A CN202110415546A CN113160036B CN 113160036 B CN113160036 B CN 113160036B CN 202110415546 A CN202110415546 A CN 202110415546A CN 113160036 B CN113160036 B CN 113160036B
- Authority
- CN
- China
- Prior art keywords
- face
- user
- template
- mask
- image
- 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 28
- 210000001061 forehead Anatomy 0.000 claims abstract description 37
- 210000004209 hair Anatomy 0.000 claims abstract description 24
- 241000218691 Cupressaceae Species 0.000 claims abstract description 20
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims abstract description 11
- 238000006243 chemical reaction Methods 0.000 claims abstract description 10
- 230000009466 transformation Effects 0.000 claims abstract description 10
- 230000004927 fusion Effects 0.000 claims abstract description 9
- 238000009499 grossing Methods 0.000 claims abstract description 8
- 210000003128 head Anatomy 0.000 claims description 10
- 210000004709 eyebrow Anatomy 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 5
- 239000011159 matrix material Substances 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000004904 shortening Methods 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 description 6
- 241000218645 Cedrus Species 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 210000000887 face Anatomy 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
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/04—Context-preserving transformations, e.g. by using an importance map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- 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/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
一种保持脸型不变的图像换脸方法属于计算机视觉领域。本发明获取模版图像,对模版图像进行预处理。获取用户图像,通过人脸对齐网络,获得对齐用户人脸图像。通过仿射变换将用户人脸轮廓与模版人脸轮廓对齐。然后通过点对点肤色变换,将用户人脸肤色转换为模版人脸肤色,再通过仿射变换将用户人脸轮廓转换为原来的轮廓,得到肤色转换后的用户人脸。然后将肤色转换后的用户人脸与模版肤色图像进行柏松融合,再将模版额头与其柏松融合。最后通过修正后的用户人脸掩膜将融合后的用户人脸抠出,将抠出的用户人脸粘贴到瘦脸后的模版图像,再粘贴上模版头发,对粘贴后的边缘做平滑处理后得到最终结果。本发明使得换脸后的人脸与用户人脸具有高度相似性。
Description
技术领域
本发明属于计算机视觉、图像处理技术与深度学习等交叉领域,涉及一种能够保持人脸脸型的换脸的方法。
背景技术
近年来,图像换脸技术得到了快速的发展,例如天天p图中的疯狂换脸功能,用户选定一张模版图后,可将模版的人脸换为自己自拍照的人脸,其具有很强的娱乐性和传播性,吸引了一大批用户。
现有的换脸技术,首先,通常是提取两张图像中人脸的关键点。然后,通过仿射变换将用户人脸的关键点与模版人脸的关键点对齐,提取关键点圈定的区域,将用户的人脸抠出来。最后,再通过柏松融合的方式,将抠出的用户人脸与模版人脸进行融合。该方法将用户人脸与模板人脸融合后,丧失了用户人脸的轮廓信息,同时还会导致人脸内部的形变,换脸后的人脸与用户人脸的相似度不高。
因此,本发明提出了一种保持人脸脸型的换脸方法。该方法能够将用户人脸与模版人脸融合的同时,又能保持用户人脸的轮廓信息,从而提高换脸后用户人脸的相似度。
本发明首先对用户人脸进行点对点的肤色变换,然后将肤色变换后的用户人脸与模版肤色图像柏松融合,避免了由于用户人脸光照的原因,而导致的柏松融合时出现肤色不均,肤色过亮或者过暗等异常情况。然后再通过用户人脸掩膜将用户人脸直接贴到模版人脸,完全保留了用户人脸轮廓。最后再粘贴模版头发,修复由于粘贴用户人脸时,导致模版头发被遮挡的问题。
发明内容
本发明提供了一种方法,可以在换脸的同时,保留用户人脸的轮廓信息,从而提高换脸后人脸与用户人脸的相似度。
需要说明的是,在本文中,用户人脸姿态指的是人上下转头,左右转头,平面歪头的人脸角度特征。本文中所使用到的图像坐标系,都是平面直角坐标系,以图像的左上角为坐标原点,向右为x轴,向下为y轴。本文中所说的“掩膜中的点”是指掩膜中那些被激活的点,即数值大于零的点。所说的“对齐人脸图像”中的“对齐”含义是指,在图像的大小是固定时,人脸在图像中的位置是固定的,平面歪头的角度为零。
为了达到上述的目的,本发明采取如下的技术方案:
获取模版图像,对模版图像进行预处理。首先通过人脸对齐网络,获得对齐模版人脸图像。然后复制对齐模版人脸图像,通过液化操作得到瘦脸后的对齐模版人脸图像,采样对齐模版人脸的皮肤,制作一张模版肤色图像。然后通过人脸解析网络,获得对齐模版人脸图像的人脸掩膜、头发掩膜、额头掩膜。最后通过人脸关键点检测模型,得到模版人脸的81个关键点。
获取用户图像,通过人脸对齐网络,获得对齐用户人脸图像。计算对齐用户人脸的81个关键点,通过仿射变换将用户人脸轮廓与模版人脸轮廓对齐。然后通过点对点肤色变换,将用户人脸肤色转换为模版人脸肤色,再通过仿射变换将用户人脸轮廓转换为原来的轮廓,得到肤色转换后的用户人脸。然后将肤色转换后的用户人脸与模版肤色图像进行柏松融合,再将模版额头与其柏松融合。最后通过修正后的用户人脸掩膜将融合后的用户人脸抠出,将抠出的用户人脸粘贴到瘦脸后的模版图像,再粘贴上模版头发,对粘贴后的边缘做平滑处理后得到最终结果。
与现有技术相比,本发明具有以下优点:将用户人脸肤色转换为模版人脸肤色时,在一定程度上克服了由于光照不均匀带来的问题,同时没有改变用户人脸轮廓,而是直接将用户人脸粘贴到模版人脸上,使得换脸后的人脸与用户人脸具有高度的相似性。
附图说明
图1为本发明提供的模版图像预处理方法步骤流程图;
图2为本发明提供的换脸方法步骤流程图;
图3为本发明柏松融合的具体流程步骤图;
图4为本发明点对点颜色转换实际步骤图;
图5为本发明的实际换脸的效果图;
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细描述。
本发明具体流程包括两大部分:模版图像的预处理与将用户人脸换到模版图像:
第一部分:模版图像的预处理。
参照图1,示出了本发明对模版图像进行预处理的具体流程。本发明对模版图像进行预处理的具体方法步骤如下:
S101:获取模版图像,调整模版人脸姿态,生成对齐模版人脸图像。读入模版图像后,检测模版人脸所在位置,使用mtcnn模型预测模版人脸的五个关键点,获得模版人脸的五个关键点坐标,与预先设置的标准正脸的五个关键点进行对齐,将用户人脸平面歪头的角度调整为零。然后对模版图像人脸部分进行裁剪,保证模版人脸在图像的中间位置。最后将对齐模版人脸图像按照out_size×out_size的大小输出,out_size大小可以根据实际需要设定,本发明设置out_size=512。
S102:制作模版肤色图像。采样模版人脸部分的皮肤,通过复制拼接操作,生成一张与对齐模版人脸图像同样大小的模版肤色图像。然后对拼接边界处进行平滑处理,使拼接边界处过度平滑。
S103:对对齐模版人脸图像中的人脸进行瘦脸。复制S101中对齐模版人脸图像,通过液化操作,对模版图像中的人脸进行瘦脸,同时缩短模版人脸的下巴的高度,得到一张瘦脸后的对齐模版人脸图像。
S104:生成模版人脸掩膜、模版头发掩膜与模版头发掩膜。使用人脸解析网络,本发明使用的是BiseNet网络,对对齐模版人脸图像进行解析,得到一张解析后的模版人脸分割图像,从中提取出模版人脸掩膜、模版头发掩膜与模版眉毛掩膜。然后寻找模版眉毛掩膜中,y轴坐标最小的点,将其y轴上的值记为dst_brow_y_min。最后复制模版人脸掩膜,将掩膜中y轴坐标大于dst_brow_y_min的点全部置为零,得到模版额头掩膜。
第二部分:将用户人脸换到模版图像。
参照图2,示出了本发明将用户人脸换到模版图像的操作流程。本发明将用户人脸换到模版图像的具体方法步骤如下:
S201:获取用户图像,调整用户人脸姿态,生成对齐用户人脸图像。采用与第一部分S101中同样的过程,处理用户人脸图像,得到对齐用户人脸图像。
S202:将用户人脸轮廓与模版人脸轮廓对齐。首先检测对齐模版人脸与对齐用户人脸的人脸关键点,这里采用的是人脸的81个关键点,包括常规的64个关键点和17个额头的关键点。提取对齐用户人脸图像关键点圈定的区域框图,得到一张用户人脸图像。然后剔除掉模版人脸与用户人脸关键点中嘴唇上的20个关键点,再使用剔除嘴唇关键点后的用户人脸关键点对用户人脸进行三角剖分。最后通过仿射变换对用户人脸进行变形,使用户人脸轮廓与模版人脸轮廓重合。
S203:点对点用户人脸肤色转换。获取第一部分中的模版人脸与步骤S202中变形后的用户人脸,对模版人脸图像与变形后的用户人脸图像进行高斯模糊处理,得到两个高斯模糊后的图像,用高斯模糊后的模版图像中的数值除除对应位置的高斯模糊后的用户图像中的数值,得到一个与用户人脸图像同样大小的系数矩阵,用这个矩阵点对点的与用户人脸进行相乘,得到变换肤色后的用户人脸。
S204:仿射变换将用户人脸轮廓转换为原来的轮廓。首先获取S202中剔除了嘴唇关键点的模版人脸关键点与用户人脸关键点。然后对S203中变换肤色后的用户人脸进行仿射变换,将用户人脸轮廓转换为用户原来的轮廓。最后用户人脸关键点框定的区域,得到用户人脸的掩膜,利用用户人脸掩膜,将肤色转换后的用户人脸粘贴回对齐用户人脸图像,得到变换肤色后的对齐用户人脸图像。
S205:将变换肤色后的用户人脸与模版肤色图像柏松融合。参照图3,示出了本发明柏松融合的流程。具体的流程步骤如下:
(1)获取S204中变换肤色后用户人脸图像,生成用户人脸掩膜。
首先获取S204中变换肤色后用户人脸图像,使用人脸解析网络对用户人脸进行解析,得到一张解析后的用户人脸分割图像,对用户人脸分割图像进行处理,生成用户人脸掩膜与用户眉毛掩膜。然后寻找用户眉毛掩膜中y轴坐标最小的点,将其y轴上的值记为src_brow_y_min。
(2)检测用户人脸姿态,修正用户人脸掩膜。
获取步骤S204中的变换肤色后的对齐用户人脸图像,检测用户人脸关键点,这里使用人脸的68个关键点。设置标准人脸的3D人脸坐标,将用户人脸的关键点坐标与标准人脸坐标进行比较,计算出用户人脸姿态的旋转向量,再通过旋转向量计算出用户人脸姿态的三个欧拉角:pitch、yaw、roll。三个欧拉角分别对应于标准正面人脸的人上下转头,左右转头,平面歪头的角度大小,所以用户人脸的欧拉角yaw的大小,就对应于用户人脸左右转头程度的大小。
当yaw的绝对值大于角度时,判定用户人脸左右外头角度过大,需要对用户的掩膜进行修正,使抠出的用户人脸左右对称。取值0.04到0.05效果最好,本发明设置当yaw的绝对值大于的时候,就对用户人脸的掩膜进行修正。首先本发明定义以垂直于用户两只眼睛中心的连线,且经过连线的中点的垂线为用户人脸的中线。然后通过中线将用户人脸掩膜分为左右两部分。
当用户人脸姿态的欧拉角yaw大于的时候,判定用户向右转头,人脸偏向右侧,用户掩膜的右边部分大于掩膜的左边部分,将用户掩膜右边抹除。然后,将用户掩膜的左边部分沿着中线翻折到右边,使掩膜左右两边沿中线对称;当用户人脸姿态的欧拉角yaw小于的时候,用户向左转头,人脸偏向左侧,用户掩膜的左边部分大于掩膜的右边部分,将用户掩膜左边抹除,然后沿中线将用户右边部分沿中线翻折到左边部分。
(3)通过模版人脸掩膜修改用户人脸掩膜的大小。
分别获取S104中的dst_brow_y_min与S205(1)中的src_brow_y_min,获取步骤S104中的模版人脸掩膜与S205(2)中修改后的用户人脸掩膜。首先分别检测模版人脸掩膜与用户人脸掩膜的bounding-box,得到bounding-box的左上角与右下角的坐标。将模版人脸掩膜的bounding-box的左上角与右下角的坐标记为(dst_x1,dst_y1)与(dst_x2,dst_y2);将用户人脸掩膜的bounding-box的左上角与右下角的坐标记为(src_x1,src_y1)与(src_x2,src_y2)。然后根据bounding-box对模版人脸掩膜与用户人脸掩膜进行裁剪,得到裁剪后的模版用户掩膜与裁剪后的用户人脸掩膜。同时,获取S204中的对齐用户人脸图像,通过用户人脸掩膜的bounding-box对其进行剪裁,获得剪裁后的用户人脸图像,保证用户人脸掩膜与用户人脸的对应。
然后分别将dst_distance和src_distance记录为模版额头的高度与用户额头的高度,其中dst_distance与src_distance计算公式如下:
dst_distance=dst_brow_y_min-dst_y1
src_distance=src_brow_y_min-src_y1
然后判断dst_distance与src_distance的大小,如果dst_distance大于src_distance,则说明模版的额头高度大于用户的额头高度,则修改dst_x1,令
dst_x1=dst_brow_y_min+src_distance
如果dst_distance小于等于src_distance,则说明用户的额头高度大于模版的额头高度,不做任何修改。
最后同时对剪裁后的用户人脸掩膜与剪裁后的用户人脸图像做形变,使图像的大小为(dst_x2-dst_x1,dst_y2-dst_y1)。
(4)将用户人脸与模版肤色图像柏松融合,然后将模版的额头与其再次柏松融合。
获取S204(3)中变形后的用户人脸掩膜、用户人脸与S102中的模版肤色图像。首先将用户人脸与模版肤色图像进行柏松融合。由于用户的额头形状与模版的额头形状不同,如果直接将融合后的用户人脸抠出粘贴到瘦脸后的对齐模版图像,额头部分往往会出现难以贴合的问题,所以本发明还会将模版的额头与柏松融合后得到的图像,再次进行柏松融合。获取S104中的模版额头掩膜与S101中的对齐模版人脸图像,将模版额头部分与用户人脸柏松融合后的图像再次柏松融合。
S206:利用用户掩膜抠出用户人脸,获取预设瘦脸后的模版图像。
获取S205(3)中变形后的用户人脸掩膜与S104中模版额头掩膜,获取S205(1)中的src_brow_y_min。首先用户掩膜中y轴坐标小于src_brow_y_min的部分掩膜替换为模版额头掩膜,得到一个新的用户人脸掩膜,使用新的用户掩膜将S205中柏松融合后的人脸抠出,得到用户人脸。然后获取S103中瘦脸后的对齐模版人脸图像,将用户人脸粘贴到瘦脸后的对齐模版人脸图像的对应位置。最后对粘贴后的用户人脸边缘做平滑处理。
S207:将模版的头发粘贴上来,修复粘贴头发后的边缘。
获取S104中的模版头发掩膜与S101中的对齐模版人脸图像。通过模版头发掩膜得到模版头发,将模版头发粘贴到S206中得到的图像的对应位置,然后对粘贴后的头发边缘进行平滑处理。
下面给出本发明的应用实例。
为了验证本方法所述的有效性,图5给出了效果图。从左到右分别为对齐模版人脸、对齐用户人脸、现有方法,本方法的效果图。可以看出本方法相比于现有的方法,可以更好的保留用户人脸的轮廓与脸内部的信息,如鼻子嘴唇的形状,从而提高了换脸后的人脸与用户人脸的相似度。同时本方法相比于现有方法,在换脸后的人脸边界处更加平滑,没有产生其他瑕疵。
Claims (1)
1.一种保持脸型不变的图像换脸方法,其特征在于,具体步骤如下:
S101:获取模版图像,调整模版人脸姿态,生成对齐模版人脸图像;读入模版图像后,检测模版人脸所在位置,使用mtcnn模型预测模版人脸的五个关键点,获得模版人脸的五个关键点坐标,与预先设置的标准正脸的五个关键点进行对齐,将用户人脸平面歪头的角度调整为零;然后对模版图像人脸部分进行裁剪,保证模版人脸在图像的中间位置;最后将对齐模版人脸图像按照out_size×out_size的大小输出;
S102:制作模版肤色图像;采样模版人脸部分的皮肤,通过复制拼接操作,生成一张与对齐模版人脸图像同样大小的模版肤色图像;然后对拼接边界处进行平滑处理,使拼接边界处过度平滑;
S103:对对齐模版人脸图像中的人脸进行瘦脸;复制S101中对齐模版人脸图像,通过液化操作,对模版图像中的人脸进行瘦脸,同时缩短模版人脸的下巴的高度,得到一张瘦脸后的对齐模版人脸图像;
S104:生成模版人脸掩膜、模版头发掩膜与模版额头掩膜;使用人脸解析网络,得到一张解析后的模版人脸分割图像,从中提取出模版人脸掩膜、模版头发掩膜与模版眉毛掩膜;然后寻找模版眉毛掩膜中,y轴坐标最小的点,将其y轴上的值记为dst_brow_y_min;最后复制模版人脸掩膜,将掩膜中y轴坐标大于dst_brow_y_min的点全部置为零,得到模版额头掩膜;
将用户人脸换到模版图像的具体方法步骤如下:
S201:获取用户图像,调整用户人脸姿态,生成对齐用户人脸图像;
S202:将用户人脸轮廓与模版人脸轮廓对齐;首先检测对齐模版人脸与对齐用户人脸的人脸关键点,这里采用的是人脸的81个关键点,提取对齐用户人脸图像关键点圈定的区域框图,得到一张用户人脸图像;然后剔除掉模版人脸与用户人脸关键点中嘴唇上的20个关键点,再使用剔除嘴唇关键点后的用户人脸关键点对用户人脸进行三角剖分;最后通过仿射变换对用户人脸进行变形,使用户人脸轮廓与模版人脸轮廓重合;
S203:点对点用户人脸肤色转换;获取S103中瘦脸后的对其模版人脸与步骤S202中变形后的用户人脸,对模版人脸图像与变形后的用户人脸图像进行高斯模糊处理,得到两个高斯模糊后的图像,用高斯模糊后的模版图像中的数值除对应位置的高斯模糊后的用户图像中的数值,得到一个与用户人脸图像同样大小的系数矩阵,用这个矩阵点对点的与用户人脸进行相乘,得到变换肤色后的用户人脸;
S204:仿射变换将用户人脸轮廓转换为S202对齐前的轮廓;首先获取S202中剔除了嘴唇关键点的模版人脸关键点与用户人脸关键点;然后对S203中变换肤色后的用户人脸进行仿射变换,将用户人脸轮廓转换为用户进行步骤S202中与模版人脸轮廓对齐前的轮廓;最后用户人脸关键点框定的区域,得到用户人脸的掩膜,利用用户人脸掩膜,将肤色转换后的用户人脸粘贴回对齐用户人脸图像,得到变换肤色后的对齐用户人脸图像;
S205:将变换肤色后的用户人脸与模版肤色图像柏松融合;具体的流程步骤如下:
(1)获取S204中变换肤色后用户人脸图像,生成用户人脸掩膜;
首先获取S204中变换肤色后用户人脸图像,使用人脸解析网络对用户人脸进行解析,得到一张解析后的用户人脸分割图像,对用户人脸分割图像进行处理,生成用户人脸掩膜与用户眉毛掩膜;然后寻找用户眉毛掩膜中y轴坐标最小的点,将其y轴上的值记为src_brow_y_min;
(2)检测用户人脸姿态,修正用户人脸掩膜;
获取步骤S204中的变换肤色后的对齐用户人脸图像,检测用户人脸关键点,设置标准人脸的3D人脸坐标,将用户人脸的关键点坐标与标准人脸坐标进行比较,计算出用户人脸姿态的旋转向量,再通过旋转向量计算出用户人脸姿态的三个欧拉角:pitch、yaw、roll;三个欧拉角分别对应于标准正面人脸的人上下转头,左右转头,平面歪头的角度大小,所以用户人脸的欧拉角yaw的大小,就对应于用户人脸左右转头程度的大小;
当yaw的绝对值大于角度时,判定用户人脸左右外头角度过大,需要对用户的掩膜进行修正,使抠出的用户人脸左右对称;取值0.04到0.05之间任意值,当yaw的绝对值大于的时候,就对用户人脸的掩膜进行修正;首先定义以垂直于用户两只眼睛中心的连线,且经过连线的中点的垂线为用户人脸的中线;然后通过中线将用户人脸掩膜分为左右两部分;
当用户人脸姿态的欧拉角yaw大于的时候,判定用户向右转头,人脸偏向右侧,用户掩膜的右边部分大于掩膜的左边部分,将用户掩膜右边抹除;然后,将用户掩膜的左边部分沿着中线翻折到右边,使掩膜左右两边沿中线对称;当用户人脸姿态的欧拉角yaw小于的时候,用户向左转头,人脸偏向左侧,用户掩膜的左边部分大于掩膜的右边部分,将用户掩膜左边抹除,然后沿中线将用户右边部分沿中线翻折到左边部分;
(3)通过模版人脸掩膜修改用户人脸掩膜的大小;
分别获取S104中的dst_brow_y_min与S205(1)中的src_brow_y_min,获取步骤S104中的模版人脸掩膜与S205(2)中修改后的用户人脸掩膜;首先分别检测模版人脸掩膜与用户人脸掩膜的bounding-box,得到bounding-box的左上角与右下角的坐标;将模版人脸掩膜的bounding-box的左上角与右下角的坐标记为(dst_x1,dst_y1)与(dst_x2,dst_y2);将用户人脸掩膜的bounding-box的左上角与右下角的坐标记为(src_x1,src_y1)与(src_x2,src_y2);然后根据bounding-box对模版人脸掩膜与用户人脸掩膜进行裁剪,得到裁剪后的模版用户掩膜与裁剪后的用户人脸掩膜;同时,获取S204中的对齐用户人脸图像,通过用户人脸掩膜的bounding-box对其进行剪裁,获得剪裁后的用户人脸图像,保证用户人脸掩膜与用户人脸的对应;
然后分别将dst_distance和src_distance记录为模版额头的高度与用户额头的高度,其中dst_distance与src_distance计算公式如下:
dst_distance=dst_brow_y_min-dst_y1
src_distance=src_brow_y_min-src_y1
然后判断dst_distance与src_distance的大小,如果dst_distance大于src_distance,则说明模版的额头高度大于用户的额头高度,则修改dst_x1,令
dst_x1=dst_brow_y_min+src_distance
如果dst_distance小于等于src_distance,则说明用户的额头高度大于模版的额头高度,不做任何修改;
最后同时对剪裁后的用户人脸掩膜与剪裁后的用户人脸图像做形变,使图像的大小为(W,H),其中W为图像宽度,H为图像高度;
W=dst_x2-dst_x1
H=dst_y2-dst_y1
(4)将用户人脸与模版肤色图像柏松融合,然后将模版的额头与其再次柏松融合;
获取S204的序号(3)中变形后的用户人脸掩膜、用户人脸与S102中的模版肤色图像;首先将用户人脸与模版肤色图像进行柏松融合;由于用户的额头形状与模版的额头形状不同,如果直接将融合后的用户人脸抠出粘贴到瘦脸后的对齐模版图像,额头部分往往会出现难以贴合的问题,所以还会将模版的额头与柏松融合后得到的图像,再次进行柏松融合;获取S104中的模版额头掩膜与S101中的对齐模版人脸图像,将模版额头部分与用户人脸柏松融合后的图像再次柏松融合;
S206:利用用户掩膜抠出用户人脸,获取预设瘦脸后的模版图像;
获取S205的序号(3)中变形后的用户人脸掩膜与S104中模版额头掩膜,获取S205(1)中的src_brow_y_min;首先用户掩膜中y轴坐标小于src_brow_y_min的部分掩膜替换为模版额头掩膜,得到一个新的用户人脸掩膜,使用新的用户掩膜将S205中柏松融合后的人脸抠出,得到用户人脸;然后获取S103中瘦脸后的对齐模版人脸图像,将用户人脸粘贴到瘦脸后的对齐模版人脸图像的对应位置;最后对粘贴后的用户人脸边缘做平滑处理;
S207:将模版的头发粘贴上来,修复粘贴头发后的边缘;
获取S104中的模版头发掩膜与S101中的对齐模版人脸图像;通过模版头发掩膜得到模版头发,将模版头发粘贴到S206中得到的图像的对应位置,然后对粘贴后的头发边缘进行平滑处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110415546.3A CN113160036B (zh) | 2021-04-19 | 2021-04-19 | 一种保持脸型不变的图像换脸方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110415546.3A CN113160036B (zh) | 2021-04-19 | 2021-04-19 | 一种保持脸型不变的图像换脸方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113160036A CN113160036A (zh) | 2021-07-23 |
CN113160036B true CN113160036B (zh) | 2022-09-20 |
Family
ID=76868330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110415546.3A Active CN113160036B (zh) | 2021-04-19 | 2021-04-19 | 一种保持脸型不变的图像换脸方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113160036B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113870176B (zh) * | 2021-07-29 | 2024-06-28 | 金科智融科技(珠海)有限公司 | 一种基于非限定环境下所拍摄照片生成证件照的方法 |
CN113592851B (zh) * | 2021-08-12 | 2023-06-20 | 北京滴普科技有限公司 | 一种基于全脸图像的毛孔检测方法 |
CN113743243A (zh) * | 2021-08-13 | 2021-12-03 | 厦门大学 | 一种基于深度学习的人脸美颜方法 |
CN115938023B (zh) * | 2023-03-15 | 2023-05-02 | 深圳市皇家金盾智能科技有限公司 | 智能门锁人脸识别解锁方法、装置、介质及智能门锁 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109961055A (zh) * | 2019-03-29 | 2019-07-02 | 广州市百果园信息技术有限公司 | 人脸关键点检测方法、装置、设备及存储介质 |
CN111476710A (zh) * | 2020-04-13 | 2020-07-31 | 上海艾麒信息科技有限公司 | 基于移动平台的视频换脸方法及系统 |
CN111598818A (zh) * | 2020-04-17 | 2020-08-28 | 北京百度网讯科技有限公司 | 人脸融合模型训练方法、装置及电子设备 |
CN111627076A (zh) * | 2020-04-28 | 2020-09-04 | 广州华多网络科技有限公司 | 换脸方法、装置及电子设备 |
CN111861872A (zh) * | 2020-07-20 | 2020-10-30 | 广州市百果园信息技术有限公司 | 图像换脸方法、视频换脸方法、装置、设备和存储介质 |
WO2021023003A1 (zh) * | 2019-08-05 | 2021-02-11 | 深圳Tcl新技术有限公司 | 一种人脸转换模型的训练方法、存储介质及终端设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107146199B (zh) * | 2017-05-02 | 2020-01-17 | 厦门美图之家科技有限公司 | 一种人脸图像的融合方法、装置及计算设备 |
CN108876718B (zh) * | 2017-11-23 | 2022-03-22 | 北京旷视科技有限公司 | 图像融合的方法、装置及计算机存储介质 |
-
2021
- 2021-04-19 CN CN202110415546.3A patent/CN113160036B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109961055A (zh) * | 2019-03-29 | 2019-07-02 | 广州市百果园信息技术有限公司 | 人脸关键点检测方法、装置、设备及存储介质 |
WO2021023003A1 (zh) * | 2019-08-05 | 2021-02-11 | 深圳Tcl新技术有限公司 | 一种人脸转换模型的训练方法、存储介质及终端设备 |
CN111476710A (zh) * | 2020-04-13 | 2020-07-31 | 上海艾麒信息科技有限公司 | 基于移动平台的视频换脸方法及系统 |
CN111598818A (zh) * | 2020-04-17 | 2020-08-28 | 北京百度网讯科技有限公司 | 人脸融合模型训练方法、装置及电子设备 |
CN111627076A (zh) * | 2020-04-28 | 2020-09-04 | 广州华多网络科技有限公司 | 换脸方法、装置及电子设备 |
CN111861872A (zh) * | 2020-07-20 | 2020-10-30 | 广州市百果园信息技术有限公司 | 图像换脸方法、视频换脸方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113160036A (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113160036B (zh) | 一种保持脸型不变的图像换脸方法 | |
CN109952594B (zh) | 图像处理方法、装置、终端及存储介质 | |
JP4414401B2 (ja) | 顔特徴点検出方法および装置並びにプログラム | |
EP4057234B1 (en) | Method and apparatus for three-dimensional face reconstruction, and computer device, storage medium, and program product | |
CN107507216B (zh) | 图像中局部区域的替换方法、装置及存储介质 | |
CN107316333B (zh) | 一种自动生成日漫肖像的方法 | |
JPH1115947A (ja) | 画像処理装置 | |
KR20050022306A (ko) | 영상에 기반한 사실감 있는 3차원 얼굴 모델링 방법 및 장치 | |
KR101759188B1 (ko) | 2d 얼굴 이미지로부터 3d 모델을 자동 생성하는 방법 | |
CN105118040A (zh) | 基于结构激光线的文档图像畸变矫正方法 | |
CN110991258B (zh) | 一种人脸融合特征提取方法及系统 | |
CN114648756B (zh) | 一种基于指向向量的书本文字识别指读方法和系统 | |
JP2000311248A (ja) | 画像処理装置 | |
CN111242074B (zh) | 一种基于图像处理的证件照背景替换方法 | |
CN113095119B (zh) | 一种修正人脸裁剪框的人脸识别系统 | |
CN107153806B (zh) | 一种人脸检测方法及装置 | |
JP4957607B2 (ja) | 画像における顔領域の検出 | |
Chen et al. | Eyes localization algorithm based on prior MTCNN face detection | |
JP2006164133A (ja) | 画像処理方法および装置並びにプログラム | |
CN113705466A (zh) | 用于遮挡场景、尤其高仿遮挡下的人脸五官遮挡检测方法 | |
CN112884642B (zh) | 一种基于人脸识别技术的实时面部老化模拟方法 | |
CN112541506B (zh) | 文本图像的矫正方法及装置、设备和介质 | |
JP4493448B2 (ja) | 対象物識別装置および方法並びにプログラム | |
JP2015118617A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP4541806B2 (ja) | 対象物識別装置および方法並びにプログラム |
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 |