CN114596213A - 一种图像处理方法及装置 - Google Patents
一种图像处理方法及装置 Download PDFInfo
- Publication number
- CN114596213A CN114596213A CN202111470518.8A CN202111470518A CN114596213A CN 114596213 A CN114596213 A CN 114596213A CN 202111470518 A CN202111470518 A CN 202111470518A CN 114596213 A CN114596213 A CN 114596213A
- Authority
- CN
- China
- Prior art keywords
- image
- processing
- fine
- target
- face
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 343
- 238000000034 method Methods 0.000 claims abstract description 126
- 238000011282 treatment Methods 0.000 claims abstract description 85
- 238000007493 shaping process Methods 0.000 claims abstract description 66
- 210000001508 eye Anatomy 0.000 claims description 225
- 239000000463 material Substances 0.000 claims description 109
- 230000008569 process Effects 0.000 claims description 77
- 230000002087 whitening effect Effects 0.000 claims description 74
- 210000000744 eyelid Anatomy 0.000 claims description 69
- 230000004927 fusion Effects 0.000 claims description 65
- 230000001815 facial effect Effects 0.000 claims description 49
- 241000255789 Bombyx mori Species 0.000 claims description 45
- 238000013507 mapping Methods 0.000 claims description 19
- 206010028980 Neoplasm Diseases 0.000 claims description 17
- 208000035269 cancer or benign tumor Diseases 0.000 claims description 17
- 238000009877 rendering Methods 0.000 claims description 17
- 230000037303 wrinkles Effects 0.000 claims description 17
- 238000007499 fusion processing Methods 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 9
- 210000000216 zygoma Anatomy 0.000 claims description 8
- 210000003128 head Anatomy 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 6
- 238000009826 distribution Methods 0.000 claims description 5
- 230000005855 radiation Effects 0.000 claims description 4
- 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 description 3
- 238000004043 dyeing Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 238000009966 trimming Methods 0.000 claims description 3
- 230000009469 supplementation Effects 0.000 claims description 2
- 238000004091 panning Methods 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 43
- 210000000214 mouth Anatomy 0.000 description 28
- 238000010586 diagram Methods 0.000 description 21
- 210000000088 lip Anatomy 0.000 description 19
- 210000001331 nose Anatomy 0.000 description 14
- 206010040844 Skin exfoliation Diseases 0.000 description 12
- 238000013527 convolutional neural network Methods 0.000 description 11
- 239000003086 colorant Substances 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 210000004709 eyebrow Anatomy 0.000 description 5
- 208000002923 Facial Neoplasms Diseases 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000004040 coloring Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 210000001747 pupil Anatomy 0.000 description 3
- 101100292548 Rattus norvegicus Adi1 gene Proteins 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 210000000887 face Anatomy 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000000227 grinding Methods 0.000 description 2
- 210000004209 hair Anatomy 0.000 description 2
- UPBAOYRENQEPJO-UHFFFAOYSA-N n-[5-[[5-[(3-amino-3-iminopropyl)carbamoyl]-1-methylpyrrol-3-yl]carbamoyl]-1-methylpyrrol-3-yl]-4-formamido-1-methylpyrrole-2-carboxamide Chemical compound CN1C=C(NC=O)C=C1C(=O)NC1=CN(C)C(C(=O)NC2=CN(C)C(C(=O)NCCC(N)=N)=C2)=C1 UPBAOYRENQEPJO-UHFFFAOYSA-N 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- NOQGZXFMHARMLW-UHFFFAOYSA-N Daminozide Chemical group CN(C)NC(=O)CCC(O)=O NOQGZXFMHARMLW-UHFFFAOYSA-N 0.000 description 1
- 235000002673 Dioscorea communis Nutrition 0.000 description 1
- 241000544230 Dioscorea communis Species 0.000 description 1
- 201000005569 Gout Diseases 0.000 description 1
- 208000035753 Periorbital contusion Diseases 0.000 description 1
- 238000005282 brightening Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 210000000697 sensory organ Anatomy 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/77—Retouching; Inpainting; Scratch removal
-
- 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/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- 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
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请提出一种图像处理方法及装置,该方法包括:获取用户的目标人脸图像;根据目标人脸图像,为用户分配每种虚拟微整形处理所需的微调权重,微调权重是依据目标人脸图像中虚拟微整形处理针对的目标部位的部位特征信息分配的;根据目标人脸图像及每种虚拟微整形处理对应的微调权重,生成目标人脸图像对应的人脸微调图像。本申请根据虚拟微整形处理针对的目标部位的实际情况,分配适合用户的微调权重。依据该微调权重对目标人脸图像虚拟微整形,能使微整形得到的图像更自然、美观,贴合用户的审美需求。且限定了各虚拟微整形处理的先后顺序,确保各虚拟微整形处理的效果相互叠加,提高人脸微调的整体效果,避免各虚拟微整形处理之间相互不兼容。
Description
本申请要求于2020年12月03日提交中国专利局、申请号为202011396257.5、申请名称为“一种图像处理方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请属于图像处理技术领域,具体涉及一种图像处理方法及装置。
背景技术
目前,很多用于处理视频或图像的APP(Application,应用程序)都需要对用户的人脸图像进行虚拟微整形处理,如对用户的人脸图像进行美白、瘦脸、放大眼睛、消除皱纹和黑眼圈等微调处理。
相关技术中提供的虚拟微整形方案中,通常设置一个微调程度,对用户的人脸图像进行该微调程度的微整形处理。例如,设置一个瘦脸程度,对用户的人脸图像进行该瘦脸程度的脸部轮廓微调处理。
但相关技术中对所有用户都按照相同的微调程度进行处理,导致用户的人脸图像被过度处理,显得虚假不自然。或者,导致用户的人脸图像处理程度不够,无法达到用户满意的微调效果。
发明内容
本申请提出一种图像处理方法及装置,本申请根据虚拟微整形处理针对的目标部位的实际情况,分配适合用户的微调权重。依据该微调权重对目标人脸图像虚拟微整形,能使微整形得到的图像更自然、美观,贴合用户的审美需求。且限定了各虚拟微整形处理的先后顺序,确保各虚拟微整形处理的效果相互叠加,提高人脸微调的整体效果,避免各虚拟微整形处理之间相互不兼容。
本申请第一方面实施例提出了一种图像处理方法,包括:
获取用户的目标人脸图像;
根据所述目标人脸图像,为所述用户分配每种虚拟微整形处理所需的微调权重,所述微调权重是依据所述目标人脸图像中所述虚拟微整形处理所针对的目标部位的部位特征信息分配的;
根据所述目标人脸图像及每种虚拟微整形处理对应的所述微调权重,生成所述目标人脸图像对应的人脸微调图像。
本申请第二方面实施例提出了一种图像处理装置,包括:
获取模块,用于获取用户的目标人脸图像;
权重分配模块,用于根据所述目标人脸图像,为所述用户分配每种虚拟微整形处理所需的微调权重,所述微调权重是依据所述目标人脸图像中所述虚拟微整形处理所针对的目标部位的部位特征信息分配的;
生成模块,用于根据所述目标人脸图像及每种虚拟微整形处理对应的所述微调权重,生成所述目标人脸图像对应的人脸微调图像。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
在本申请实施例中,根据虚拟微整形处理所针对的目标部位的实际情况,分配适合用户的微调权重。依据该微调权重对用户的目标人脸图像进行虚拟微整形处理,能够使微整形得到的人脸微调图像更加自然、美观,贴合用户的审美需求。而且限定了各虚拟微整形处理的先后顺序,确保各虚拟微整形处理的效果相互叠加,极大程度地提高人脸微调的整体效果,避免各虚拟微整形处理之间相互不兼容的问题。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。
在附图中:
图1示出了本申请一实施例所提供的一种图像处理方法的流程图;
图2和3示出了本申请一实施例所提供的磨皮处理中对人脸图像进行模糊处理的前后效果示意图;
图4-7示出了本申请一实施例所提供的对第一中心点像素进行横向模糊和纵向模糊的示意图;
图8和9示出了本申请一实施例所提供的图像取反并模糊处理的效果示意图;
图10示出了本申请一实施例所提供的拖拽控件的示意图;
图11示出了本申请一实施例所提供的第一查找表的示意图;
图12示出了本申请一实施例所提供的第二查找表的灰度示意图;
图13示出了本申请一实施例所提供的在第二查找表中进行颜色查找的示意图;
图14示出了本申请一实施例所提供的一种标准脸图像上定位出的人脸关键点示意图;
图15示出了本申请一实施例所提供的一种插值补点后的标准眼关键点图像;
图16示出了本申请一实施例所提供的一种双眼皮素材图像;
图17示出了本申请一实施例所提供的一种三角网格化后的标准眼区域图像;
图18示出了本申请一实施例所提供的一种目标人脸与加过双眼皮后的目标人脸的对比示意图;
图19示出了本申请一实施例所提供的第三查找表的灰度示意图;
图20示出了本申请一实施例所提供的牙齿美白扣出嘴部局部并染色之后的灰度示意图;
图21示出了本申请一实施例所提供的一种基于标准人脸图像形成的模板素材的示意图;
图22是本公开实施例提供的一种模板素材示出的卧蚕图像的灰度示意图;
图23示出了本申请一实施例所提供的摆正旋转角度的示意图;
图24示出了本申请一实施例所提供的对目标部位关键点平移操作的示意图;
图25示出了本申请一实施例所提供的一种图像处理装置的结构示意图;
图26示出了本申请一实施例所提供的一种电子设备的结构示意图;
图27示出了本申请一实施例所提供的一种存储介质的示意图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。
下面结合附图来描述根据本申请实施例提出的一种图像处理方法及装置
目前相关技术中在对用户的人脸图像进行磨皮、美白、瘦脸、放大眼睛、消除皱纹和黑眼圈等微调处理时,通常设置一个微调程度,对用户的人脸图像进行该微调程度的微整形处理。例如,设置一个瘦脸程度,对用户的人脸图像进行该瘦脸程度的脸部轮廓微调处理。由于对所有用户都按照相同的微调程度进行处理,导致用户的人脸图像被过度处理,显得虚假不自然。或者,导致用户的人脸图像处理程度不够,无法达到用户满意的微调效果。
为了解决相关技术中的上述问题,本申请实施例提供了一种图像处理方法,该方法根据虚拟微整形处理所针对的目标部位的实际情况,分配适合用户的微调权重。依据该微调权重对用户的目标人脸图像进行虚拟微整形处理,能够使微整形得到的人脸微调图像更加自然、美观,贴合用户的审美需求。而且对于磨皮、美白、双眼皮、瘦脸、消除皱纹和黑眼圈等多种虚拟微整形处理,该方法还限定了各虚拟微整形处理的先后顺序,确保各虚拟微整形处理的效果相互叠加,极大程度地提高人脸微调的整体效果,避免各虚拟微整形处理之间相互不兼容的问题。
参见图1,该方法具体包括以下步骤:
步骤101:获取用户的目标人脸图像。
本申请实施例的执行主体为终端,终端上安装有能够对视频或图像进行处理的APP。用户在使用该APP时,终端可以调用摄像头采集用户的目标人脸图像。用户也可以直接上传包含面部的照片作为目标人脸图像,或者目标人脸图像还可以是从网页中下载的。目标人脸图像可以为包含有人脸区域的一张图像,也可以为包含有人脸区域的多张图像。目标人脸图像中可以包含有一个人脸,也可以包含多个人脸。
终端在获取到目标人脸图像之后,可以在终端本地进行虚拟微整形处理,也可以将目标人脸图像发送至该APP对应的服务器进行虚拟微整形处理。
步骤102:根据目标人脸图像,为用户分配每种虚拟微整形处理所需的微调权重,微调权重是依据目标人脸图像中虚拟微整形处理所针对的目标部位的部位特征信息分配的。
在本申请实施例中,虚拟微整形处理可以包括磨皮处理、美白处理、双眼皮处理、局部颜色微调处理和局部形状微调处理中的一种或多种。其中,局部颜色微调处理包括牙齿美白处理、面部赘生物祛除处理、卧蚕处理等,面部赘生物可以为眼袋和/或皱纹,皱纹可以包括法令纹、抬头纹、眼角皱纹等。卧蚕处理用于在没有卧蚕或卧蚕不明显的人脸图像中进行处理,以使人脸图像中具有明显的卧蚕。局部形状微调处理包括眼睛缩放处理、对脸部轮廓、鼻翼、鼻头、鼻长、下巴、颧骨中的一个或多个目标部位的第一形状微调处理以及对嘴唇厚度、人中、内眼角、外眼角、上眼睑中的一个或多个进行微调处理的第二形状微调处理。
终端获得用户的目标人脸图像之后,对于上述任意一种虚拟微整形处理,从目标人脸图像中提取该虚拟微整形处理所针对的目标部位的部位特征信息,部位特征信息包括该目标部位的关键点坐标及纹理信息等。本申请实施例中预先设置了每个部位对应的每种部位类型的部位特征信息。获取到当前用户对应的目标部位的部位特征信息之后,根据该目标部位的部位特征信息及预先设置的该目标部位对应的每种部位类型的部位特征信息,分别计算该目标部位的部位特征信息与预先设置的对应的每种部位类型的部位特征信息之间的相似度,将相似度最高的部位类型确定为该目标部位所属的部位类型。获取该部位类型对应的预设权重。将获取的预设权重确定为对目标人脸图像进行虚拟微整形处理所需的微调权重。
例如,人的脸部轮廓可以划分为标准脸、倒三角形脸、方型脸、混合脸、圆型脸、长型脸、正三角形脸等多种类型。同样地,对于眼睛、下巴、鼻子、颧骨等均可以划分为多种类型。对于任意部位,分别设置该部位包括的每种类型对应的预设权重,如设置标准脸对应的预设权重为0.29,圆型脸对应的预设权重为0.57等。
根据虚拟微整形处理所针对的目标部位的实际情况,分配适合用户的微调权重。后续依据该微调权重对用户的目标人脸图像进行虚拟微整形处理,能够使微整形得到的人脸微调图像更加自然、美观,贴合用户的审美需求。
通过上述方式依次确定出对该用户的目标人脸图像进行每种虚拟微整形处理所需的微调权重。然后通过如下步骤103的操作来对用户的目标人脸图像分别进行各虚拟微整形处理。
步骤103:根据目标人脸图像及每种虚拟微整形处理对应的微调权重,生成目标人脸图像对应的人脸微调图像。
为了避免各虚拟微整形处理之间相互不兼容,如先放大眼睛再贴双眼皮导致双眼皮位置不对等问题。本申请实施例中限定了各种虚拟微整形处理的执行顺序,具体通过如下步骤S1-S5的操作来完成对目标人脸图像的各项虚拟微整形处理,包括:
S1:根据磨皮处理对应的微调权重,对目标人脸图像进行磨皮处理,得到第一图像。
由于若先进行美白、双眼皮处理等虚拟微整形操作,再进行磨皮处理的话,磨皮处理会将美白、双眼皮处理等虚拟微整形操作的效果磨掉,因此本申请实施例将磨皮处理放在最前面,首先对目标人脸图像进行磨皮处理,以避免磨皮处理对其他虚拟微整形处理造成影响。
具体地,通过如下步骤S11-S14的操作进行磨皮处理,包括:
S11:对目标人脸图像中的人脸区域进行第一次数的第一模糊处理,得到第一模糊图,第一模糊处理包括横向模糊处理以及纵向模糊处理。
其中,本申请不对第一次数进行具体限定,例如可以为一次,也可以为多次。另外一种方式中,可以根据人脸区域的数量或者所反映的用户属性,来确定第一次数的具体数值。具体可以利用预设的图像识别神经网络,检测目标人脸图像中人脸区域的特征参数,确定人脸区域所反映的用户属性,用户属性用于表征人物性别、人物年龄以及人物肤色状态的至少一种;根据用户属性,确定第一次数。其中,本申请不对图像识别神经网络做具体限定。例如可以为卷积神经网络(Convolutional Neural Networks,CNN)。卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习的代表算法之一。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类。得益于CNN(卷积神经网络)对图像的强大特征表征能力,其在图像分类、目标检测、语义分割等领域都取得了令人瞩目的效果。
进一步的,本申请可以使用CNN神经网络模型来检测原始图像中人脸区域的特征参数,进而对人脸区域进行特征识别,确定人脸区域所反映的用户属性。其中,需要将该人脸区域图像输入至预设的卷积神经网络模型中,并将卷积神经网络模型最后一层全连接层(FC,fully connected layer)的输出作为对该人脸区域图像对应的特征数据的识别结果。
例如,当该人脸区域所反映的用户属性为女性时,即可以将第一次数设定为多次,而该人脸区域所反映的用户属性为男性时,即可以将第一次数设定为一次。又或,当该人脸区域所反映的用户属性为年轻人时,即可以将第一次数设定为多次,而当该人脸区域所反映的用户属性为老年人时,即可以将第一次数设定为一次。
在本申请的另一些实施例中,还可以先确定目标人脸图像中人脸区域的数量;若确定人脸区域的数量为至少两个时,对目标人脸图像中的第一人脸区域进行第四次数的第一模糊处理,以及对目标人脸图像中的第二人脸区域进行第五次数的第一模糊处理,其中第四次数与第五次数不相同。
例如,当该人脸区域所反映的用户数量为多个时,即可以将第一次数设定为多次,而当该人脸区域所反映的用户数量为一个时,即可以将第一次数设定为一次等等。
进一步的,对于将目标人脸图像中的人脸区域进行模糊处理来说,即是将该目标人脸图像进行图像滤波处理的一种方式。具体的,图像模糊处理是图像处理和计算机视觉中的操作。主要是去除图像中的噪声。
更进一步的,本申请实施例中可以将噪声所在像素点的像素值处理为其横向(以及纵向)临近像素点的值的近似值。具体的,本申请需要确定待处理的像素点相邻的横向以及纵向的若干个像素取平均值。以使后续以当前像素点为中心,读行数和列数相等的一块区域内的所有像素点求平均值。并将计算得到的平均值结果作为该点的像素值。
在进行第一模糊处理的过程中,确定与第一中心点像素横向相邻的第一数量个第一相邻像素;以及,确定与第一中心点像素竖向相邻的第一数量个第二相邻像素;基于第一中心点像素和第一相邻像素,对目标人脸图像中人脸区域进行横向模糊处理;对人脸区域中每个像素点均进行横向模糊处理后,基于第一中心点像素和第二相邻像素,对人脸区域进行纵向模糊处理。
其中,第一数量可以为2、4或6等。第一中心点像素可以为目标人脸图像中人脸区域中的任一像素点。
在横向模糊处理中,首先计算第一数量个第一相邻像素的像素值总和的均值,将该均值称为第一像素均值。将第一中心点像素的像素值变更为该第一像素均值。对于每个第一中心点像素均进行横向模糊处理之后,再分别对每个第一中心点像素进行纵向模糊处理。在纵向模糊处理中,计算第一数量个第二相邻像素的像素值总和的均值,将该均值称为第二像素均值。将第一中心点像素的像素值变更为第二像素均值。
本申请在对目标人脸图像进行横向模糊处理及纵向模糊处理的过程中,不对横向模糊处理及纵向模糊处理的先后顺序进行具体限定,例如可以首先对图像进行横向模糊处理后,再对经过横向模糊处理后的图像进行纵向模糊处理。也可以先对图像进行纵向模糊处理后,再对经过横向模糊处理后的图像进行横向模糊处理。
如图2和3所示,为对目标人脸图像的人脸区域进行第一次数的第一模糊处理的前后效果图,其中本申请实施例中可以将第一中心点像素的像素值处理为其横向临近像素点的值的近似值。以及,将第一中心点像素的像素值处理为其纵向临近像素点的值的近似值。具体的,本申请需要确定待处理的像素点相邻的横向的若干个像素(即与第一中心点像素横向相邻的第一数量个第一相邻像素)以及相邻的纵向的若干个像素(即与第一中心点像素纵向相邻的第二数量个第二相邻像素)取平均值。以使后续以当前像素点为中心,读其横行数和纵列数相等的一块区域内的所有像素点求平均值。并将计算得到的平均值结果作为该点的像素值。
例如以第一数量为3个,以横向模糊处理举例,如图4和5所示,即可以取像素值为2的像素作为第一中心点像素,并确定与该第一中心点像素横向相邻的左右各3个第一相邻像素,即左边为1、1、1的3个像素及右边为1、1、1的3个像素。并将像素值为2的第一中心点像素的像素值变更为与其相邻的第一相邻像素的像素值总和的均值(即为像素值1)。
同样的,以图6和7所示,即可以取像素值为2的像素作为第一中心点像素,并确定与该第一中心点像素纵向相邻的上下各3个第二相邻像素,即分别上边为1、1、1的3个像素及下边为1、1、1的3个像素。并将像素值为2的第二中心点像素的像素值变更为与其相邻的第二相邻像素的像素值总和的均值(即为像素值1)。
在本申请一种可能的实施方式中,在S11(对人脸区域进行第一次数的第一模糊处理)之前,还可以先将包含有人脸区域的目标人脸图像进行第一比例的缩放。先对目标人脸图像按照第一比例缩放,减小了目标人脸图像的分辨率,然后再进行上述第一模糊处理,能够进一步提高模糊效果。其中,本申请不对第一比例进行具体限定,例如可以为二分之一,也可以为三分之一等等。
S12:根据第一模糊图与目标人脸图像进行融合处理,得到第一待处理图像。
对于图像融合来说,是指将多个图像进行合成从而生成一张目标图像的过程。本申请中,在将目标人脸图像中的人脸区域进行第一次数的第一模糊处理之后,即可利用图像处理和计算机技术等,最大限度的提取第一模糊图与原始图像中的有利信息,最后综合融合成高质量的第一待处理图像,以提高图像信息的利用率、改善计算机解译精度和可靠性、提升原始图像的空间分辨率和光谱分辨率。
在本申请的一些实施例中,可以直接将第一模糊图与目标人脸图像进行融合得到第一待处理图像。
在本申请的另一些实施例中,也可以先对第一模糊图进行取反处理。取反处理即为反转图像中像素的强度,从而使得图像中的前景变为背景,背景变为前景。本申请实施例中,可以通过改变第一模糊图的像素映射从而实现对第一模糊图进行取反处理。例如,可以将第一模糊图的像素值0变为255,1变为254,…,254变为1,255变为0等。从而得到取反处理后的第一模糊图。
之后对取反处理后的第一模糊图进行边缘提取,得到第二待处理图像。具体的,可以利用如下公式得到:Dst=src-src1;
其中,Dst为第二待处理图像,src为第一模糊图,src1为取反处理后的第一模糊图。
另外,为了使得均值和标准偏差局部阈值分割,能够较好的分开目标和背景,本申请可以取均差阈值(var)为Dst1.r+Dst1.g+Dst1.a*0.333。其中,Dst1=Dst*0.7,且Dst3=src(第一模糊图).rgb。Dst3.a=var。
另外,为了将提取到的取反处理后的第一模糊图中的噪点进行消除,如图8和9所示,本申请还需要对第二待处理图像进行第二次数的第二模糊处理,得到第三模糊图,第二模糊处理包括上述横向模糊处理和纵向模糊处理。并将第一模糊图、第三模糊图与目标人脸图像进行图像融合,得到第一待处理图像。
其中,本申请不对第二次数进行具体限定,例如可以为一次,也可以为多次。另外一种方式中,可以根据人脸区域的数量或者所反映的用户属性,来确定第二次数的具体数值。再者,本申请中的第二次数可以与第一次数相同,也可以不相同。需要说明的是,本申请对第二待处理图像进行第二模糊处理的方式与步骤S11中一致,在此不再赘述。
本申请中将第一模糊图、第三模糊图与目标人脸图像进行图像融合,得到第一待处理图像,可以通过下述步骤实现:将第一模糊图、第三模糊图与目标人脸图像进行图像融合,得到一融合图像;确定该融合图像中,亮度值大于预设参数的第一图像区域,以及亮度值不大于预设参数的第二图像区域;将由原始图像组成的第一图像区域,以及由非原始图像组成的第二图像区域合并作为第一待处理图像。
进一步的,由于目标人脸图像中通常包括人脸区域图像和非人脸区域图像(例如用户背靠墙壁自拍,那么用户身后的墙壁部分即为非人脸区域图像)。而在对用户图像进行磨皮的过程中,通常只需要对人脸区域部分进行处理即可,也就是说无需对非人脸部分进行磨皮。因此本申请实施例中,在将第一模糊图、第三模糊图与目标人脸图像进行图像融合,得到融合图像之后,可以区分出融合图像中的人脸部分以及非人脸部分。
更进一步而言,本申请实施例可以依据上述融合图像所在的各个图像区域的亮度值来确定图像中的人脸部分以及非人脸部分。可以理解的,由于第三模糊图为对第二待处理图像进行第二模糊处理而得到的,且第二待处理图像为对第一模糊图进行取反处理后而得到的图像(也即处理后的图像在用户人脸部分的亮度较差)。因此本申请可以确定在该融合图像中,亮度值大于预设阈值的第一图像区域(即非人脸部分),以及亮度值不大于预设阈值的第二图像区域(人脸部分)。并将目标人脸图像中的第一图像区域(也即保留目标人脸图像中的非人脸部分),以及第一模糊图和第三模糊图融合后的图像中的第二图像区域合并作为第一待处理图像(也即保留第一模糊图和第三模糊图融合后的图像中的人脸部分)。
需要说明的是,本申请不对预设阈值进行具体限定,例如可以为10cd/m,也可以为100cd/m等等。
S13:将第一模糊图进行均值模糊得到第二模糊图。
可以先对第一模糊图进行第二比例的缩放。其中,本申请不对第二比例进行具体限定,例如可以为二分之一,也可以为三分之一等等。另外,第二比例可以与第一比例相同,第二比例也可以与第一比例不相同。
然后对进行第二比例缩放的第一模糊图进行均值模糊,得到第二模糊图。具体地,确定缩放后第一模糊图对应的第二中心点像素;确定与第二中心点像素周围相邻的第三数量个第三相邻像素;将第二中心点像素的像素值变更为第三像素均值,得到第二模糊图,第三像素均值为第三相邻像素的像素值总和的均值。
本申请可以首先确定第一模糊图对应的第二中心点像素,本申请不对第二中心点像素的数量进行具体限定,例如其可以为第一模糊图的二个像素点,也可以为第一模糊图的多个像素点,还可以为第一模糊图所在的全部像素点。
本申请实施例中可以将第二中心点像素所在像素点的像素值处理为其周围相邻的所有临近像素点的值的平均值。具体的,本申请需要确定待处理的像素点周围相邻的若干个像素值的和值。以使后续以当前像素点为中心,读周围相邻的一块区域内的所有像素点求平均值。并将计算得到的平均值结果作为该点的像素值。
其中,本申请实施例可以根据下述公式实现对第一模糊图进行均值模糊,得到第二模糊图的过程:
其中,u和v为第二中心点像素周围相邻的像素,r为模糊半径,σ为正态分布的标准偏差。
S14:根据磨皮处理对应的微调权重,将目标人脸图像、第一待处理图像以及第二模糊图进行图像融合。
本申请还可以根据磨皮处理对应的微调权重,将目标人脸图像、第一待处理图像以及第二模糊图进行图像融合,从而得到最终的磨皮处理后的人脸微调图像。
具体地,将目标人脸图像、第一待处理图像以及第二模糊图进行图像融合,得到第一融合图像;基于预设的锐度参数,对第一融合图像进行锐度调整。
本申请适应性的根据预设的锐度参数,调整第一融合图像的图像锐度参数,从而达到提升人脸区域图像识别效果的目的。具体的,本申请可以根据如下公式确定锐度参数:
其中,M为锐度参数,Imax为图像的亮度最大值,Imin为图像的亮度最小值。
锐度参数可以根据图像的亮度最大值和亮度最小值的差值除以它们的和。例如在一张图像中,当Imax=255,Imin=10,那么锐度参数M=0.9245。
在本申请的另一些实施例中,在对第一融合图像进行锐度调整的过程中,也可以适应性的调整第一融合图像的图像尺寸,从而达到提升物体识别效果的同时尽量保证深度图像中物体清晰的目的。
通过上述方式对第一融合图像进行锐度调整之后,根据磨皮处理对应的微调权重,将锐度调整后的第一融合图像与目标人脸图像进行图像融合,得到第二融合图像。可以将第二融合图像作为磨皮处理得到的人脸微调图像,并将该微调图像显示给用户。
在将第二融合图像显示给用户的同时,还为用户显示一个用于调整微调权重的拖拽控件,该拖拽控件包括拖拽块和拖拽条,拖拽条用于指示可供调整的微调权重的范围,用户可以通过拖动拖拽块来设置自定义的微调权重。如图10所示,该拖拽条的拖拽范围为0-1。显卡显示上述第二融合图像时,该拖拽块在拖拽条上所指示的微调权重即为上述磨皮处理对应的微调权重。用户看到显示的图像,若对磨皮效果不满意,则可以通过拖动拖拽块来提交自定义权重。
若确定接收到用户针对第二融合图像生成的修改指令,基于修改指令,确定用户提交的自定义权重;根据自定义权重,将锐度调整后的第一融合图像与目标人脸图像进行图像融合,得到第三融合图像。然后将第三融合图像显示给用户。
例如,以磨皮处理对应的微调权重为50%而言,第二融合图像即为每个像素点显示50%的原始图像和50%的锐度调整后的第一融合图像。如果用户对该第二融合图像不满意,则可以由其提交一个自定义权重。可以理解的,该自定义权重用于表征用户期望的磨皮程度。如当用户认为第二融合图像的磨皮处理程度不够时,则其可以提交自定义权重如80%,则可以将第一融合图像与目标人脸图像进行80%比例的图像融合,得到第三融合图像(即为每个像素点显示20%的原始图像和80%的锐度调整后的第一融合图像)。
通过应用上述磨皮处理方案,可以将目标人脸图像通过包含横向模糊以及纵向模糊而得到的模糊图后,与目标人脸图像和该模糊图进行多次不同程度的融合,从而得到精准磨皮后的目标图像。进而避免出现相关技术中存在的仅能采用均值模糊方法为用户处理图像所带来的处理时间长的问题。
S2:根据美白处理对应的微调权重,对第一图像进行美白处理,得到第二图像。
通过上述步骤S1的操作对目标人脸图像进行磨皮处理之后,从磨皮处理得到的第一图像中提取面部图像数据并写入存储设备。然后通过查找表对图像数据像素的颜色值进行替换。通过颜色值替换的方式可以实现对面部图像数据进行美白处理。
首先介绍一下查找表,查找表(Look-Up-Table,LUT)本质上就是一个RAM。它把数据事先写入RAM后,每当输入一个信号就等于输入一个地址进行查表,找出地址对应的内容,然后输出。
LUT的应用范围比较广泛,例如:LUT可以应用到一张像素灰度值的映射表,它将实际采样到的像素灰度值经过一定的变换如阈值、反转、二值化、对比度调整、线性变换等,变成了另外一个与之对应的灰度值,这样可以起到突出图像的有用信息,增强图像的光对比度的作用。很多PC系列卡具有8/10/12/16甚至32位的查找表,具体在查找表里进行什么样的变换是由软件来定义的。在这里查找表最重要的意义,就在于兼容了普通显示器的高阶显示功能,使得那些不能被普通显示器所显示的宽色域(一般指超过srgb)能够尽量被大致模拟在普通显示器上。然而,查找表所模拟的效果,只能作为参考,作为修图时的大致观感。最佳、最完整的呈现,仍然是显示器、显卡以及素材本身的各项指标高度一致,所谓“硬解码”。
查找表相当于一个离散函数,给一个输入值,通过查找表来得到一个输出值。查找表可以用于很多地方,在调色领域称为颜色查找表,颜色查找表有三个分量R、G、B,文中把输入分量称为:Rin、Gin、Bin;输出分量称为Rout、Gout、Bout。输入输出呈一一对应关系,系统根据查找表中的对应关系为每一个输入值查找到输出值,从而完成颜色的转换。
查找表可以从查找方式上分为:1D查找表和3D查找表,转换公式如下:
1D查找表:
Rout=FLUT(Rin)
Gout=FLUT(Gin)
Bout=FLUT(Bin)
从公式可以看出1D查找表中RGB数据相互独立,只能影响R、G、B各自的亮度,可以控制Gamma值,平衡RGB颜色。
在色深为10位的系统中包含的数据,数据量较小。
3D查找表:
从公式来看,3D查找表影响的范围更深刻,RGB每一个色彩分量都和输入的三个分量相关,通过3D查找表可以影响色相、饱和度、亮度等,几乎可以影响到画面的各个方面。
在色深为10位的系统中包含的数据,数据量巨大,所以通常3D查找表会通过列举节点来储存,两个节点之间的数据用差值的方法来计算,所以节点的数目是衡量3D查找表精度的标志。目前色彩管理系统最大支持的节点数为257。
在本申请实施例中,面部图像数据可以包括面部皮肤图像,首先识别第一图像中的所有人脸关键点,根据识别的人脸关键点,从第一图像中扣取出面部皮肤图像。然后通过预设的第一查找表对面部皮肤图像进行明暗替换得到替换后的图像数据。其中,第一查找表为一张一维的由黑到白逐渐渐变的颜色查找表,具体如图11所示。
具体地,对于面部皮肤图像中的每个像素点,从面部皮肤图像中获取像素点的颜色值,像素点的颜色值为0-255之间的数值。将该颜色值确定为待查找的一维坐标。在第一查找表中查询该一维坐标处的颜色值。将面部皮肤图像中该像素点的颜色值替换为查找出的该一维坐标处的颜色值。
例如,假设面部皮肤图像中一像素点的颜色值为x,则对应的一维坐标为(x,1.0)。在第一查找表中查看坐标为(x,1.0)处的颜色值y。将面部皮肤图像中该像素点的颜色值由x替换为y。
然后对第一图像中像素点的原颜色值以及替换后的颜色值进行第一融合。具体地,第一融合具体按照如下公式进行融合:
C2=C*a+C1*(1-a)
其中,C2表示第一融合后像素点的颜色值,C1表示面部皮肤图像替换后该像素点的颜色值,C表示面部皮肤图像中该像素点的原颜色值。a为加权系数,a的取值可以为0.5、0.6等。
通过上述方式将面部皮肤图像中每个像素点的颜色值,均替换为第一查找表中查找出的相应颜色值。然后依据上述加权融合公式,对替换后的面部皮肤图像与原始的面部皮肤图像进行融合,使得融合后的面部皮肤图像中每个像素点的颜色值均为替换后的颜色值与替换前的颜色值的加权之和。实现通过第一查找表对面部皮肤图像进行明暗替换,提高面部皮肤图像的亮度,达到面部皮肤提亮的效果。
进行上述融合处理后,再对融合后的面部皮肤图像进行融合了权重系数的融合。具体地,根据美白处理对应的微调权重,对第一融合处理后第一图像中的面部皮肤图像中像素点的颜色值和原始的第一图像中面部皮肤图像中像素点的颜色值进行第二融合。
具体地,第二融合具体按照如下公式进行融合:
C3=C*(1.0-D)+C2*D
其中,D表示美白处理对应的微调权重,C2表示第一融合后像素点的颜色值,C3表示第二融合后像素点的颜色值。
通过第一查找表对面部皮肤图像进行提亮之后,再根据美白处理对应的微调权重,将原始的面部皮肤图像的颜色与提亮后的颜色进行融合,如此可以通过微调权重对面部皮肤图像进行一定程度的美白,美白处理对应的微调权重相当于美白程度,微调权重的取值区间为0-1,0表示不美白,1为最大程度的美白。
进行上述第一融合和第二融合处理之后,利用预设的第二查找表对第二融合处理后的图像进行颜色调节。其中,需要说明的是,本公开所指的第二查找表为一张由多幅彩色图拼成的二维颜色查找表,如由四乘四排布的多幅彩色图拼成的查找表,该第二查找表中位于左上角的彩色图的左上顶点为黑色,位于右下角的彩色图的右下顶点为白色,在第二查找表中彩色图按照从左到右、从上到下色调由暗到亮渐变的顺序排布,具体如图12所示。
对于第二融合处理后的面部皮肤图像中的每个像素点,从面部皮肤图像中获取像素点RGB三通道颜色值。根据该像素点RGB三通道的颜色值,在第二查找表中查询对应的三通道颜色值。即根据该像素点R通道的值,在第二查找表中查询对应的R通道值。根据该像素点G通道的值,在第二查找表中查询对应的G通道值。以及,根据该像素点B通道的值,在第二查找表中查询对应的B通道值。
如图13所示,RGB输出=LUT(R输入,G输入,B输入)。输入RGB三通道值为(50,50,50),则输出的三通道值为(70,70,70)。输入的三通道值为(50,70,50),则输出的三通道值为(85,90,70)。输入的三通道值为(50,70,60),则输出的三通道值为(90,95,80)。
对于第二融合处理后的面部皮肤图像中的每个像素点,都通过上述方式在第二查找表中查询对应的三通道值,之后将第二融合处理后的面部皮肤图像中像素点当前的三通道颜色值替换为查询到的三通道颜色值。
通过第二查找表对第二融合处理后的面部皮肤图像中的像素点的颜色值进行替换,实现对面部皮肤图像的进一步美白。且第二查找表中排布的多个彩色图能够实现对面部皮肤图像中的红色和黄色进行调节,对面色偏红、偏黄的面部皮肤图像的美白效果更好。
通过本步骤的操作完成了对面部皮肤图像的美白处理。后续将最终处理得到的面部皮肤图像与之前分割出的五官图像重新融合为人脸图像,即得到了面部美白后的人脸图像。如此仅对面部皮肤进行了美白处理,不会改变眼睛、眉毛、嘴唇、头发等区域的颜色,使得面部美白处理的针对性更强,美白处理效果更自然。
本步骤应用查找表技术对用户拍摄的面部图像进行亮度调整以及颜色替换,从而提供了更加真实的美白效果。
S3:若检测到目标人脸图像中眼部为单眼皮,则根据双眼皮处理对应的微调权重,在第二图像中将用户的眼部调整为双眼皮,得到第三图像。
在本申请实施例中,通过步骤S1和S2先后对目标人脸图像进行磨皮和美白处理之后,判断美白处理得到的第二图像中用户的眼部所属的眼皮类型,若用户属于双眼皮类型,则无需进行本步骤的双眼皮处理,直接进入下述步骤S4的操作。若用户属于单眼皮类型,则通过本步骤的处理在第二图像中将用户的眼部调整为双眼皮。
首先获取基于标准人脸图像获得的标准眼关键点、三角剖分网格和标准双眼皮素材。其中,标准人脸图像为五官端正、面部无遮挡、眼睛平视的人脸图像。如图14所示,标准脸图像上定位出的人脸关键点,可以包括人脸面部周围、眼部周围、鼻三角周围、口部周围、眉毛周围等的点,其中,定位出的人脸关键点中包括标准眼关键点,包括左、右眼角处的两个关键点,上眼睑最高处的一个关键点以及该关键点左右两边的两个关键点,下眼睑最低处的一个关键点以及该关键点左右两边的两个关键点。
对上述标准眼关键点进行插值补点,以生成新的标准眼关键点。具体地,可以先从定位出的关键点中获取标准眼关键点,并采用预设插值算法在标准眼关键点中进行插值,然后以插值得到的标准眼关键点为起始点,进行预设方向的移动生成新的关键点,进而将插值得到的标准眼关键点和生成的新的关键点作为新的标准眼关键点,使得眼睛部位点更加密集,便于后续将标准双眼皮素材更好融合到目标图像的眼部。其中,预设插值算法可以采用三次贝塞尔曲线,公式如下:
B3(t)=(1-t)3P0+3t(1-t)2P1+3t2(1-t)P2+t3P3,t∈[0,1]
其中,P0、P1、P2、P3为连续的四个标准眼关键点,t为插值系数。也就是说,每次用四个连续的标准眼关键点可以插值得到一个新的标准眼关键点。
对插值得到的标准眼关键点进行移动,生成新的关键点,移动公式如下:
P0'=P0+Dir*len
其中,P0为标准眼关键点(即作为原始点),Dir为移动方向的单位向量,len为移动距离。
在一示例中,如图15所示,为插值补点后的标准眼关键点图像,具体是将位于眼部上眼睑的关键点向上移动预设距离,位于眼部下眼睑的关键点向下移动预设距离,位于眼角的关键点横向向外移动预设距离。值得注意的是,向上和向下移动的距离不超过眉毛与眼部之间的距离。
从标准人脸图像中截取新的标准眼关键点对应的标准眼图像。以标准眼图像为模板制作标准双眼皮素材。在一实施例中,可以输出显示标准眼图像,然后接收用户在标准眼图像上绘制的标准双眼皮素材,并对标准双眼皮素材进行模糊及阴影渐变处理,使得双眼皮素材与标准眼的结合效果更加真实,进而在将双眼皮素材融合到目标图像的眼部上的效果会更贴合更跟随,参见图16所示,为生成的双眼皮素材。
其中,标准双眼皮素材中除了双眼皮位置的像素不是透明的,其他位置的像素均为透明的,以便于在与目标图像的眼部区域进行融合时,只将双眼皮位置的像素与目标图像进行融合,而其他位置的像素不影响目标图像中的像素。
在本申请实施例中,还可以采用三角剖分法生成标准眼关键点的三角剖分网格,其包括多个三角形,每个三角形的顶点为一个标准眼关键点,如图17所示,为三角网格化后的标准眼区域图像。
通过上述方式获得基于标准人脸图像的标准眼关键点、三角剖分网格和标准双眼皮素材之后,定位上述美白处理得到的第二图像中的人脸关键点,对第二图像中的人脸关键点包括的眼部关键点进行插值补点,以生成新的眼部关键点。此处插值补点与上述标准眼关键点的插值补点处理方式相同,在此不再赘述。
然后根据双眼皮处理对应的微调权重和新的眼部关键点,将预先制作的标准双眼皮素材与第二图像中的眼部区域融合,得到融合后的眼部区域图像。
融合过程可以包括:建立新的标准眼关键点与新的眼部关键点之间的映射关系,并根据该映射关系将标准双眼皮素材融合到第二图像中的眼部区域上。由于标准双眼皮素材是基于标准眼图像制作的,因此根据标准眼关键点与眼部关键点的映射关系可以将标准双眼皮素材更好的融合到第二图像的眼部。
其中,由于新的标准眼关键点与新的眼部关键点的数量相同,因此二者可以建立起一一映射关系,例如标准眼上眼睑上的关键点与第二图像中上眼睑上的关键点一一对应。在一示例中,可以按照预设顺序为标准眼的每个关键点和第二图像中眼部的每个关键点分别分配索引号,将相同索引号的两个关键点之间建立映射关系。
在一些实施例中,根据映射关系进行融合的过程可以包括:根据映射关系,获取三角剖分网格在第二图像中的眼部区域上所覆盖的像素点,然后针对获取的每个像素点,根据双眼皮处理对应的微调权重、该像素点的第一像素值和该像素点对应在标准双眼皮素材上的第二像素值,计算该像素点的目标像素值。由于三角剖分网格是由标准眼关键点建立,而标准眼关键点与第二图像中的眼部关键点存在一一映射关系,因此可以根据映射关系获取到三角剖分网格在第二图像的眼部区域上所覆盖的像素点,并对这些像素点进行融合,以确保获得的双眼皮的效果更加真实。
根据双眼皮处理对应的微调权重、第一像素值和第二像素值计算像素点的目标像素值,计算公式如下:
P目标=α*(P标准眼*P目标眼部)/255
其中,α为双眼皮处理对应的微调权重,P标准眼为第二像素值,P目标眼部为第一像素值。在一示例中,由于标准双眼皮素材是以标准眼为模板制作获得,因此标准眼三角剖分网格对应也可以贴到标准双眼皮素材中,进而标准眼三角剖分网格在第二图像的眼部区域所覆盖的像素点对应在标准双眼皮素材上的像素位置可以根据其属于网格中的三角形进行确定。
在另一示例中,双眼皮处理对应的微调权重也可以由用户进行调整,以满足用户的实际调整需求,因此也可以通过图10所示的拖拽控件接收用户输入的自定义权重后,根据接收的自定义权重、第一像素值和第二像素值计算像素点的目标像素值。
在像素融合过程中,由于标准双眼皮素材中除了双眼皮位置的像素不是透明的,其他位置的像素均为透明的。因此对应双眼皮位置的像素可以融合到第二图像的眼部像素,对应其他位置的像素不会改变第二图像的眼部像素。
在一示例性场景中,参见图18所示,其中的图(a)为采集的目标图像人脸,其眼睛为单眼皮类型,经过上述实施例方案处理后,得到图(b)中的双眼皮效果图,真实感逼真。
通过上述处理流程,在定位出人脸的眼部关键点基础上,进一步对眼部关键点进行插值补点,使得眼睛部位点更加密集,从而根据新生成的眼部关键点,可以将预先制作好的标准双眼皮素材更好的融合到人脸图像的眼部,使得生成的双眼皮更贴合更跟随,并且通过使用标准双眼皮素材模拟双眼皮效果会更加真实、逼真。
S4:若检测到目标人脸图像中局部颜色微调处理所针对的目标部位符合预设颜色微调处理条件,则根据局部颜色微调处理对应的微调权重,在第三图像中对局部颜色微调处理所针对的目标部位进行调整,得到第四图像。
若目标人脸图像中用户属于单眼皮类型,则经过步骤S3的双眼皮处理得到第三图像,然后执行本步骤操作。若目标人脸图像中用户属于双眼皮类型,则不执行步骤S3的操作,直接依据步骤S2美白处理得到的第二图像执行本步骤的操作。
本步骤中的局部颜色微调处理可以包括牙齿美白处理、面部赘生物祛除处理、卧蚕处理等,面部赘生物可以为眼袋和/或皱纹,皱纹可以包括法令纹、抬头纹、眼角皱纹等。卧蚕处理用于在没有卧蚕或卧蚕不明显的人脸图像中进行处理,以使人脸图像中具有明显的卧蚕。其中,牙齿美白处理、面部赘生物祛除处理、卧蚕处理等局部颜色微调处理可以按照任意顺序依次处理,也可以并行处理。下面依次介绍各局部颜色微调处理的过程。
上述预设颜色微调处理条件包括牙齿美白处理、面部赘生物祛除处理、卧蚕处理等局部颜色微调处理对应的触发条件。其中,牙齿美白处理的触发条件可以为待处理的人脸图像中唇部是开启的,可以通过人脸识别技术识别唇部的纹理特征来确定唇部是否是开启的。面部赘生物祛除处理的触发条件可以为待处理的人脸图像中具有眼袋、法令纹、抬头纹、眼角皱纹等面部赘生物,可以通过人脸识别技术识别人脸图像中是否存在这些面部赘生物。卧蚕处理的触发条件可以为待处理的人脸图像中没有卧蚕或卧蚕宽度小于预设数值同样可以通过人脸识别技术识别人脸图像中是否存在卧蚕以及卧蚕的宽度。
下面依次详细说明牙齿美白处理、面部赘生物祛除处理、卧蚕处理的处理过程。
其中,牙齿美白处理与步骤S2中所述的面部皮肤美白处理相似。首先,根据人脸面部特征,从待处理图像中将嘴部图像单独提取出来,并对提取后的嘴部图像进行染色处理。其中,待处理图像可以为美白处理得到的第二图像或双眼皮处理得到的第三图像。
然后对嘴部图像进行抠图处理,并根据预设的第三查找表和牙齿美白处理对应的微调权重,对抠图处理后的嘴部图像数据进行颜色调节。其中,第三查找表与第二查找表排布方式相同,都为四乘四的多副色图所构成的查找表,但是每幅色图第三查找表与第二查找表并不相同,第三查找表的灰度图具体如图19所示。如果将第三查找表应用在上述面部美白的技术方案中,会导致整个画面呈现一片白色,无法识别人的面部,由于牙齿整体为白色色调,所以需要使用第三查找表这一特化后的查找表。
在该方案中,用户根据人脸面部特征对人脸图像中的嘴部图像进行提取,提取出嘴部图像后,会对提取出的嘴部图像进行染色处理,如可以采用粉色或红色等颜色染色处理,如图20所示为粉色染色处理后的灰度图。经过染色处理后利用图像抠图将嘴部局部图像从人脸面部整体图像中抠出,并通过第三查找表进行颜色调节。
具体地牙齿美白处理过程为,获取待处理的人脸图像,识别并定位人脸图像中的关键点数据。人脸图像中的关键点数据可以是通过预设的人脸关键点检测模型检测出的人脸关键点,包括脸部轮廓、眼睛、鼻子、嘴巴、眉毛等区域的关键点。根据识别的关键点数据,从该人脸图像中确定出嘴部区域。获取预先制作的嘴唇对应的模板素材,模板素材为预设颜色的嘴部图像,预设颜色可以为粉色、红色等。根据人脸图像中嘴部区域的像素点坐标,通过索引的方式将模板素材贴合于空白纹理中,使得模板素材在空白纹理图中所处的位置与上述嘴部区域在人脸图像中所处的位置相同,如此通过模板素材完成了对嘴部图像进行染色的处理。
然后基于该模板素材的纹理数据,对与模板素材对应的人脸图像中的嘴部区域进行牙齿美白处理。首先,基于模板素材的纹理数据,在第三查找表中查询嘴部区域中每个像素点对应的颜色值。然后将人脸图像中所述嘴部区域的每个像素点当前的颜色值分别替换为查询出的每个像素点对应的颜色值。
具体地,从贴有模板素材的空白纹理中获取第一像素点的预设颜色通道的通道值,第一像素点为模板素材中的任一像素点。预设颜色通道可以为R、G、B三通道中的任一通道。根据获取的通道值,计算第一像素点对应的第一坐标和第二坐标。确定第一坐标对应的RGB三通道的第一颜色值及第二坐标对应的RGB三通道的第二颜色值。在第三查找表中分别查询第一颜色值对应的第三颜色值及第二颜色值对应的第四颜色值。将查找出的第三颜色值和第四颜色值的平均颜色值确定为第一像素点对应的美白处理后的颜色值。
通过上述方式分别确定出空白纹理图中模板素材的每个像素点对应的美白处理后的颜色值。然后对于人脸图像的嘴部区域的每个像素点,将像素点当前的像素值替换为与模板素材中坐标相同的像素点对应的美白处理后的颜色值。
为了便于理解上述通过第三查找表查找像素点对应的颜色值的过程,下面以具体实例进行说明。假设预设颜色通道为B通道,则从贴有模板素材的空白纹理图中获取第一像素点的B通道值,依据B通道值计算第一像素点对应的第一坐标和第二坐标。首先计算B1=B/255*15,然后计算Y=floor(B1)*0.2,X=floor(B1)-Y*4,V=(X,Y)为第一像素点对应的第一坐标。计算Y1=ceil(B1)*0.2,X1=ceil(B1)-Y*4,V1=(X1,Y1)为第一像素点对应的第二坐标。将第一像素点的三通道颜色值R、G、B作为第一坐标(X,Y)的颜色值。计算R1=R*0.234375+0.0078125,G1=G*0.234375+0.0078125,将R1、G1、B1作为第二坐标(X1,Y1)的颜色值。记RG(R1,G1),texPos1.XY=V*0.25+RG,texPos2.X1Y1=V1*0.25+RG。分别以texPos1.XY和texPos2.X1Y1为待查询坐标,在第三查找表中查询texPos1.XY处的颜色值COLOR=RGBA(texPos1.XY),以及查询texPos2.X1Y1处的颜色值COLOR1=RGBA(texPos2.X1Y1)。计算(COLOR+COLOR1)/2,将计算的值作为上述第一像素点对应的美白处理后的颜色值。然后将人脸图像的嘴部区域中坐标与第一像素点坐标相同的像素点的颜色值修改为(COLOR+COLOR1)/2。
对于待处理的人脸图像,通过步骤S2的方式对面部皮肤进行美白,以及通过步骤S4的方式对嘴部区域进行牙齿美白处理,提高了人脸图像的面部美白效果。本申请中通过第一查找表对面部皮肤图像进行提亮,通过第二查找表对面部皮肤图像进行颜色调整,实现仅对面部皮肤区域进行美白处理,不会影响整个图像背景的色彩,也不会改变眼睛、头发、眉毛、嘴唇等部位的颜色。以及从人脸图像中提取出嘴部区域,通过第三查找表仅对嘴部区域进行牙齿美白处理,不会影响脸部的其他区域。实现了对皮肤区域和牙齿区域分别进行美白处理,如此美白后的图像没有滤镜感,美白效果很好,且视觉上更加自然。
对于面部赘生物祛除处理,面部赘生物包括眼袋和/或皱纹,皱纹包括法令纹、抬头纹或眼角皱纹等。首先读取在先生成的第一模板素材,模板素材示出有标准人脸的目标区域。目标区域可以包括但不限于眼袋所在区域和/或法令纹、抬头纹或眼角皱纹等皱纹所在区域。
其中,在第一模板素材的生成过程中,可从标准人脸图像中提取出关键点数据。并依据关键点数据进行三角剖分处理生成网格数据。关键点数据及网格数据的获取方式,与上文中双眼皮处理过程中从标准人脸图像中获取人脸关键点数据及三角剖分网格的方式相同,在此不再赘述。第一模板素材是以标准人脸图像为模板制作的。第一模板素材可以是自动化提取的,也可以是人员手动绘制的;第一模板素材示出标准人脸图像中皱纹和/或眼袋的位置。
通过索引的方式将第一模板素材绘制于空白纹理中,得到模板素材的纹理数据,以使第一模板素材与第三图像中面部赘生物祛除处理所针对的目标区域相对应。具体地将基于标准人脸图像获得的网格数据绘制于空白图像中,然后依据第一模板素材中包括的关键点与网格数据中关键点的映射关系,将第一模板素材绘制于空白图像中,以使第一模板素材中的每个关键点与网格数据中对应的关键点重合,得到第一模板素材的纹理数据。
所以本申请得到的第一模板素材的纹理数据能够指明待处理图像上的目标区域所在的位置,例如可指明用户人脸图像上需要处理的法令纹的位置、眼袋的位置等。可理解的是,本申请中的输入纹理可以是2D纹理,当然也可在本申请技术方案的指导下使用3D纹理或1D纹理,以表达出法令纹和/或眼袋等目标区域的细节。其中作为输入纹理的坐标数据的关键点数据可用来标明从待处理图像的哪个部分采样。本申请基于关键点数据确定渲染管线所需要的顶点坐标,顶点坐标是在世界坐标系上的,用来标明采样后的像素着色的位置。
如图21所示,在本申请一个或多个实施例中,与第一模板素材对应的待处理的图像中的目标区域可为眼袋所在区域和/或法令纹等面部赘生物的所在区域。
最后根据面部赘生物祛除处理对应的微调权重,对与第一模板素材的纹理数据对应的待处理图像的背景纹理中面部赘生物祛除处理所针对的目标区域进行模糊处理。待处理图像的背景纹理即为待处理图像的图像本身,待处理图像可以为经过步骤S3的双眼皮处理得到第三图像,也可以为依据步骤S2美白处理得到的第二图像,或者为任意需要祛除面部赘生物的人脸图像。具体地,根据第一模板素材的纹理数据索引待处理图像数据中面部赘生物祛除处理所针对的目标区域,以从待处理图像中定位出该目标区域,对该目标区域进行首次模糊处理,得到第一人脸图像。然后根据面部赘生物祛除处理对应的微调权重调整第一人脸图像上目标区域的模糊程度,得到第二人脸图像。第二人脸图像即为面部赘生物祛除处理得到的最终图像,显示该第二人脸图像。
模糊处理方式可包括但不限于高斯模糊处理,从而可实现对目标区域的“磨皮”处理。面部赘生物祛除处理后的图像可以直接呈现给用户。若用户对处理效果不满意,则用户可以通过图10所示的拖拽控件提交自定义权重,接收用户提交的自定义权重,根据自定义权重调整目标区域的模糊程度,以满足用户的审美需求。
对于卧蚕处理,首先获取第二模板素材,第二模板素材可以为基于标准人脸图像绘制的卧蚕图像。如图22所示的第二模板素材的灰度图,第二模板素材所示的卧蚕图像具有明暗凸起的美颜效果,这样,使得对该卧蚕图像和目标人脸图像进行图像融合处理得到的处理后的图像更加自然,具有较佳的美颜效果,提高了用户体验度。
在第二模板素材的生成过程中,可从标准人脸图像中提取出关键点数据。并依据关键点数据进行三角剖分处理生成网格数据。关键点数据及网格数据的获取方式,与上文中双眼皮处理过程中从标准人脸图像中获取人脸关键点数据及三角剖分网格的方式相同,在此不再赘述。第二模板素材是以标准人脸图像为模板制作的。第二模板素材可以是自动化绘制的,也可以是人员手动绘制的;第二模板素材通过RGB三种颜色通道中的任意两种颜色的组合形式来体现卧蚕的凸起效果,两种颜色的具体组合形式为:卧蚕上下两条边缘线分别为两种颜色,其中一种颜色从其自身所处的边缘线向另一条颜色的边缘线颜色由深至浅渐变,通过这种颜色的渐变实现明暗的视觉效果,从而在视觉上呈现出凸起的卧蚕效果。
获得第二模板素材后,通过索引的方式将第二模板素材绘制到空白纹理中,得到模板素材的纹理数据,使得第二模板素材与待处理图像中卧蚕处理所针对的目标区域相对应,模板素材的纹理数据用于索引待处理图像的关键点数据。待处理图像可以为经过步骤S3的双眼皮处理得到第三图像,也可以为依据步骤S2美白处理得到的第二图像,或者为任意需要祛除面部赘生物的人脸图像。
具体地,将基于标准人脸图像获得的网格数据绘制于空白图像中,然后依据第二模板素材中包括的关键点与网格数据中关键点的映射关系,将第二模板素材绘制于空白图像中,以使第二模板素材中的每个关键点与网格数据中对应的关键点重合,得到第二模板素材的纹理数据。由于网格数据中每个网格的顶点在标准人脸图像和待处理图像中都存在,因此上述得到的第二模板素材的纹理数据能够索引待处理图像中的关键点数据。
根据卧蚕处理对应的微调权重,基于第二模板素材的纹理数据对待处理图像的背景纹理对应的目标区域的至少两个颜色通道进行加权融合处理,得到并输出卧蚕处理后的图像。待处理图像的背景纹理即为待处理图像本身。具体地,根据第二模板素材的纹理数据索引待处理图像数据中卧蚕处理所针对的目标区域,以从待处理图像中定位出该目标区域。
根据卧蚕处理对应的微调权重,分别在第一颜色通道和第二颜色通道,将第二模板素材的纹理数据与待处理图像的背景纹理中的上述目标区域进行融合处理。
其中,第一颜色通道可以为蓝色通道,对于目标区域中的每个像素点,从待处理图像的背景纹理中的该目标区域中获取该像素点的蓝色通道的第一颜色值,以及从第二模板素材的纹理数据中该目标区域中获取该像素点的蓝色通道的第二颜色值。根据卧蚕处理对应的微调权重、第一颜色值和第二颜色值,计算融合后该像素点的蓝色通道的第一目标颜色值。具体用过如下公式来进行蓝色通道的颜色融合:
color2=color1 *n+color1 *m*B*Alp1;
m=1-n;
Alp1=1.6;
其中,color2为待处理图像的目标区域中像素点的蓝色通道进行上述颜色处理后的颜色值,n为卧蚕处理对应的微调权重,color1为待处理图像的目标区域中像素点的蓝色通道的第一颜色值,B为第二模板素材的纹理数据中目标区域中素点的蓝色通道的第二颜色值,Alp1为色彩空间。
第二颜色通道可以为绿色通道,对于目标区域中的每个像素点,从待处理图像的背景纹理中的该目标区域中获取该像素点的绿色通道的第三颜色值,以及从第二模板素材的纹理数据中该目标区域中获取该像素点的绿色通道的第四颜色值。根据卧蚕处理对应的微调权重、第三颜色值和第四颜色值,计算融合后该像素点的绿色通道的第二目标颜色值。具体用过如下公式来进行绿色通道的颜色融合:
color3=color1 *n+color1 *m*G*Alp2;
m=1-n;
Alp2=1.3;
其中,color3为待处理图像的目标区域中像素点的绿色通道进行上述颜色处理后的颜色值,n为卧蚕处理对应的微调权重,color1为待处理图像的目标区域中像素点的绿色通道的第三颜色值,G为第二模板素材的纹理数据中目标区域中素点的绿色通道的第四颜色值,Alp2为色彩空间。
对于目标区域中的每个像素点,都按照上述方式分别计算出融合后每个像素点对应的蓝色通道的第一目标颜色值和绿色通道的第二目标颜色值。然后依据计算出的目标区域中的每个像素点的蓝色通道和绿色通道的像素值进行图像渲染,得到卧蚕处理后的人脸图像。
在本申请实施例中,第一颜色通道和第二颜色通道并不限定为蓝色和绿色,可以为RGB三原色中的任意两种颜色通道的组合。
通过上述融合处理后将融合后的图像显示给用户。若用户对效果不满意,则用户可以通过图10所示的拖拽控件提交自定义权重。接收用户的自定义权重,按照上述方式重新对模板素材的纹理数据和待处理图像的背景纹理进行颜色融合。
该卧蚕处理过程由于能够精准地确定出待处理图像及第二模板素材的纹理数据中卧蚕处理的目标区域,并通过第二模板素材中颜色的渐变实现明暗的视觉效果,从而在视觉上呈现出凸起的卧蚕效果。最终得到的卧蚕处理后的图像具有较佳的美颜效果,提高了用户体验度。
通过上述任一局部颜色微调处理得到的图像均可称为第四图像。
S5:根据局部形状微调处理对应的微调权重,在第四图像中对局部形状微调处理所针对的目标部位进行形状调整,得到目标人脸图像对应的人脸微调图像。
在本申请实施例中,局部形状微调处理包括眼睛缩放处理、对脸部轮廓、鼻翼、鼻头、鼻长、下巴、颧骨中的一个或多个目标部位的第一形状微调处理以及对嘴唇厚度、人中、内眼角、外眼角、上眼睑中的一个或多个进行微调处理的第二形状微调处理。
若目标人脸图像中用户属于单眼皮类型,则经过步骤S3的双眼皮处理得到第三图像,然后执行本步骤操作。若目标人脸图像中用户属于双眼皮类型,则不执行步骤S3的操作,直接依据步骤S2美白处理得到的第二图像执行本步骤的操作。
对于对脸部轮廓、鼻翼、鼻头、鼻长、下巴、颧骨中的一个或多个目标部位的第一形状微调处理,首先根据待处理图像,获取第一形状微调处理对应的调节点坐标。待处理图像可以为美白处理得到的第二图像、双眼皮处理得到的第三图像以及上述牙齿美白处理、面部赘生物祛除处理和/或卧蚕处理等局部颜色微调处理后的第四图像。
调节点坐标包括第一形状微调处理对应的控制点坐标及控制点坐标对应的挪动点坐标。具体地,从待处理图像中获取人脸关键点坐标;从人脸关键点坐标中提取第一形状微调处理所针对的目标部位的控制点坐标;确定待处理图像对应的缩放范围及摆正旋转角度;根据该缩放范围、摆正旋转角度、第一形状微调处理对应的微调权重和预设移动距离,移动控制点坐标,得到控制点坐标对应的挪动点坐标。
缩放范围表示对人脸图像进行缩放的比例。在确定人脸图像对应的缩放范围时,首先从人脸关键点坐标中提取用户的左眼中心点坐标和右眼中心点坐标;根据左眼中心点坐标和右眼中心点坐标,确定用户的两眼距离;根据两眼距离和预设标准距离,计算人脸图像对应的缩放范围。预设标准距离可以为230px或235px等。
其中,用户的两眼距离为左眼中心点坐标和右眼中心点坐标之间的连线的长度。计算两眼距离与预设标准距离之间的比值,将该比值确定为用户的人脸图像对应的缩放范围。
在本申请实施例中,用户的人脸图像中,用户可能是歪着头的,若直接利用歪着头的人脸图像中的控制点坐标进行微调操作,会影响微调操作的准确性。因此本申请实施例中需要先将人脸图像中用户的头部摆正,确定摆正后的控制点坐标,对摆正后的控制点坐标进行缩放处理之后再将其恢复歪头的状态。上述摆正旋转角度即表示将用户的头部摆正需要对人脸图像进行旋转的角度。
具体地,从人脸关键点坐标中提取用户的左眼中心点坐标和右眼中心点坐标;根据左眼中心点坐标和右眼中心点坐标,在人脸图像中确定两眼间连线;将两眼间连线与人脸图像的像素行的第一延伸方向之间的夹角确定为人脸图像对应的摆正旋转角度,第一延伸方向为像素行的任一延伸方向。
其中,人脸图像为包括用户面部的矩形图像,在人脸图像中包括多个像素行和多个像素列,如720*1280的人脸图像中包括720个像素行和1280个像素列。其中,像素行平行于人脸图像的上、下两条边,像素列平行于人脸图像的左、右两条边。像素行具有向左和向右两个延伸方向,上述第一延伸方向可以为向左延伸的方向,也可以为向右的延伸方向。如图23所示,假设图23中两个黑点之间的连线为用户的两眼间连线,箭头所指方向为像素行的第一延伸方向,则两眼间连线与第一延伸方向之间的夹角a即为人脸图像对应的摆正旋转角度。
本申请实施例中可以通过如下公式来计算摆正旋转角度。
a=Atan(Left(x,y)-right(x,y))*180/PI
其中,a为摆正旋转角度,Atan为反正切函数,Left(x,y)为左眼中心点坐标,right(x,y)为右眼中心点坐标,PI为圆周率。
通过上述方式得到缩放范围和摆正旋转角度后,根据该缩放范围、摆正旋转角度、第一形状微调处理对应的微调权重和预设移动距离,移动控制点坐标,得到控制点坐标对应的挪动点坐标。
本申请实施例中还预先设置了每种微调任务对应的预设移动距离,预设移动距离可以为5个像素或6个像素等。例如,对脸部轮廓进行微调的预设移动距离为5个像素,对鼻翼进行微调的预设移动距离为3个像素。
对于每个控制点坐标,首先将控制点坐标向第一延伸方向旋转确定的摆正旋转角度,以获得用户头部摆正后该控制点对应的坐标。然后按照当前微调任务对应的移动方向,将旋转后的控制点坐标移动当前微调任务对应的预设移动距离。根据缩放范围和微调权重,对移动后的控制点坐标进行缩放;将缩放后的控制点坐标向第一延伸方向的反方向旋转摆正旋转角度,以获得恢复原来的歪头状态下缩放后的控制点对应的坐标,该坐标即为该控制点坐标对应的挪动点坐标。
其中,当前微调任务对应的移动方向与当前微调任务是缩小还是放大处理有关,若当前微调任务是瘦脸,则脸部轮廓上位于左半边脸上的控制点的移动方向是向右,而位于右半边脸上的控制点的移动方向是向左。若当前微调任务是胖脸,则正好相反,即左半边脸上的控制点的移动方向是向左,而位于右半边脸上的控制点的移动方向是向右。同理,其他部位的不同微调任务对应的移动方向也是按照微调任务是缩小还是放大来确定的。
对于旋转后的控制点坐标进行缩放处理,可以通过公式(x+t*scale*smooth)或公式(y+t*scale*smooth)来获得缩放后的控制点坐标。其中,x为旋转摆正旋转角度后控制点坐标的横坐标,y为旋转摆正旋转角度后控制点坐标的纵坐标,t为当前微调任务对应的预设移动距离,scale为缩放范围,smooth为微调权重。
若当前微调任务对应的移动方向为向左或右移动,则选用上述公式(x+t*scale*smooth),对控制点坐标的横坐标处理,纵坐标保持不变。若当前微调任务对应的移动方向为向上或下移动,则选用上述公式(y+t*scale*smooth)对控制点坐标的纵坐标处理,横坐标保持不变。
例如,脸部轮廓微调,则对脸部轮廓上的9号和23号点进行调整,9(x)+t*scale*smooth,23(x)+t*scale*smooth;鼻翼微调,则对鼻翼上的82号和83号点进行调整,82(x)+t*scale*smooth,83(x)+t*scale*smooth;鼻头微调,则对鼻头上的107号和108号点进行调整,107(y)+t*scale*smooth,108(y)+t*scale*smooth;下巴微调,则对下巴上的15、16、17号点进行调整,15(y)+t*scale*smooth,16(y)+t*scale*smooth,15(x)+t*scale*smooth,16(x)+t*scale*smooth;颧骨微调,则对颧骨上的3号和29号点进行调整,3(x)+t*scale*smooth,29(x)+t*scale*smooth。
本申请实施例还,在待处理图像上划分出预设尺寸的三角面片网格。上述预设尺寸可以为21*21或22*22等。终端在获得用户的人脸图像之后,还在人脸图像的整个矩形图像中均匀地划分出预设尺寸的三角面片网格,三角面片网格包括多个矩形的子网格,若预设尺寸为22*22,则三角面片网格包括22*22个矩形的子网格。
在人脸图像上划分出三角面片网格之后,还存储三角面片网格对应的网格信息,该网格信息中包括三角面片网格包括的每个子网格坐标信息,子网格坐标信息中至少包括子网格四个顶点的坐标。
之后根据调节点坐标对三角面片网格进行调整,得到调整后的三角面片网格。具体地,从三角面片网格中获取整体网格边界线以内的每个子网格的坐标;根据控制点坐标、挪动点坐标和每个子网格的坐标,对每个子网格的坐标进行移动;根据整体网格边界线的坐标和移动后每个子网格的坐标,获得调整后的三角面片网格。
即保持三角面片网格的整体网格的边界线上的坐标不变。根据控制点坐标、挪动点坐标和边界线以内的每个子网格的坐标,通过最小二乘法对每个子网格进行移动调整。然后根据保持不变的边界线上的坐标和移动后每个子网格的坐标,绘制出变形调整后的三角面片网格。
由于在对三角面片网格进行变形调整时保持了整体网格的边界线上的坐标不变,因此后续利用变形调整后的三角面片网格来对人脸图像进行整体调整时,能够确保人脸图像的边缘部分不会出现空白。
最后根据调整前的三角面片网格、调整后的三角面片网格和第四图像,对待处理图像进行第一形状微调处理。具体地,将调整前的三角面片网格、调整后的三角面片网格和第四图像输入显卡中;在显卡中,通过仿射变换将第四图像中调整前的第一子网格覆盖的像素点分别渲染到调整后的第二子网格中,第一子网格为调整前的三角面片网格包括的任一子网格,第二子网格为调整后的三角面片网格中与第一子网格对应的子网格;将放射变换得到的图像确定为第一形状微调处理对应的人脸微调图像。
即对于调整后的三角面片网格中的每个子网格,都分别获取调整前的三角面片网格中对应的子网格覆盖的图像区域中各个点的颜色值,将获得的各个点的颜色值填充到调整后的三角面片网格中对应的子网格中。每个子网格都完成颜色的放射变换,即得到了第一形状微调处理对应的人脸微调图像。最后通过显卡显示该人脸微调图像。
由于本申请实施例中绝大部分运算过程是在终端的中央处理器中完成运算,最终输入到显卡中的数据量很小,显卡只需对三角面片网格包括的每个子网格进行运算处理即可,即若三角面片网格的预设尺寸为21*21,则显卡只需对441个数据进行运算处理,相比于逐像素的运算,性能大大提升,人脸图像微调效率很高。
在本申请实施例中,还为用户提供一个用于调整微调权重的拖拽控件,该拖拽控件包括拖拽块和拖拽条,拖拽条用于指示可供调整的微调权重的范围,用户可以通过拖动拖拽块来设置自定义的微调权重。如图10所示,该拖拽条的拖拽范围为0-1。显卡显示上述人脸微调图像时,该拖拽块在拖拽条上所指示的微调权重即为步骤102中为用户分配第一形状微调处理对应的的微调权重。用户看到显示的人脸微调图像,若对微调效果不满意,则可以通过拖动拖拽块来提交自定义权重。
终端通过上述拖拽控件接收用户设置的自定义权重;根据缩放范围、摆正旋转角度、自定义权重和当前微调任务对应的预设移动距离,重新移动控制点坐标,得到控制点坐标对应的新的挪动点坐标;然后通根据控制点坐标、新的挪动点坐标和三角面片网格,重新对三角面片网格进行变形调整;最后根据调整前的三角面片网格、重新调整后的三角面片网格和人脸图像,生成新的人脸微调图像。
终端按照上述方式根据用户的自定义权重来重新调整,生成一个新的人脸微调图像,从而使最终生成的人脸微调图像满足用户自己的审美要求。
对于眼睛缩放处理包括放大眼睛或缩小眼睛的处理。确定待处理图像中的眼部区域关键点,眼部区域关键点包括外轮廓关键点和瞳孔中心关键点。根据眼部区域关键点计算眼部的尺寸。具体地,将待处理图像划分为若干矩形网格。矩形网格的划分方式与上述第一形状微调处理中预设尺寸的三角面片网格的划分方式相同,在此不再赘述。
根据眼部区域关键点,确定眼部网格。即根据眼部区域关键点确定眼部区域,确定眼部区域的每一像素所位于的网格。眼部网格为待处理图像中眼部所占区域的所有网格;根据眼部区域关键点以及眼部网格,计算眼部的尺寸。待处理图像可以为美白处理得到的第二图像、双眼皮处理得到的第三图像、上述牙齿美白处理、面部赘生物祛除处理和/或卧蚕处理等局部颜色微调处理后的第四图像或者上述第一形状微调处理后的图像。
然后根据眼睛缩放处理对应的微调权重、眼部的尺寸以及眼部区域关键点,通过移动眼部区域关键点对眼部进行缩放。具体地,根据眼睛缩放处理对应的微调权重及眼部的尺寸确定各眼部网格的顶点沿着自身与对应瞳孔中心关键点连线方向上的移动距离;根据移动距离,沿着远离对应瞳孔中心关键点的方向移动各眼部网格的顶点;根据移动后得到的网格对图像进行渲染,得到眼部整形后的图像。具体利用顶点着色器对移动后得到的网格进行渲染。
上述移动距离的具体计算方式为,计算各眼部网格的顶点与对应瞳孔中心关键点之间的原始距离;根据眼睛缩放处理对应的微调权重、原始距离以及眼部网格的顶点的预设最大移动距离,计算出各眼部网格的顶点沿着自身与对应瞳孔中心关键点连线方向上的移动距离。
上述原始距离的确定方式为,在待处理图像上建立坐标系;确定各眼部网格的顶点的坐标以及对应瞳孔中心关键点的坐标;根据各眼部网格的顶点的坐标以及对应瞳孔中心关键点的坐标,计算出各眼部网格的顶点与对应瞳孔中心关键点之间的原始距离。
覆盖左眼的眼部网格与左眼的瞳孔中心关键点相对应,覆盖右眼的眼部网格与右眼的瞳孔中心关键点向对应。眼部网格的顶点与其所对应瞳孔中心关键点之间的原始距离的计算公式为l=[(x-x0)2+(y-y0)2]0.5。其中,眼部网格的顶点坐标为(x,y),对应瞳孔中心关键点的坐标为(x0,y0)。
根据上述计算的移动距离,沿着远离对应瞳孔中心关键点的方向移动各眼部网格的顶点。每一眼睛所对应的眼部网格,移动顶点之后,眼部网格的位置及尺寸会发生变化,从而达到放大眼部的目的,而且由于眼睛的各部分为等比例放大,放大后的眼睛不会变形。
以后根据移动后得到的网格对图像进行渲染,得到眼部整形后的图像。具体地,可以利用顶点着色器对移动后得到的网格进行渲染。例如,某网格s,移动后为s’,则对s’与s之间的部分进行渲染,即对移动后得到的网格与对应的移动前的网格之间的部分进行渲染。
在本实施方式中,可以采用OpenGL(Open Graphics Library,开放图形库或开放式图形库)进行图像处理,OpenGL是用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。
在某些实施方式中,可以采用顶点着色器进行渲染,顶点着色器对每个顶点执行一次渲染。顶点着色器是一组指令代码,这组指令代码在顶点被渲染时执行。例如,画三角形时,三角形有3个顶点,所以顶点着色器会执行3次。
顶点渲染可在功能上取代传统的变换与光照阶段,它位于镶嵌阶段之后,剔除与裁剪阶段之前。镶嵌阶段结束后,便将一个顶点数据传递给顶点渲染器,顶点可能包含位置、纹理坐标、顶点颜色、法线等数据。顶点渲染器不能创建或删除顶点,它处理结束后至少要输出顶点中的位置数据。
通过上述方式将眼睛缩放处理后的图像显示给用户之后,若用户对效果不满意,则用户可以通过图10所示的拖拽控件提交自定义权重。接收用户的自定义权重,根据该自定义权重,按照上述方式重新移动眼部区域关键点对眼部进行缩放。
通过本实施例的眼睛缩放处理,能够对人脸图像眼部进行放大或缩小调整,而且调整后的眼部边缘平滑、自然。
对于对嘴唇厚度、人中、内眼角、外眼角、上眼睑中的一个或多个进行微调处理的第二形状微调处理,首先从待处理图像中确定第二形状微调处理所针对的目标部位对应的纹理坐标和目标人脸关键点。待处理图像可以为美白处理得到的第二图像、双眼皮处理得到的第三图像、上述牙齿美白处理、面部赘生物祛除处理和/或卧蚕处理等局部颜色微调处理后的第四图像、上述第一形状微调处理后的图像或者上述眼睛缩放处理后的图像。
上述目标部位可以为唇部和/或眼部。纹理坐标为目标部位的原有的像素坐标。对于目标部位对应的目标人脸关键点,可以在新的第一人脸关键点集中选取目标部位周围预设范围内的人脸关键点作为目标部位对应的目标人脸关键点。为了更加贴近真实的整容,如缩人中的时候不是移动整个唇部,而是通过移动上嘴唇周围的关键点使上嘴唇变厚的方式。再比如上眼睑下至,只移动外眼角周围的关键点,外眼角是不移动的。本申请中是通过微调的方式对目标部位进行整形,整形效果贴近真实的整容。
然后根据第二形状微调处理对应的微调权重对预设参数进行调整,预设参数包括方向和距离。预设参数可以是预先根据标准脸的整形参数确定的数据,本申请中可以根据当前待整形的人脸图像的脸型来调整该预设参数,也可以根据第二形状微调处理对应的微调权重来调整该预设参数。
按照调整后的预设参数对目标人脸关键点进行移动操作,得到新的目标人脸关键点。根据待处理图像、目标部位对应的纹理坐标及新的目标人脸关键点进行人脸图形渲染,得到整形后的人脸微调图像。首先识别待处理图像的所有人脸关键点,基于所有人脸关键点确定人脸三角网格数据。然后根据待处理图像、人脸三角网格数据、目标部位对应的纹理坐标及新的目标人脸关键点进行人脸图形渲染。以厚嘴唇为例,对嘴唇上的关键点进行平移操作,使嘴唇上的点外扩或内缩达到厚嘴唇或薄嘴唇的效果,如图24所示。
显示上述整形后的人脸微调图像,若用户不满意,则用户可以通过图10所示的拖拽控件提交自定义权重。接收用户提交的自定义权重;根据该自定义权重对预设参数进行调整,根据调整后的预设参数重新对目标人脸关键点进行平移操作。并按照上述方式重新生成一个人脸微调图像。
通过上述第二形状微调处理,能够使嘴唇厚度、人中长短、开内眼角、开外眼角、上眼睑下至等微整形的效果更贴近真实的整容,从而提高了用户体验。
在本申请实施例中,根据虚拟微整形处理所针对的目标部位的实际情况,分配适合用户的微调权重。依据该微调权重对用户的目标人脸图像进行虚拟微整形处理,能够使微整形得到的人脸微调图像更加自然、美观,贴合用户的审美需求。而且限定了各虚拟微整形处理的先后顺序,确保各虚拟微整形处理的效果相互叠加,极大程度地提高人脸微调的整体效果,避免各虚拟微整形处理之间相互不兼容的问题。
本申请实施例还提供一种图像处理装置,该装置用于执行上述任一实施例提供的一种图像处理方法。参见图25,该装置包括:
获取模块201,用于获取用户的目标人脸图像;
权重分配模块202,用于根据目标人脸图像,为用户分配每种虚拟微整形处理所需的微调权重,微调权重是依据目标人脸图像中虚拟微整形处理所针对的目标部位的部位特征信息分配的;
生成模块203,用于根据目标人脸图像及每种虚拟微整形处理对应的微调权重,生成目标人脸图像对应的人脸微调图像。
权重分配模块202,用于从目标人脸图像中提取虚拟微整形处理所针对的目标部位的部位特征信息;根据部位特征信息,确定目标部位所属的部位类型;获取部位类型对应的预设权重;将预设权重确定为对目标人脸图像进行虚拟微整形处理所需的微调权重。
在本申请实施例中,虚拟微整形处理包括磨皮处理、美白处理、双眼皮处理、局部颜色微调处理和局部形状微调处理中的一种或多种;
生成模块203包括:
磨皮处理单元,用于根据磨皮处理对应的微调权重,对目标人脸图像进行磨皮处理,得到第一图像;
美白处理单元,用于根据美白处理对应的微调权重,对第一图像进行美白处理,得到第二图像;
双眼皮处理单元,用于若检测到目标人脸图像中眼部为单眼皮,则根据双眼皮处理对应的微调权重,在第二图像中将用户的眼部调整为双眼皮,得到第三图像;
局部颜色微调处理单元,用于若检测到目标人脸图像中局部颜色微调处理所针对的目标部位符合预设颜色微调处理条件,则根据局部颜色微调处理对应的微调权重,在第三图像中对局部颜色微调处理所针对的目标部位进行调整,得到第四图像;
局部形状微调处理单元,用于根据局部形状微调处理对应的微调权重,在第四图像中对局部形状微调处理所针对的目标部位进行形状调整,得到目标人脸图像对应的人脸微调图像。
磨皮处理单元,用于对目标人脸图像中的人脸区域进行第一次数的第一模糊处理,得到第一模糊图,第一模糊处理包括横向模糊处理以及纵向模糊处理;根据第一模糊图与目标人脸图像进行融合处理,得到第一待处理图像;将第一模糊图进行均值模糊得到第二模糊图;根据磨皮处理对应的微调权重,将目标人脸图像、第一待处理图像以及第二模糊图进行图像融合。
磨皮处理单元,用于确定与第一中心点像素横向相邻的第一数量个第一相邻像素;以及,确定与第一中心点像素竖向相邻的第一数量个第二相邻像素;第一中心点像素为目标人脸图像中人脸区域中的任一像素点;基于第一中心点像素和第一相邻像素,对目标人脸图像中人脸区域进行横向模糊处理;对人脸区域中每个像素点均进行横向模糊处理后,基于第一中心点像素和第二相邻像素,对人脸区域进行纵向模糊处理。
磨皮处理单元,用于对第一模糊图进行取反处理;对取反处理后的第一模糊图进行边缘提取,得到第二待处理图像;对第二待处理图像进行第二次数的第二模糊处理,得到第三模糊图,第二模糊处理包括横向模糊处理和纵向模糊处理;将第一模糊图、第三模糊图与目标人脸图像进行图像融合,得到第一待处理图像。
磨皮处理单元,用于将目标人脸图像、第一待处理图像以及第二模糊图进行图像融合,得到第一融合图像;基于预设的锐度参数,对第一融合图像进行锐度调整;根据磨皮处理对应的微调权重,将锐度调整后的第一融合图像与目标人脸图像进行图像融合,得到第二融合图像;若确定接收到用户针对第二融合图像生成的修改指令,基于修改指令,确定用户提交的自定义权重;根据自定义权重,将锐度调整后的第一融合图像与目标人脸图像进行图像融合,得到第三融合图像。
美白处理单元,用于根据第一图像中像素点的颜色值,在预设的第一查找表中查找相应的颜色值,将第一图像中像素点的颜色值替换为查找到的颜色值;对第一图像中像素点的原颜色值以及替换后的颜色值进行第一融合:根据美白处理对应的微调权重,对第一融合处理后的第一图像中像素点的颜色值与原始的第一图像中像素点的颜色值进行第二融合;利用预设的第二查找表对第二融合后的图像进行颜色调节。
双眼皮处理单元,用于定位第二图像中的人脸关键点,对人脸关键点包括的眼部关键点进行插值补点,以生成新的眼部关键点;根据双眼皮处理对应的微调权重和新的眼部关键点,将预先制作的标准双眼皮素材与第二图像中的眼部区域融合,得到融合后的眼部区域图像。
双眼皮处理单元,用于获取基于标准人脸图像获得的标准眼关键点、三角剖分网格和标准双眼皮素材;建立标准眼关键点与新的眼部关键点之间的映射关系,并根据映射关系将标准双眼皮素材融合到第二图像中的眼部区域上;根据映射关系,获取三角剖分网格在第二图像中的眼部区域上所覆盖的像素点;针对获取的每个像素点,根据双眼皮处理对应的微调权重、该像素点的第一像素值和该像素点对应在标准双眼皮素材上的第二像素值,计算该像素点的目标像素值。
局部颜色微调处理包括牙齿美白处理,局部颜色微调处理单元,用于从第三图像中将嘴部图像单独提取出来,并对嘴部图像进行染色处理;对嘴部图像进行抠图处理,并根据预设的第三查找表和牙齿美白处理对应的微调权重,对抠图处理后的嘴部图像进行颜色调节。
局部颜色微调处理包括面部赘生物祛除处理,面部赘生物包括眼袋和/或皱纹;局部颜色微调处理单元,用于读取在先生存的第一模板素材,并通过索引的方式将第一模板素材绘制于空白纹理中,以使第一模板素材与第三图像中面部赘生物祛除处理所针对的目标区域相对应;根据面部赘生物祛除处理对应的微调权重,对与第一模板素材对应的第三图像上的目标区域进行模糊处理。
局部颜色微调处理包括卧蚕处理;局部颜色微调处理单元,用于获取第二模板素材,并通过索引的方式将第二模板素材绘制到空白纹理中,使得第二模板素材与第三图像中卧蚕处理所针对的目标区域相对应;根据卧蚕处理对应的微调权重,基于第二模板素材对第三图像中的目标区域的至少两个颜色通道进行加权融合处理。
局部形状微调处理包括对脸部轮廓、鼻翼、鼻头、鼻长、下巴、颧骨中的一个或多个目标部位的第一形状微调处理;局部形状微调处理单元,用于根据第四图像,获取第一形状微调处理对应的调节点坐标;在第四图像上划分出预设尺寸的三角面片网格;根据调节点坐标对三角面片网格进行调整,得到调整后的三角面片网格;根据调整前的三角面片网格、调整后的三角面片网格和第四图像,对第四图像进行第一形状微调处理。
调节点坐标包括第一形状微调处理对应的控制点坐标及控制点坐标对应的挪动点坐标;局部形状微调处理单元,用于从第四图像中获取人脸关键点坐标;从人脸关键点坐标中提取第一形状微调处理所针对的目标部位的控制点坐标;确定第四图像对应的缩放范围及摆正旋转角度;根据缩放范围、摆正旋转角度、第一形状微调处理对应的微调权重和预设移动距离,移动控制点坐标,得到控制点坐标对应的挪动点坐标。
局部形状微调处理单元,用于从三角面片网格中获取整体网格边界线以内的每个子网格的坐标;根据控制点坐标、挪动点坐标和每个子网格的坐标,对每个子网格的坐标进行移动;根据整体网格边界线的坐标和移动后每个子网格的坐标,获得调整后的三角面片网格。
局部形状微调处理单元,用于将调整前的三角面片网格、调整后的三角面片网格和第四图像输入显卡中;在显卡中,通过仿射变换将第四图像中调整前的第一子网格覆盖的像素点分别渲染到调整后的第二子网格中,第一子网格为调整前的三角面片网格包括的任一子网格,第二子网格为调整后的三角面片网格中与第一子网格对应的子网格;将放射变换得到的图像确定为第一形状微调处理对应的人脸微调图像。
局部形状微调处理包括眼睛缩放处理;局部形状微调处理单元,用于从第四图像中确定每只眼睛的瞳孔中心关键点;将第四图像划分为若干矩形网格;确定眼部网格;眼部网格为第四图像中每只眼睛所占区域的所有网格;计算各眼部网格的顶点与对应瞳孔中心关键点之间的原始距离;根据眼睛缩放处理对应的微调权重、原始距离以及眼部网格的顶点的预设最大移动距离,计算出各眼部网格的顶点沿着自身与对应瞳孔中心关键点连线方向上的移动距离;根据移动距离,沿着远离对应瞳孔中心关键点的方向移动各眼部网格的顶点;根据移动后得到的网格对图像进行渲染,得到眼部整形后的图像。
局部形状微调处理包括对嘴唇厚度、人中、内眼角、外眼角、上眼睑中的一个或多个进行微调处理的第二形状微调处理;局部形状微调处理单元,用于从第四图像中确定第二形状微调处理所针对的目标部位对应的纹理坐标和目标人脸关键点;根据第二形状微调处理对应的微调权重对预设参数进行调整,预设参数包括方向和距离;按照调整后的预设参数对目标人脸关键点进行移动,得到新的目标人脸关键点;根据第四图像、目标部位对应的纹理坐标及新的目标人脸关键点进行人脸图形渲染,得到整形后的人脸微调图像。
本申请的上述实施例提供的图像处理装置与本申请实施例提供的图像处理方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种电子设备,以执行上述图像处理方法。请参考图26,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图26所示,电子设备8包括:处理器800,存储器801,总线802和通信接口803,所述处理器800、通信接口803和存储器801通过总线802连接;所述存储器801中存储有可在所述处理器800上运行的计算机程序,所述处理器800运行所述计算机程序时执行本申请前述任一实施方式所提供的图像处理方法。
其中,存储器801可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口803(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线802可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器801用于存储程序,所述处理器800在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述图像处理方法可以应用于处理器800中,或者由处理器800实现。
处理器800可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器800中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器800可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器801,处理器800读取存储器801中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的电子设备与本申请实施例提供的图像处理方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种与前述实施方式所提供的图像处理方法对应的计算机可读存储介质,请参考图27,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的图像处理方法。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的图像处理方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
需要说明的是:
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下示意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (21)
1.一种图像处理方法,其特征在于,包括:
获取用户的目标人脸图像;
根据所述目标人脸图像,为所述用户分配每种虚拟微整形处理所需的微调权重,所述微调权重是依据所述目标人脸图像中所述虚拟微整形处理所针对的目标部位的部位特征信息分配的;
根据所述目标人脸图像及每种虚拟微整形处理对应的所述微调权重,生成所述目标人脸图像对应的人脸微调图像。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标人脸图像,为所述用户分配每种虚拟微整形处理所需的微调权重,包括:
从所述目标人脸图像中提取虚拟微整形处理所针对的目标部位的部位特征信息;
根据所述部位特征信息,确定所述目标部位所属的部位类型;
获取所述部位类型对应的预设权重;
将所述预设权重确定为对所述目标人脸图像进行所述虚拟微整形处理所需的微调权重。
3.根据权利要求1或2所述的方法,其特征在于,所述虚拟微整形处理包括磨皮处理、美白处理、双眼皮处理、局部颜色微调处理和局部形状微调处理中的一种或多种;
所述根据所述目标人脸图像及每种虚拟微整形处理对应的所述微调权重,生成所述目标人脸图像对应的人脸微调图像,包括:
根据所述磨皮处理对应的微调权重,对所述目标人脸图像进行磨皮处理,得到第一图像;
根据所述美白处理对应的微调权重,对所述第一图像进行美白处理,得到第二图像;
若检测到所述目标人脸图像中眼部为单眼皮,则根据所述双眼皮处理对应的微调权重,在所述第二图像中将所述用户的眼部调整为双眼皮,得到第三图像;
若检测到所述目标人脸图像中所述局部颜色微调处理所针对的目标部位符合预设颜色微调处理条件,则根据所述局部颜色微调处理对应的微调权重,在所述第三图像中对所述局部颜色微调处理所针对的目标部位进行调整,得到第四图像;
根据所述局部形状微调处理对应的微调权重,在所述第四图像中对所述局部形状微调处理所针对的目标部位进行形状调整,得到所述目标人脸图像对应的人脸微调图像。
4.根据权利要求3所述的方法,其特征在于,所述根据所述磨皮处理对应的微调权重,对所述目标人脸图像进行磨皮处理,包括:
对所述目标人脸图像中的人脸区域进行第一次数的第一模糊处理,得到第一模糊图,所述第一模糊处理包括横向模糊处理以及纵向模糊处理;
根据所述第一模糊图与所述目标人脸图像进行融合处理,得到第一待处理图像;
将所述第一模糊图进行均值模糊得到第二模糊图;
根据所述磨皮处理对应的微调权重,将所述目标人脸图像、所述第一待处理图像以及第二模糊图进行图像融合。
5.根据权利要求4所述的方法,其特征在于,所述对所述目标人脸图像中的人脸区域进行第一次数的第一模糊处理,包括:
确定与第一中心点像素横向相邻的第一数量个第一相邻像素;以及,确定与所述第一中心点像素竖向相邻的所述第一数量个第二相邻像素;所述第一中心点像素为所述目标人脸图像中人脸区域中的任一像素点;
基于所述第一中心点像素和所述第一相邻像素,对所述目标人脸图像中人脸区域进行横向模糊处理;
对所述人脸区域中每个像素点均进行所述横向模糊处理后,基于所述第一中心点像素和所述第二相邻像素,对所述人脸区域进行纵向模糊处理。
6.根据权利要求4所述的方法,其特征在于,根据所述第一模糊图与所述目标人脸图像进行融合处理,得到第一待处理图像,包括:
对所述第一模糊图进行取反处理;
对所述取反处理后的第一模糊图进行边缘提取,得到第二待处理图像;
对所述第二待处理图像进行第二次数的第二模糊处理,得到第三模糊图,所述第二模糊处理包括所述横向模糊处理和所述纵向模糊处理;
将所述第一模糊图、所述第三模糊图与所述目标人脸图像进行图像融合,得到第一待处理图像。
7.根据权利要求4所述的方法,其特征在于,所述根据所述磨皮处理对应的微调权重,将所述目标人脸图像、所述第一待处理图像以及第二模糊图进行图像融合,包括:
将所述目标人脸图像、所述第一待处理图像以及第二模糊图进行图像融合,得到第一融合图像;
基于预设的锐度参数,对所述第一融合图像进行锐度调整;
根据所述磨皮处理对应的微调权重,将锐度调整后的所述第一融合图像与所述目标人脸图像进行图像融合,得到第二融合图像。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
若确定接收到用户针对所述第二融合图像生成的修改指令,基于所述修改指令,确定用户提交的自定义权重;
根据所述自定义权重,将锐度调整后的所述第一融合图像与所述目标人脸图像进行图像融合,得到第三融合图像。
9.根据权利要求3所述的方法,其特征在于,所述根据所述美白处理对应的微调权重,对所述第一图像进行美白处理,包括:
根据所述第一图像中像素点的颜色值,在预设的第一查找表中查找相应的颜色值,将所述第一图像中所述像素点的颜色值替换为查找到的颜色值;
对所述第一图像中所述像素点的原颜色值以及替换后的颜色值进行第一融合:
根据所述美白处理对应的微调权重,对所述第一融合处理后所述第一图像中像素点的颜色值与原始的所述第一图像中像素点的颜色值进行第二融合;
利用预设的第二查找表对所述第二融合后的图像进行颜色调节。
10.根据权利要求3所述的方法,其特征在于,所述根据所述双眼皮处理对应的微调权重,在所述第二图像中将所述用户的眼部调整为双眼皮,包括:
定位所述第二图像中的人脸关键点,对所述人脸关键点包括的眼部关键点进行插值补点,以生成新的眼部关键点;
根据所述双眼皮处理对应的微调权重和所述新的眼部关键点,将预先制作的标准双眼皮素材与所述第二图像中的眼部区域融合,得到融合后的眼部区域图像。
11.根据权利要求10所述的方法,其特征在于,所述根据所述双眼皮处理对应的微调权重和所述新的眼部关键点,将预先制作的标准双眼皮素材与所述第二图像中的眼部区域融合,得到融合后的眼部区域图像,包括:
获取基于标准人脸图像获得的标准眼关键点、三角剖分网格和标准双眼皮素材;
建立所述标准眼关键点与所述新的眼部关键点之间的映射关系,并根据所述映射关系将所述标准双眼皮素材融合到所述第二图像中的眼部区域上;
根据所述映射关系,获取所述三角剖分网格在所述第二图像中的眼部区域上所覆盖的像素点;
针对获取的每个像素点,根据所述双眼皮处理对应的微调权重、该像素点的第一像素值和该像素点对应在标准双眼皮素材上的第二像素值,计算该像素点的目标像素值。
12.根据权利要求9所述的方法,其特征在于,所述局部颜色微调处理包括牙齿美白处理,所述根据所述局部颜色微调处理对应的微调权重,在所述第三图像中对所述局部颜色微调处理所针对的目标部位进行调整,包括:
从所述第三图像中将嘴部图像单独提取出来,并对所述嘴部图像进行染色处理;
对所述嘴部图像进行抠图处理,并根据预设的第三查找表和所述牙齿美白处理对应的微调权重,对抠图处理后的嘴部图像进行颜色调节。
13.根据权利要求3所述的方法,其特征在于,所述局部颜色微调处理包括面部赘生物祛除处理,所述面部赘生物包括眼袋和/或皱纹;所述根据所述局部颜色微调处理对应的微调权重,在所述第三图像中对所述局部颜色微调处理所针对的目标部位进行调整,包括:
读取在先生成的第一模板素材,并通过索引的方式将所述第一模板素材绘制于空白纹理中,以使所述第一模板素材与所述第三图像中所述面部赘生物祛除处理所针对的目标区域相对应;
根据所述面部赘生物祛除处理对应的微调权重,对与所述第一模板素材对应的所述第三图像上的所述目标区域进行模糊处理。
14.根据权利要求3所述的方法,其特征在于,所述局部颜色微调处理包括卧蚕处理;所述根据所述局部颜色微调处理对应的微调权重,在所述第三图像中对所述局部颜色微调处理所针对的目标部位进行调整,包括:
获取第二模板素材,并通过索引的方式将所述第二模板素材绘制到空白纹理中,使得所述第二模板素材与所述第三图像中所述卧蚕处理所针对的目标区域相对应;
根据所述卧蚕处理对应的微调权重,基于所述第二模板素材对所述第三图像中的所述目标区域的至少两个颜色通道进行加权融合处理。
15.根据权利要求3所述的方法,其特征在于,所述局部形状微调处理包括对脸部轮廓、鼻翼、鼻头、鼻长、下巴、颧骨中的一个或多个目标部位的第一形状微调处理;所述根据所述局部形状微调处理对应的微调权重,在所述第四图像中对所述局部形状微调处理所针对的目标部位进行形状调整,包括:
根据所述第四图像,获取所述第一形状微调处理对应的调节点坐标;
在所述第四图像上划分出预设尺寸的三角面片网格;
根据所述调节点坐标对所述三角面片网格进行调整,得到调整后的三角面片网格;
根据调整前的所述三角面片网格、调整后的所述三角面片网格和所述第四图像,对所述第四图像进行所述第一形状微调处理。
16.根据权利要求15所述的方法,其特征在于,所述调节点坐标包括所述第一形状微调处理对应的控制点坐标及所述控制点坐标对应的挪动点坐标;
所述根据所述第四图像,获取所述第一形状微调处理对应的调节点坐标,包括:
从所述第四图像中获取人脸关键点坐标;
从所述人脸关键点坐标中提取所述第一形状微调处理所针对的目标部位的控制点坐标;
确定所述第四图像对应的缩放范围及摆正旋转角度;
根据所述缩放范围、所述摆正旋转角度、所述第一形状微调处理对应的微调权重和预设移动距离,移动所述控制点坐标,得到所述控制点坐标对应的挪动点坐标。
17.根据权利要求16所述的方法,其特征在于,所述根据所述调节点坐标对所述三角面片网格进行调整,得到调整后的三角面片网格,包括:
从所述三角面片网格中获取整体网格边界线以内的每个子网格的坐标;
根据所述控制点坐标、所述挪动点坐标和所述每个子网格的坐标,对所述每个子网格的坐标进行移动;
根据所述整体网格边界线的坐标和移动后所述每个子网格的坐标,获得调整后的三角面片网格。
18.根据权利要求15所述的方法,其特征在于,所述根据调整前的所述三角面片网格、调整后的所述三角面片网格和所述第四图像,对所述第四图像进行所述第一形状微调处理,包括:
将调整前的所述三角面片网格、调整后的所述三角面片网格和所述第四图像输入显卡中;
在所述显卡中,通过仿射变换将所述第四图像中调整前的第一子网格覆盖的像素点分别渲染到调整后的第二子网格中,所述第一子网格为调整前的所述三角面片网格包括的任一子网格,所述第二子网格为调整后的所述三角面片网格中与所述第一子网格对应的子网格;
将放射变换得到的图像确定为所述第一形状微调处理对应的人脸微调图像。
19.根据权利要求3所述的方法,其特征在于,所述局部形状微调处理包括眼睛缩放处理;所述根据所述局部形状微调处理对应的微调权重,在所述第四图像中对所述局部形状微调处理所针对的目标部位进行形状调整,包括:
确定所述第四图像中的眼部区域关键点;
根据所述眼部区域关键点计算眼部的尺寸;
根据所述眼睛缩放处理对应的微调权重、所述眼部的尺寸以及所述眼部区域关键点,通过移动所述眼部区域关键点对眼部进行缩放。
20.根据权利要求3所述的方法,其特征在于,所述局部形状微调处理包括对嘴唇厚度、人中、内眼角、外眼角、上眼睑中的一个或多个进行微调处理的第二形状微调处理;所述根据所述局部形状微调处理对应的微调权重,在所述第四图像中对所述局部形状微调处理所针对的目标部位进行形状调整,包括:
从所述第四图像中确定所述第二形状微调处理所针对的目标部位对应的纹理坐标和目标人脸关键点;
根据所述第二形状微调处理对应的微调权重对预设参数进行调整,所述预设参数包括方向和距离;
按照调整后的所述预设参数对所述目标人脸关键点进行移动,得到新的目标人脸关键点;
根据所述第四图像、目标部位对应的纹理坐标及所述新的目标人脸关键点进行人脸图形渲染,得到整形后的人脸微调图像。
21.一种图像处理装置,其特征在于,包括:
获取模块,用于获取用户的目标人脸图像;
权重分配模块,用于根据所述目标人脸图像,为所述用户分配每种虚拟微整形处理所需的微调权重,所述微调权重是依据所述目标人脸图像中所述虚拟微整形处理所针对的目标部位的部位特征信息分配的;
生成模块,用于根据所述目标人脸图像及每种虚拟微整形处理对应的所述微调权重,生成所述目标人脸图像对应的人脸微调图像。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011396257 | 2020-12-03 | ||
CN2020113962575 | 2020-12-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114596213A true CN114596213A (zh) | 2022-06-07 |
Family
ID=81813907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111470518.8A Pending CN114596213A (zh) | 2020-12-03 | 2021-12-03 | 一种图像处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114596213A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117594202A (zh) * | 2024-01-19 | 2024-02-23 | 深圳市宗匠科技有限公司 | 一种皱纹尺寸分析方法、装置、电子设备及存储介质 |
-
2021
- 2021-12-03 CN CN202111470518.8A patent/CN114596213A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117594202A (zh) * | 2024-01-19 | 2024-02-23 | 深圳市宗匠科技有限公司 | 一种皱纹尺寸分析方法、装置、电子设备及存储介质 |
CN117594202B (zh) * | 2024-01-19 | 2024-04-19 | 深圳市宗匠科技有限公司 | 一种皱纹尺寸分析方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109859098B (zh) | 人脸图像融合方法、装置、计算机设备及可读存储介质 | |
CN1475969B (zh) | 用于增强人像图像的方法和系统 | |
WO2022179215A1 (zh) | 图像处理方法及装置、电子设备和存储介质 | |
CN109829930A (zh) | 人脸图像处理方法、装置、计算机设备及可读存储介质 | |
CN107507217B (zh) | 证件照的制作方法、装置及存储介质 | |
CN110163832B (zh) | 人脸融合方法、装置和终端 | |
CN108229279A (zh) | 人脸图像处理方法、装置和电子设备 | |
CN103914699A (zh) | 一种基于色彩空间的自动唇彩的图像增强的方法 | |
CN111445410A (zh) | 基于纹理图像的纹理增强方法、装置、设备和存储介质 | |
CN110969631B (zh) | 一种精细化照片染发方法及系统 | |
CN108463823A (zh) | 一种用户头发模型的重建方法、装置及终端 | |
CN116583878A (zh) | 用于个性化3d头部模型变形的方法和系统 | |
CN116997933A (zh) | 用于构造面部位置图的方法和系统 | |
CN114565508B (zh) | 虚拟换装方法及装置 | |
CN106652037B (zh) | 一种人脸贴图处理方法及装置 | |
CN110503599B (zh) | 图像处理方法和装置 | |
CN109146767A (zh) | 基于深度图的图像虚化方法及装置 | |
CN116648733A (zh) | 用于从面部图像提取颜色的方法和系统 | |
CN111243051A (zh) | 基于肖像照片的简笔画生成方法、系统及存储介质 | |
CN114155569B (zh) | 一种化妆进度检测方法、装置、设备及存储介质 | |
CN114841853A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN114820340A (zh) | 基于图像处理的唇纹去除方法、系统、设备及存储介质 | |
CN114596213A (zh) | 一种图像处理方法及装置 | |
CN111275804B (zh) | 图像光照去除方法、装置、存储介质和计算机设备 | |
KR101513931B1 (ko) | 구도의 자동보정 방법 및 이러한 구도의 자동보정 기능이 탑재된 영상 장치 |
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 |