CN114049278A - 图像美颜处理方法、装置、存储介质与电子设备 - Google Patents
图像美颜处理方法、装置、存储介质与电子设备 Download PDFInfo
- Publication number
- CN114049278A CN114049278A CN202111362233.2A CN202111362233A CN114049278A CN 114049278 A CN114049278 A CN 114049278A CN 202111362233 A CN202111362233 A CN 202111362233A CN 114049278 A CN114049278 A CN 114049278A
- Authority
- CN
- China
- Prior art keywords
- image
- face
- beautified
- mask
- subimage
- 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 25
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 192
- 238000000034 method Methods 0.000 claims abstract description 115
- 238000013528 artificial neural network Methods 0.000 claims abstract description 111
- 230000001815 facial effect Effects 0.000 claims abstract description 100
- 230000003796 beauty Effects 0.000 claims description 79
- 230000008569 process Effects 0.000 claims description 69
- 230000008707 rearrangement Effects 0.000 claims description 43
- 230000008859 change Effects 0.000 claims description 22
- 238000005070 sampling Methods 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 10
- 230000003313 weakening effect Effects 0.000 claims description 10
- 230000001131 transforming effect Effects 0.000 claims description 9
- 230000007704 transition Effects 0.000 claims description 4
- 230000017105 transposition Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 28
- 238000004364 calculation method Methods 0.000 description 14
- 230000007547 defect Effects 0.000 description 14
- 238000012549 training Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000002441 reversible effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 239000002537 cosmetic Substances 0.000 description 6
- 238000005498 polishing Methods 0.000 description 6
- 238000010295 mobile communication Methods 0.000 description 5
- 230000004927 fusion Effects 0.000 description 4
- 206010027145 Melanocytic naevus Diseases 0.000 description 3
- 208000007256 Nevus Diseases 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 208000002874 Acne Vulgaris Diseases 0.000 description 2
- 206010000496 acne Diseases 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000005282 brightening Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000016776 visual perception Effects 0.000 description 2
- 230000002087 whitening effect Effects 0.000 description 2
- 208000003351 Melanosis Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000011166 aliquoting Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004438 eyesight Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20084—Artificial neural networks [ANN]
-
- 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)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本公开提供一种图像美颜处理方法、装置、存储介质与电子设备,涉及图像与视频处理技术领域。该图像美颜处理方法包括:获取待美颜人脸图像;通过预先训练的深度神经网络对所述待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过所述深度神经网络确定所述待美颜人脸图像的掩膜;基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像。本公开改善了美颜误处理的问题,提升了美颜效果。
Description
技术领域
本公开涉及图像与视频处理技术领域,尤其涉及一种图像美颜处理方法、图像美颜处理装置、计算机可读存储介质与电子设备。
背景技术
美颜是指利用图像处理技术对图像或视频中的人像进行美化处理,以更好地满足用户的审美需求。
在进行美颜处理时,经常会对不需要美颜的区域进行误处理,从而对美颜效果造成不良影响。例如在对脸部皮肤磨皮时,可能对刘海也进行磨皮,由此导致图像模糊或者刘海附近的图像不协调。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种图像美颜处理方法、图像美颜处理装置、计算机可读存储介质与电子设备,进而至少在一定程度上改善相关技术中的美颜误处理问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供一种图像美颜处理方法,包括:获取待美颜人脸图像;通过预先训练的深度神经网络对所述待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过所述深度神经网络确定所述待美颜人脸图像的掩膜;基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像。
根据本公开的第二方面,提供一种图像美颜处理装置,包括:图像获取模块,被配置为获取待美颜人脸图像;第一美颜处理模块,被配置为通过预先训练的深度神经网络对所述待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过所述深度神经网络确定所述待美颜人脸图像的掩膜;第二美颜处理模块,被配置为基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的图像美颜处理方法及其可能的实施方式。
根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述第一方面的图像美颜处理方法及其可能的实施方式。
本公开的技术方案具有以下有益效果:
基于上述图像美颜处理方法,一方面,基于待美颜人脸图像的掩膜进行第二美颜处理,使得第二美颜处理准确作用于需要美颜的区域,避开其他区域,从而改善了美颜误处理的问题,提升了美颜效果。另一方面,通过深度神经网络实现第一美颜处理与确定掩膜这两种任务,相当于将两种任务合并执行,从而简化了算法流程,降低了计算量,并且无需用户进行抠图等手动操作。再一方面,深度神经网络进行第一美颜处理可以替代原本的多个固定算法模块,增加了图像美颜处理的灵活性,并适用于多样的光照条件或皮肤状况。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本示例性实施方式中一种系统架构的示意图;
图2示出本示例性实施方式中一种电子设备的结构示意图;
图3示出本示例性实施方式中一种图像美颜处理方法的流程图;
图4示出本示例性实施方式中一种确定人脸的稳定包围盒的流程图;
图5示出本示例性实施方式中一种组合待美颜人脸子图像的示意图;
图6示出本示例性实施方式中一种深度神经网络的示意图;
图7示出本示例性实施方式中一种通过深度神经网络进行第一美颜处理的流程图;
图8示出本示例性实施方式中一种训练深度神经网络的流程图;
图9示出本示例性实施方式中一种第二美颜处理的流程图;
图10示出本示例性实施方式中另一种第二美颜处理的流程图;
图11示出本示例性实施方式中一种边界区域渐变处理的示意图;
图12示出本示例性实施方式中一种图像美颜处理方法的示意性流程图;
图13示出本示例性实施方式中一种图像美颜处理装置的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
相关技术的一种方案中,需要用户手动进行抠图操作,以确定皮肤区域或其他需要美颜的区域,进而对该区域进行美颜处理。该方案增加了用户的手动操作,使用起来较为不便,影响用户体验。
鉴于上述一个或多个问题,本公开的示例性实施方式提供一种图像美颜处理方法。下面结合图1对本示例性实施方式运行环境的系统架构与应用场景进行示例性说明。
图1示出了系统架构的示意图,该系统架构100可以包括终端110与服务器120。其中,终端110可以是智能手机、平板电脑、台式电脑、笔记本电脑等终端设备,服务器120泛指提供本示例性实施方式中图像美颜相关服务的后台系统,可以是一台服务器或多台服务器形成的集群。终端110与服务器120之间可以通过有线或无线的通信链路形成连接,以进行数据交互。
在一种实施方式中,终端110可以拍摄或者通过其他方式获取待美颜的图像或视频,将其上传至服务器120。例如,用户在终端110上打开美颜App(Application,应用程序),从相册中选取待美颜的图像或视频,将其上传至服务器120以进行美颜,或者用户在终端110上打开直播App中的美颜功能,将实时采集的视频上传至服务器120以进行美颜。服务器120执行上述图像美颜处理方法,以得到经过美颜的图像或视频,并返回终端110。
在一种实施方式中,服务器120可以执行对深度神经网络的训练,将经过训练的深度神经网络发送至终端110进行部署,例如将该深度神经网络的相关数据打包在上述美颜App或直播App的更新包中,使终端110通过更新App而获得该深度神经网络并部署在本地。进而,终端110在拍摄或者通过其他方式获取待美颜的图像或视频后,可以通过执行上述图像美颜处理方法,调用该深度神经网络实现图像或视频的美颜处理。
在一种实施方式中,可以由终端110执行对深度神经网络的训练,例如从服务器120处获取深度神经网络的基本架构,通过本地的数据集进行训练,或者从服务器120处获取数据集,对本地构建的深度神经网络进行训练,或者完全不依赖服务器120而训练得到深度神经网络。进而,终端110可以通过执行上述图像美颜处理方法,调用该深度神经网络实现图像或视频的美颜处理。
由上可知,本示例性实施方式中的图像美颜处理方法的执行主体可以是上述终端110或服务器120,本公开对此不做限定。
本公开的示例性实施方式还提供一种用于执行上述深度神经网络训练方法或图像美颜处理方法的电子设备,该电子设备可以是上述终端110或服务器120。下面以图2中的移动终端200为例,对上述电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图2中的构造也能够应用于固定类型的设备。
如图2所示,移动终端200具体可以包括:处理器201、存储器202、总线203、移动通信模块204、天线1、无线通信模块205、天线2、显示屏206、摄像模块207、音频模块208、电源模块209与传感器模块210。
处理器201可以包括一个或多个处理单元,例如:处理器201可以包括AP(Application Processor,应用处理器)、调制解调处理器、GPU(Graphics ProcessingUnit,图形处理器)、ISP(Image Signal Processor,图像信号处理器)、控制器、编码器、解码器、DSP(Digital Signal Processor,数字信号处理器)、基带处理器和/或NPU(Neural-Network Processing Unit,神经网络处理器)等。本示例性实施方式中的深度神经网络可以运行于GPU、DSP或NPU上,DSP与NPU通常以int型数据(整数型)运行深度神经网络,GPU通常以float型数据(浮点型)运行深度神经网络,相较而言,DSP与NPU上运行的功耗较低,响应速度较快,精度较低,GPU上运行的功耗较高,响应速度较慢,精度较高。实际应用中,可以根据移动终端200的性能与实际需求选择合适的处理单元运行深度神经网络,例如在对视频中的图像进行实时美颜时,由于对速度要求较高,可以选择DSP或NPU来运行深度神经网络。
编码器可以对图像或视频数据进行编码(即压缩),形成对应的码流数据,以减少数据传输所占的带宽;解码器可以对图像或视频的码流数据进行解码(即解压缩),以还原出图像或视频数据。移动终端200可以处理多种编码格式的图像或视频,例如:JPEG(JointPhotographic Experts Group,联合图像专家组)、PNG(Portable Network Graphics,便携式网络图形)、BMP(Bitmap,位图)等图像格式,MPEG(Moving Picture Experts Group,动态图像专家组)1、MPEG2、H.263、H.264、HEVC(High Efficiency Video Coding,高效率视频编码)等视频格式。
处理器201可以通过总线203与存储器202或其他部件形成连接。
存储器202可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器201通过运行存储在存储器202的指令,执行移动终端200的各种功能应用以及数据处理。存储器202还可以存储应用数据,例如存储图像,视频等文件。
移动终端200的通信功能可以通过移动通信模块204、天线1、无线通信模块205、天线2、调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。移动通信模块204可以提供应用在移动终端200上2G、3G、4G、5G等移动通信解决方案。无线通信模块205可以提供应用在移动终端200上的无线局域网、蓝牙、近场通信等无线通信解决方案。
显示屏206用于实现显示功能,如显示用户界面、图像、视频等。摄像模块207用于实现拍摄功能,如拍摄待美颜的图像或视频等。音频模块208用于实现音频功能,如播放音频,采集语音等。电源模块209用于实现电源管理功能,如为电池充电、为设备供电、监测电池状态等。传感器模块210可以包括深度传感器2101、压力传感器2102、陀螺仪传感器2103、气压传感器2104等,以实现相应的感应检测功能。
下面结合图3对本示例性实施方式中的图像美颜处理方法进行说明,图3示出了该图像美颜处理方法的示例性流程,可以包括:
步骤S310,获取待美颜人脸图像;
步骤S320,通过预先训练的深度神经网络对待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过深度神经网络确定待美颜人脸图像的掩膜;
步骤S330,基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像。
其中,第一美颜处理和第二美颜处理为整个美颜流程中的两个阶段。本示例性实施方式可以根据实际需求设置第一美颜处理和第二美颜处理的具体功能。例如,第一美颜处理可以是通用化美颜处理,通用化美颜处理是指整个美颜处理过程中较为固定化、统一化的环节,例如去瑕疵,对于大多数用户来说是必需的,无需进行个性化设置。第二美颜处理可以是个性化美颜处理,个性化美颜处理是指整个美颜处理过程中因人而异程度较高、难以统一处理的环节,例如磨皮、美白提亮、五官形变、上妆等,对于大多数用户来说这些环节并非必需,且需要用户进行个性化设置,如选择磨皮程度、形变力度等。对于通用化美颜处理来说,由于其处理过程较为固定、统一,本示例性实施方式可以采用深度神经网络来实现这部分处理。
在一种实施方式中,第一美颜处理可以是去瑕疵,第二美颜处理可以是去瑕疵以外的其他美颜处理。
待美颜人脸图像的掩膜(mask)用于表示待美颜人脸图像中至少一种预设区域的位置信息,预设区域包括但不限于:脸部皮肤区域,脸部遮挡物区域,人像区域(通常指非皮肤的人像区域),毛发区域,嘴唇区域,胡须区域,背景区域。本示例性实施方式可以根据实际需求确定预设区域,例如,需要对脸部皮肤进行美颜同时避开脸部遮挡物时,可以将脸部皮肤区域和脸部遮挡物区域作为预设区域,需要对嘴唇进行美颜时,可以将嘴唇区域作为预设区域。通过深度神经网络得到预设区域对应的掩膜。
深度神经网络(Deep Neural Network,DNN)是一种具有较多层数的神经网络,通过增加网络层数(即网络深度)以减少参数量,同时能够学习到图像的深层特征,实现像素级处理。本公开对于深度神经网络的层数不做限定。
本示例性实施方式中,可以根据实际需求确定第一美颜处理的具体功能,并将深度神经网络训练为能够实现第一美颜处理的网络。例如,第一美颜处理可以是去瑕疵,则通过获取去瑕疵相关的数据集并对深度神经网络进行训练,使得深度神经网络能够实现去瑕疵。
基于上述图像美颜处理方法,一方面,基于待美颜人脸图像的掩膜进行第二美颜处理,使得第二美颜处理准确作用于需要美颜的区域,避开其他区域,从而改善了美颜误处理的问题,提升了美颜效果。另一方面,通过深度神经网络实现第一美颜处理与确定掩膜这两种任务,相当于将两种任务合并执行,从而简化了算法流程,降低了计算量,并且无需用户进行抠图等手动操作。再一方面,深度神经网络进行第一美颜处理可以替代原本的多个固定算法模块,增加了图像美颜处理的灵活性,并适用于多样的光照条件或皮肤状况。
下面对图3中的每个步骤做具体说明。
参考图3,在步骤S310中,获取待美颜人脸图像。
本公开对于待美颜人脸图像的来源不做限定,如可以是本设备中存储的图像,本设备当前拍摄的图像,从客户端获取的图像,从其他设备获取的图像等。
在一种实施方式中,待美颜人脸图像可以是连续多帧图像中的一帧或多帧图像。其中,连续多帧图像可以是视频,也可以是连拍的图像等。该连续多帧图像为需要进行美颜处理的对象。以视频为例,其可以是当前实时拍摄或实时接收的视频流,也可以是已完成拍摄或接收的完整视频,如本地存储的一段视频。本公开对于视频的帧率、图像分辨率等参数不做限定,例如视频帧率可以采用30fps(帧每秒)、60fps、120fps等,图像分辨率可以采用720P、1080P、4K等以及对应的不同宽高比。可以对视频中的每一帧图像均进行美颜处理,也可以从视频中筛选出一部分图像进行美颜处理,将需要进行美颜处理的图像作为上述待美颜人脸图像。举例来说,实时接收视频流时,可以将所接收的每一帧图像均作为待美颜人脸图像。
在一种实施方式中,上述获取待美颜人脸图像,可以包括以下步骤:
从待美颜全局图像中提取一张或多张待美颜人脸子图像,根据待美颜人脸子图像确定待美颜人脸图像。
其中,待美颜全局图像可以是完整的待美颜原始图像,除了人脸以外,还可以包括其他部分,如可以包括人的身体。待美颜人脸子图像是在待美颜全局图像中截取人脸部分所得到的子图像。本示例性实施方式对于待美颜全局图像中的人脸数量不做限定,例如待美颜全局图像中包括多张人脸时,可以提取多张待美颜人脸子图像,并通过后续步骤的处理,实现同时美颜多张人脸。
在一种实施方式中,上述从待美颜全局图像中提取一张或多张待美颜人脸子图像,可以包括以下步骤:
根据在待美颜全局图像中识别到的人脸关键点,在待美颜全局图像中生成一个或多个人脸的包围盒;
保留面积大于或等于人脸面积阈值的包围盒,并截取包围盒内的图像,得到一张或多张待美颜人脸子图像。
其中,人脸关键点可以包括人脸关键部位以及人脸边缘的点。包围盒(BoundingBox)是指图像中包围人脸、且具有一定几何形状的区域,本公开对于包围盒的形状不做限定,如可以是矩形、梯形等任意形状。每张人脸的人脸关键点均处于包围盒内。在一种实施方式中,包围盒可以是包括人脸关键点的最小矩形。
一般的,通过人脸检测算法可以在待美颜全局图像中检测出所有的人脸,其中可能包括不需要美颜的人脸(例如远处路人的人脸),考虑到在图像美颜的场景中,通常需要对较大的人脸进行美颜(较小的人脸美颜后效果不明显,因此通常无需进行美颜),因此可以通过人脸面积阈值对包围盒进行过滤。可以根据经验或者待美颜全局图像的大小,设置人脸面积阈值,示例性的,人脸面积阈值可以是待美颜全局图像的尺寸*0.05;如果包围盒的面积大于或等于人脸面积阈值,则为需要美颜的人脸,保留该包围盒;如果包围盒的面积小于人脸面积阈值,则为不需要美颜的人脸,删除该包围盒。
在对包围盒完成过滤后,所保留的包围盒为有效人脸的包围盒。截取每个包围盒内的图像,得到与包围盒数量相同的待美颜人脸子图像。
在一种实施方式中,为便于后续对待美颜人脸子图像进行组合,可以设置待美颜人脸子图像的数量上限,即设置包围盒的数量上限。如可以设置为4,如果经过上述人脸面积阈值的过滤后,所保留的包围盒数量大于4,则可以从中选取4个包围盒,如可以是面积最大的4个包围盒,也可以是距离待美颜全局图像的中心最近的4个包围盒,对应截取4张待美颜人脸子图像,对于其他包围盒内的人脸不进行美颜;或者可以进行多次美颜处理,本次处理中选取4个包围盒并截取待美颜人脸子图像进行美颜,下次处理中选取其他的包围盒并截取待美颜人脸子图像进行美颜,从而完成对待美颜全局图像中所有面积大于人脸面积阈值的包围盒内的人脸进行美颜。
在一种实施方式中,在截取包围盒内的图像前,还可以对包围盒进行扩大处理,使包围盒包括少量的人脸以外的区域,以便于后续进行图像融合时进行渐变处理。在进行扩大处理时,可以按照预设比例将包围盒向一个或多个方向扩大。例如,预设比例为1.1,将包围盒按照向四周均匀扩大,使扩大后的包围盒尺寸为原尺寸的1.1倍。需要说明的是,在对包围盒进行扩大处理时,如果包围盒的一个或多个边界到达待美颜全局图像的边界,则使包围盒的该边界停留在待美颜全局图像的边界处。
针对待美颜全局图像为连续多帧图像中的一帧或多帧图像的情况,可以基于连续多帧图像中的其他帧图像的信息进行待美颜人脸子图像的提取。在一种实施方式中,将待美颜全局图像中的人脸与待美颜全局图像的参考帧图像中的人脸进行匹配,根据匹配结果确定待美颜全局图像中的人脸的稳定包围盒;基于待美颜全局图像中的人脸的稳定包围盒,从待美颜全局图像中提取待美颜人脸子图像。
其中,将初始检测出的人脸的包围盒称为基础包围盒,例如可以是包括人脸关键点的最小矩形、或者通过相关算法得到的人脸框。对基础包围盒进行优化,例如扩展、位置修正等,将优化后的包围盒称为稳定包围盒。
本示例性实施方式中,可以对待美颜全局图像进行人脸检测,以得到人脸的相关信息,本公开对于人脸检测算法不做限定,例如可以通过特定的神经网络检测人脸关键点,包括脸部边界的关键点,根据脸部边界的关键点生成人脸的基础包围盒,通过优化得到稳定包围盒。
参考帧图像可以是上述连续多帧图像中已确定人脸稳定包围盒或者已完成美颜处理的任一帧图像,例如在对视频进行逐帧美颜处理时,可以将待美颜全局图像的上一帧图像作为参考帧图像。通过匹配待美颜全局图像与参考帧图像中的人脸,可以基于参考帧图像中的人脸的稳定包围盒,确定待美颜全局图像中的人脸的稳定包围盒。
在一种实施方式中,参考图4所示,上述将待美颜全局图像中的人脸与待美颜全局图像的参考帧图像中的人脸进行匹配,根据匹配结果确定待美颜全局图像中的人脸的稳定包围盒,可以包括以下步骤S410至S430:
步骤S410,检测待美颜全局图像中的人脸,记为待确定人脸,将待确定人脸与待美颜全局图像的参考帧图像中的已确定人脸进行匹配。
其中,待确定人脸是指需要进行美颜、但未被确定稳定包围盒的人脸,可视为身份未知的人脸,已确定人脸是指已被确定稳定包围盒的人脸,可视为身份已知的人脸。参考帧图像中已被确定稳定包围盒的人脸均为已确定人脸。相对应的,待美颜全局图像中所检测出的人脸为未被确定稳定包围盒的人脸,即待确定人脸。将待美颜全局图像中的待确定人脸与参考帧图像中的已确定人脸进行匹配,可以推断待确定人脸的稳定包围盒与该待确定人脸匹配的已确定人脸的稳定包围盒之间具有相关性,可以由此确定待确定人脸的稳定包围盒。
在一种实施方式中,可以根据经验或者待美颜全局图像的大小,设置人脸面积阈值;如果人脸的基础包围盒的面积大于或等于人脸面积阈值,则为需要美颜的人脸,可以将该人脸的基础包围盒等信息予以保留,也可以将该人脸记为待确定人脸;如果人脸的基础包围盒的面积小于人脸面积阈值,则为不需要美颜的人脸,可以删除该人脸的基础包围盒等相关信息,不对其进行后续处理。
在一种实施方式中,为便于后续对待美颜人脸子图像进行处理,例如对待美颜人脸子图像进行组合处理,或者考虑到设备性能的限制,可以设置待美颜人脸子图像的数量上限,即设置待确定人脸的数量上限。如可以设置为4,如果经过上述人脸面积阈值的过滤后,所保留的人脸的数量大于4,则可以从中进一步筛选出4张待确定人脸,如可以是面积最大的4张人脸,也可以是距离待美颜全局图像的中心最近的4张人脸,这样在后续对应截取4张待美颜人脸子图像,对于其他人脸则不进行后续处理。或者,可以进行多次美颜处理,本次处理中选取4张人脸作为待确定人脸,截取其对应的待美颜人脸子图像并进行美颜处理,下次处理中选取其他人脸作为待确定人脸,并截取其对应的待美颜人脸子图像进行美颜处理,从而完成对待美颜全局图像中所有面积大于人脸面积阈值的基础包围盒内的人脸进行美颜处理。
在一种实施方式中,为便于跟踪与识别连续多帧图像中的人脸,可以对每一张人脸分配ID(Identity Document,标识)。例如,从第一帧开始,为每一张人脸分配ID;后续在每一帧中检测出人脸后,将每一张人脸与上一帧中的人脸进行匹配;如果匹配成功,则继承上一帧中的人脸ID与其他相关信息;如果匹配不成功,则作为新的人脸,分配新的ID。
本公开对于匹配待确定人脸与已确定人脸的方式不做限定,例如可以采用人脸识别算法,将每一张待确定人脸与每一张已确定人脸进行识别比对,如果相似度高于预设的相似度阈值,则确定待确定人脸与已确定人脸匹配成功。
在一种实施方式中,可以根据待确定人脸的基础包围盒与已确定人脸的基础包围盒的重叠度(Intersection Over Union,IOU,也称为交并比),确定待确定人脸与已确定人脸是否匹配成功。下面提供计算重叠度的示例性方式:
获取待确定人脸的基础包围盒在待美颜全局图像中的位置,以及已确定人脸的基础包围盒在参考帧图像中的位置,统计两个基础包围盒中位置重合的像素点数量,记为k1,以及位置不重合的像素点数量,记为k2(表示待确定人脸的基础包围盒中与已确定人脸的基础包围盒不重合的像素点数量)与k3(表示已确定人脸的基础包围盒中与未确定人脸的基础包围盒不重合的像素点数量),则两个基础包围盒的重叠度为:
在确定重叠度后,如果该重叠度达到预设的重叠度阈值,则确定该待确定人脸与该已确定人脸匹配成功。重叠度阈值可以根据经验与实际需求设定,例如可以设为0.75。
此外,还可以通过ICP(Iterative Closest Point,迭代最近邻点)算法等对待确定人脸的基础包围盒与已确定人脸的基础包围盒中的任一个进行迭代变换,并根据最终变换后的待确定人脸的基础包围盒与已确定人脸的基础包围盒中像素值相同的像素点数量与像素值不同的像素点数量计算两个基础包围盒的重叠度,由此判断是否匹配成功。
需要说明的是,由于待美颜全局图像中可能存在多个待确定人脸,参考帧图像中存在多个已确定人脸,可以分别对每一张待确定人脸与每一张已确定人脸进行匹配计算,得到相似度矩阵或重叠度矩阵,进而可以采用匈牙利算法等实现全局的最大匹配,再根据每一对待确定人脸与已确定人脸的相似度或重叠度确定其是否匹配成功。
步骤S420,如果待确定人脸与已确定人脸匹配不成功,则根据第一预设参数对待确定人脸的基础包围盒进行扩展,得到待确定人脸的稳定包围盒;
待确定人脸与已确定人脸匹配不成功,说明该待确定人脸为连续多帧图像中新出现的人脸,无法从参考帧图像中获得参考信息。因此可以在该待确定人脸的基础包围盒基础上,进行适当的扩展,得到稳定包围盒。第一预设参数为针对新出现人脸的基础包围盒的扩展参数,可以根据经验或实际需求确定,例如可以是对基础包围盒的宽度与高度均扩展1/4。
假设待确定人脸的基础包围盒表示为[bb0,bb1,bb2,bb3],bb0为基础包围盒左上点的横坐标,bb1为基础包围盒左上点的纵坐标,bb2为基础包围盒右下点的横坐标,bb3为基础包围盒右下点的纵坐标,该基础包围盒的宽度为w,高度为h。请注意,图像中的像素坐标通常是以图像左上点为(0,0),右下点为(Wmax,Hmax),Wmax与Hmax表示图像的宽度与高度。因此有bb0<bb2,bb1<bb3。以E1表示第一预设参数,当根据第一预设参数对该基础包围盒进行中心扩展(即上下左右均匀扩展)时,可以得到稳定包围盒的尺寸为:
其中,expand_w与expand_h分别为待确定人脸的稳定包围盒的宽度与高度。需要说明的是,如果扩展后的宽度expand_w超出待美颜全局图像的宽度Wmax,则expand_w=Wmax;如果扩展后的高度expand_h超出待美颜全局图像的高度Hmax,则expand_h=Hmax。
稳定包围盒的中心点坐标等于基础包围盒的中心点坐标,即:
其中,center_x表示待确定人脸的稳定包围盒的中心点x坐标,center_y表示待确定人脸的稳定包围盒的中心点y坐标。
则可以计算稳定包围盒的左上点与右下点的坐标如下:
其中,expand_bb0为稳定包围盒左上点的横坐标,expand_bb1为稳定包围盒左上点的纵坐标,expand_bb2为稳定包围盒右下点的横坐标,expand_bb3为稳定包围盒右下点的纵坐标。由此得到待确定人脸的稳定包围盒。如果计算出的坐标超出了待美颜全局图像的边界,则以待美颜全局图像的边界坐标替代该超出边界的坐标。最终可以将该扩展包围表示为[expand_bb0,expand_bb1,expand_bb2,expand_bb3]的形式。
需要补充的是,上述各坐标通常采用图像中的像素坐标,为整数,因此在计算时,可以采用float型数据进行计算,然后进行取整,并将结果保存为int型数据。示例性的,在涉及到除法运算时,采用float型数据进行计算并缓存中间结果,在计算最终的结果(包括上述expand_w、expand_h、center_x、center_y、expand_bb0、expand_bb1、expand_bb2、expand_bb3)时进行取整,并以int型数据进行保存。
对于中心点坐标,由于保存int型数据会影响后续处理其他帧的精确性,可以保存int型与float型数据,例如将公式(3)中计算的结果保存为float型数据,如下所示:
其中,center_x_float、center_y_float表示以float型数据所保存的中心点坐标,center_x、center_y表示以int型数据所保存的中心点坐标,int()表示取整运算。
进一步的,为保证结果的准确性,可以将公式(4)更改为如下计算方法:
步骤S430,如果待确定人脸与已确定人脸匹配成功,则根据已确定人脸的稳定包围盒确定待确定人脸的稳定包围盒。
一般的,待美颜全局图像中的待确定人脸相对于与之匹配的参考帧图像中的已确定人脸来说,变化不会太大,体现为位置变化与尺寸变化均不会太大,因此可以在已确定人脸的稳定包围盒的基础上,进行适当的位置变化与尺寸变化,得到待确定人脸的稳定包围盒。
在一种实施方式中,可以根据待确定人脸的基础包围盒相对于已确定人脸的基础包围盒的位置变化参数与尺寸变化参数,对该已确定人脸的稳定包围盒进行位置变化与尺寸变化,得到该待确定人脸的稳定包围盒。
在一种实施方式中,上述根据已确定人脸的稳定包围盒确定待确定人脸的稳定包围盒,可以包括以下步骤:
基于预设稳定系数,对已确定人脸的稳定包围盒的中心点坐标与待确定人脸的基础包围盒的中心点坐标进行加权,得到待确定人脸的稳定包围盒的中心点坐标。
上述步骤表示将已确定人脸的稳定包围盒的位置与待确定人脸的基础包围盒的位置进行融合,以作为待确定人脸的稳定包围盒的位置。在融合时,采用预设稳定系数对两者的中心点坐标进行加权,预设稳定系数可以是已确定人脸的稳定包围盒的权重,可以根据经验或实际场景确定。一般的,人脸移动越快的场景,预设稳定系数越小。示例性的,在直播场景中,人脸通常在一定的范围内移动幅度很小,预设稳定系数可以设为0.9,则计算待确定人脸的稳定包围盒的中心点坐标如下:
其中,pre_center_x表示已确定人脸的稳定包围盒的中心点x坐标,pre_center_y表示已确定人脸的稳定包围盒的中心点y坐标。可见,公式(7)表示以已确定人脸的稳定包围盒的中心点坐标权重为0.9,待确定人脸的基础包围盒的中心点坐标权重为0.1,对两个中心点坐标进行加权,得到待确定人脸的稳定包围盒的中心点坐标。
与上述公式(5)类似的,可以保存int型与float型数据中心点坐标,则有:
其中,pre_center_x_float是已保存的pre_center_x的float型数据,pre_center_y_float是已保存的pre_center_y的float型数据。
通过上述加权以计算中心点坐标的方式,实质上采用了对中心点坐标进行动量更新的机制,能够避免同一张人脸的稳定包围盒的中心点坐标从参考帧图像到待美颜全局图像出现过度移动,以导致后续截取的待美颜人脸子图像发生抖动,影响美颜效果。
在一种实施方式中,上述根据已确定人脸的稳定包围盒确定待确定人脸的稳定包围盒,可以包括以下步骤:
如果待确定人脸的基础包围盒的尺寸大于已确定人脸的稳定包围盒的尺寸与第一倍率之积,则根据第二预设参数对已确定人脸的稳定包围盒的尺寸进行扩展,得到待确定人脸的稳定包围盒的尺寸;
如果待确定人脸的基础包围盒的尺寸小于已确定人脸的稳定包围盒的尺寸与第二倍率之积,则根据第三预设参数对已确定人脸的稳定包围盒的尺寸进行缩小,得到待确定人脸的稳定包围盒的尺寸;第一倍率大于第二倍率;
如果待确定人脸的基础包围盒的尺寸小于已确定人脸的稳定包围盒的尺寸与第一倍率之积、且大于已确定人脸的稳定包围盒的尺寸与第二倍率之积,则将已确定人脸的稳定包围盒的尺寸作为待确定人脸的稳定包围盒的尺寸。
上述步骤表示根据待确定人脸的基础包围盒的尺寸与已确定人脸的稳定包围盒的尺寸的比较结果,分为三种情况分别进行计算。第一倍率与第二倍率可以是整数倍率,也可以是非整数倍率。在一种实施方式中,第一倍率大于或等于1,第二倍率小于1。示例性的,第一倍率可以是1,第二倍率可以是0.64。
在进行计算时,可以对宽度与高度分别进行比较与计算,例如宽度的比较结果属于上述第一种情况,高度的比较结果属于第二种情况,则分别在两种情况下计算待确定人脸的稳定包围盒的宽度与高度。
假设第一倍率为t1,第二倍率为t2,对宽度的计算进行说明:
第一种情况、如果w>pre_expand_w·t1,以E2表示第二预设参数,则有:
expand_w=pre_expand_w+pre_expand_w·E2 (9)
第二种情况、如果w<pre_expand_w·t2,以E3表示第三预设参数,则有:
expand_w=pre_expand_w-pre_expand_w·E3 (10)
第三种情况、如果pre_expand_w·t2<w<pre_expand_w·t1,则有:
expand_w=pre_expand_w (11)
对于高度,同样可以按照上述三种情况分别进行计算,得到expand_h。
一般的,在视频连续多帧图像中,只要人脸不快速靠近镜头、不快速远离镜头或者不移出画面,人脸的尺寸不会发生剧烈变化,则满足上述第三种情况,此时使待确定人脸的稳定包围盒的尺寸等于已确定人脸的稳定包围盒的尺寸,即保持稳定包围盒的尺寸不变。而上述第一种情况与第二种情况均是人脸的尺寸发生剧烈变化的情况,第一种情况是人脸剧烈变大,此时根据第二预设参数适当扩大已确定人脸的稳定包围盒的尺寸,得到待确定人脸的稳定包围盒的尺寸,第二预设参数可以根据经验与实际场景确定;第二种情况是人脸剧烈变小,此时根据第三预设参数适当缩小已确定人脸的稳定包围盒的尺寸,得到待确定人脸的稳定包围盒的尺寸,第三预设参数可以根据经验与实际场景确定。
如果扩展后的宽度expand_w超出待美颜全局图像的宽度Wmax,则expand_w=Wmax;如果扩展后的高度expand_h超出待美颜全局图像的高度Hmax,则expand_h=Hmax。
通过上述三种情况的计算,能够避免同一张人脸的稳定包围盒的尺寸从参考帧图像到待美颜全局图像出现过度变化,以导致后续截取的待美颜人脸子图像发生抖动,影响美颜效果。
分别得到待确定人脸的稳定包围盒的中心点坐标与尺寸后,可以计算出该稳定包围盒的左上点与右下点的坐标。如果计算出的坐标超出了待美颜全局图像的边界,则以待美颜全局图像的边界坐标替代该超出边界的坐标。最终可以将该稳定包围盒表示为[expand_bb0,expand_bb1,expand_bb2,expand_bb3]的形式。
由上可知,在待确定人脸与已确定人脸匹配成功的情况下,根据已确定人脸的稳定包围盒确定待确定人脸的稳定包围盒,使得待确定人脸在一定程度上继承了已确定人脸的稳定包围盒的信息,从而保证了不同帧图像之间人脸的稳定包围盒具有一定的连续性与稳定性,不会发生剧烈的位置或尺寸变化,进而保证了后续进行美颜处理时人脸美颜效果的一致性,防止由于人脸的剧烈变化导致美颜后的人脸发生闪动现象。
在一种实施方式中,得到待确定人脸的稳定包围盒后,可以保存其稳定包围盒的相关参数,并将该待确定人脸标记为已确定人脸,以用于后续帧中待确定人脸的匹配与稳定包围盒的确定。
在得到待美颜全局图像中的人脸的稳定包围盒后,可以截取稳定包围盒内的图像,得到待美颜人脸子图像。当待美颜全局图像中包括多张人脸的稳定包围盒时,可以截取每一张人脸对应的待美颜人脸子图像。
在一种实施方式中,在从待美颜全局图像中提取一张或多张待美颜人脸子图像时,可以记录裁剪信息。裁剪信息包括每张待美颜人脸子图像在待美颜全局图像中的位置信息。由此,便于在对人脸进行美颜处理后填充回待美颜全局图像中。
在得到待美颜人脸子图像后,可以根据待美颜人脸子图像确定待美颜人脸图像。例如,可以分别将每一张待美颜人脸子图像作为待美颜人脸图像。
在一种实施方式中,上述根据待美颜人脸子图像确定待美颜人脸图像,可以包括以下步骤:
基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理,生成待美颜人脸图像,调节处理包括变换和/或组合。
其中,输入图像尺寸是与深度神经网络的输入层匹配的图像尺寸。变换包括旋转、缩放等处理,组合是指将多张待美颜人脸子图像组合为一张图像,将变换和组合统称为调节处理。
本示例性实施方式中,可以根据实际需求将单张待美颜人脸子图像作为待美颜人脸图像,或者对单张待美颜人脸子图像进行变换后作为待美颜人脸图像,或者将多张待美颜人脸图像组合为一张待美颜人脸图像,或者将多张待美颜人脸图像进行变换后组合为一张待美颜人脸图像。示例性的,对于从待美颜全局图像中所提取的多张待美颜人脸子图像,可以将其变换后组合为一张待美颜人脸图像,也可以将其中较大的(如面积大于设定的子图像阈值)待美颜人脸子图像单独作为待美颜人脸图像,将其中较小的(如面积小于设定的子图像阈值)待美颜人脸子图像组合为待美颜人脸图像。
本示例性实施方式对于输入图像尺寸的大小以及宽高比不做限定,示例性的,可以设置输入图像尺寸的长边与短边的比例接近在一种实施方式中,深度神经网络可以是全卷积网络,全卷积网络可以处理不同尺寸的图像。在这种情况下,深度神经网络对于输入的图像尺寸没有要求,尺寸的大小对于计算量、内存占用、美颜精细度有影响。可以根据用户设置的美颜精细度或者设备的性能,确定输入图像尺寸。由此,该深度神经网络可以部署在高、中、低等不同性能的设备上,适用范围很广,无需针对不同的设备部署不同的深度神经网络,降低了网络的训练成本。示例性的,考虑在移动终端上适合进行轻量化计算,可以将输入图像尺寸确定为较小的数值,例如为宽640*高448。
在将待美颜人脸子图像组合为待美颜人脸图像时,具体组合的方式与待美颜人脸子图像的数量相关。在一种实施方式中,上述基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理,生成待美颜人脸图像,可以进一步包括以下步骤:
根据待美颜人脸子图像的数量,将输入图像尺寸分割为与待美颜人脸子图像一一对应的子图像尺寸;
分别基于每个子图像尺寸将对应的待美颜人脸子图像进行变换;
将变换后的待美颜人脸子图像进行组合,生成待美颜人脸图像。
下面结合图5举例说明。图5中Q表示待美颜人脸子图像的数量,图5分别示出了Q为1~4时的输入图像尺寸分割与图像组合的示例性方式。假设输入图像尺寸为宽640*高448,Q为1时,子图像尺寸也为宽640*高448;Q为2时,子图像尺寸为输入图像尺寸的一半,即宽320*高448;Q为3时,子图像尺寸分别为输入图像尺寸的0.5、0.25、0.25,即宽320*高448、宽320*高224、宽320*高224;Q为4时,子图像尺寸分别均为输入图像尺寸的0.25,即宽320*高224。将各个待美颜人脸子图像分别变换为与子图像尺寸一致,需要特别说明的是,当各个子图像尺寸不一致时,如Q为3的情况,可以按照待美颜人脸子图像的大小顺序与子图像尺寸的大小顺序,将待美颜人脸子图像与子图像尺寸进行一一对应,即最大的待美颜人脸子图像对应到最大的子图像尺寸,最小的待美颜人脸子图像对应到最小的子图像尺寸。在将待美颜人脸子图像进行变换后,再将变换后的待美颜人脸子图像按照图5所示的方式进行组合,生成一张待美颜人脸图像。
在一种实施方式中,当Q为偶数时,可以将输入图像尺寸进行Q等分,得到Q个相同的子图像尺寸。具体地,可以将Q分解为两个因数的乘积,即Q=q1*q2,使q1/q2的比例与输入图像尺寸的宽高比(如)尽可能接近,将输入图像尺寸的宽度进行q1等分,高度进行q2等分。当Q为奇数时,将输入图像尺寸进行Q+1等分,得到Q+1个相同的子图像尺寸,将其中的两个子图像尺寸合并为一个子图像尺寸,其余Q-1个子图像尺寸不变,由此得到Q个子图像尺寸。
在一种实施方式中,可以先计算待美颜人脸子图像的尺寸比例(或面积比例),如可以是S1:S2:S3:…:SQ,再按照该比例将输入图像尺寸分割为Q个子图像尺寸。
确定每个待美颜人脸子图像对应的子图像尺寸后,可以基于子图像尺寸对待美颜人脸子图像进行变换。在一种实施方式中,上述分别基于每个子图像尺寸将对应的待美颜人脸子图像进行变换,可以包括以下任意一条或多条:
①当待美颜人脸子图像的宽度与高度的大小关系与子图像尺寸的宽度与高度的大小关系不同时,将待美颜人脸子图像旋转90度。也就是说,在待美颜人脸子图像与子图像尺寸中,均为宽度大于高度或者均为宽度小于高度,则待美颜人脸子图像与子图像尺寸的宽度与高度的大小关系相同,无需旋转待美颜人脸子图像;否则,待美颜人脸子图像与子图像尺寸的宽度与高度的大小关系不同,需要将待美颜人脸子图像旋转90度(顺时针或逆时针旋转皆可)。例如,子图像尺寸为宽320*高448时,即宽度小于高度,如果待美颜人脸子图像为宽度大于高度的情况,则将待美颜人脸子图像旋转90度。
在一种实施方式中,为了保持待美颜人脸子图像中人脸的角度,也可以不对待美颜人脸子图像进行旋转。
②当待美颜人脸子图像的尺寸大于子图像尺寸时,根据子图像尺寸将待美颜人脸子图像进行下采样。其中,待美颜人脸子图像的尺寸大于子图像尺寸,是指待美颜人脸子图像的宽度大于子图像尺寸的宽度,或者待美颜人脸子图像的高度大于子图像尺寸的高度。在图像美颜场景中,待美颜全局图像一般是终端设备拍摄的清晰图像,其尺寸较大,因此待美颜人脸子图像的尺寸大于子图像尺寸是比较常见的情况,即通常情况下需要对待美颜人脸子图像进行下采样。
下采样可以采用双线性插值、最近邻插值等方法实现,本公开对此不做限定。
在进行下采样后,待美颜人脸子图像的宽度与高度中的至少一个与子图像尺寸对齐,具体包括以下几种情况:
待美颜人脸子图像的宽度、高度均与子图像尺寸相同;
待美颜人脸子图像的宽度与子图像尺寸的宽度相同,高度小于子图像尺寸的高度;
待美颜人脸子图像的高度与子图像尺寸的高度相同,宽度小于子图像尺寸的宽度。
需要说明的是,如果已经对待美颜人脸子图像进行了上述旋转,得到经过旋转的待美颜人脸子图像,则当该待美颜人脸子图像的尺寸大于子图像尺寸时,根据子图像尺寸对其进行下采样,具体的实现方式与上述待美颜人脸子图像的下采样方式相同,因而不再赘述。
反之,当待美颜人脸子图像(或经过旋转的待美颜人脸子图像)的尺寸小于或等于子图像尺寸时,可以不进行下采样的处理步骤。
③当待美颜人脸子图像的尺寸小于子图像尺寸时,根据待美颜人脸子图像与子图像尺寸的差值将待美颜人脸子图像进行填充,使填充后的待美颜人脸子图像的尺寸等于子图像尺寸。其中,待美颜人脸子图像的尺寸小于子图像尺寸,是指待美颜人脸子图像的宽度与高度中的至少一个小于子图像尺寸,另一个不大于子图像尺寸,具体包括以下几种情况:
待美颜人脸子图像的宽度小于子图像尺寸的宽度,高度也小于子图像尺寸的高度;
待美颜人脸子图像的宽度小于子图像尺寸的宽度,高度等于子图像尺寸的高度;
待美颜人脸子图像的高度小于子图像尺寸的高度,宽度等于子图像尺寸的高度。
填充时可以采用预设像素值,通常是与人脸颜色差别较大的像素值,如(R0,G0,B0)、(R255,G255,B255)等。
一般可以填充在待美颜人脸子图像的四周,例如将待美颜人脸子图像的中心与子图像尺寸的中心重合,对待美颜人脸子图像四周的差值部分进行填充,使填充后待美颜人脸子图像的尺寸与子图像尺寸一致。当然也可以将待美颜人脸子图像与子图像尺寸的一侧边缘对齐,对另一侧进行填充。本公开对此不做限定。
需要说明的是,如果已经对待美颜人脸子图像进行了上述旋转与下采样中至少一种处理,得到经过旋转与下采样中至少一种处理的待美颜人脸子图像,则当该待美颜人脸子图像的尺寸小于子图像尺寸时,根据其与子图像尺寸的差值进行填充,具体的实现方式与上述待美颜人脸子图像的填充方式相同,因而不再赘述。
上述①~③为常用的三种变换方式,可以根据实际需求使用其中的任意一种或多种。例如,依次采用①、②、③对每张待美颜人脸子图像进行处理,将处理后的待美颜人脸子图像组合为待美颜人脸图像。
在一种实施方式中,在上述基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理时,可以记录调节处理信息。调节处理信息可以包括变换信息和/或组合信息。变换信息可以包括:对每张待美颜人脸子图像旋转的方向与角度,下采样的比例,填充的像素的坐标等。组合信息可以包括:每张待美颜人脸子图像的尺寸,以及在待美颜人脸图像中的位置信息,待美颜人脸子图像的排列方式与顺序等。由此,便于在对待美颜人脸图像进行美颜处理后,恢复出每一张人脸原始的方向、尺寸与位置。
以上说明了如何获取待美颜人脸图像。继续参考图3,在步骤S320中,通过预先训练的深度神经网络对待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过深度神经网络确定待美颜人脸图像的掩膜。
中间人脸图像是待美颜人脸图像经过第一美颜处理后的图像,例如中间人脸图像可以是待美颜人脸图像对应的去瑕疵图像。
本公开对于掩膜的具体形式不做限定,例如可以是单通道或多通道的掩膜图像。
在一种实施方式中,深度神经网络可以识别待美颜人脸图像中的k种预设区域,k为不小于2的正整数,并对应输出k通道的掩膜图像。以k为4举例说明,深度神经网络可以识别待美颜人脸图像中的4种预设区域,如分别为背景区域、人像区域、脸部皮肤区域、脸部遮挡物区域,其中背景区域可以是除人像区域、脸部皮肤区域、脸部遮挡物区域以外的其他区域。深度神经网络可以输出4通道的掩膜图像,可记为背景掩膜图像、人像掩膜图像、脸部皮肤掩膜图像、脸部遮挡物掩膜图像。以脸部皮肤掩膜图像为例,其尺寸与待美颜人脸图像可以相同,其中每个像素点的数值用于量化表示该像素点属于脸部皮肤区域的概率,如该数值的值域可以是[0,255],从而与待美颜人脸图像或中间人脸图像的像素值的值域统一,则该数值可视为该像素点属于脸部皮肤区域的概率量化至[0,255]区间内的数值(例如将概率乘以255得到该数值),或者该数值的值域可以是[0,1],则该数值等同于概率。对于其他预设区域的掩膜图像来说,像素点的数值含义类似。一般的,每个像素点属于上述4种预设区域的概率之和为1,该像素点在哪个通道的掩膜图像中的数值最大,表示该像素点属于该通道所对应的预设区域类别。
在一种实施方式中,深度神经网络可以识别待美颜人脸图像中的k种预设区域,k为不小于2的正整数,并对应输出单通道的掩膜图像,该掩膜图像中每个像素点的数值表示其属于哪种预设区域。以k为4举例说明,深度神经网络可以识别待美颜人脸图像中的4种预设区域,如分别为背景区域、人像区域、脸部皮肤区域、脸部遮挡物区域,其中背景区域可以是除人像区域、脸部皮肤区域、脸部遮挡物区域以外的其他区域。深度神经网络可以输出单通道的掩膜图像,其中每个像素点的数值为0、1、2或3,数值为0表示该像素点属于背景区域,数值为1表示该像素点属于人像区域,数值为2表示该像素点属于脸部皮肤区域,数值为3表示该像素点属于脸部遮挡物区域。
深度神经网络可以同时实现对待美颜人脸图像的第一美颜处理与确定待美颜人脸图像的掩膜。在对待美颜人脸图像进行第一美颜处理时,需要确定某些人脸预设区域的位置信息,因此第一美颜处理与确定掩膜这两种处理具有较强的相关性。
本公开对于深度神经网络的具体结构不做限定。示例性的,深度神经网络可以包括主干网络,以及与主干网络分别连接的第一分支网络与第二分支网络,第一分支网络用于进行第一美颜处理,第二分支网络用于确定图像掩膜,主干网络可视为第一美颜处理与确定图像掩膜的公共处理部分,如可以用于提取图像特征,第一分支网络输出第一美颜处理后的图像,第二分支网络输出掩膜。或者,深度神经网络可以不设置多个分支,其可以具有C1个输入通道,如C1为3,可以将RGB格式的待美颜人脸图像输入深度神经网络;深度神经网络可以具有C1+C2个输入通道,其中C1表示第一美颜处理后的图像的通道数,C2表示掩膜的通道数,如C1为3,C2为4,则深度神经网络可以输出RGB格式的中间人脸图像,以及输出4通道的掩膜图像。
图6示出了深度神经网络的示例性结构。如图6所示,深度神经网络可以包括:第一像素重排层、至少一个卷积层、至少一个转置卷积层、第二像素重排层。
基于图6所示的深度神经网络,参考图7所示,步骤S320可以通过图7中的步骤S710至S740实现:
步骤S710,利用第一像素重排层对待美颜人脸图像进行第一像素重排处理,得到第一特征图像。
待美颜人脸图像可以是任意通道数量的图像,例如可以是单通道图像(如灰度图像)或者多通道图像(如RGB图像)。第一像素重排层用于进行第一像素重排处理,第一像素重排处理可以是增加通道数的重排,例如可以是将待美颜人脸图像的每个通道重排至多个通道。
在一种实施方式中,步骤S710可以包括:
将通道数为C1的待美颜人脸图像输入第一像素重排层;
将待美颜人脸图像的每个通道中每m*m邻域的像素点分别重排至m*m个通道中的相同位置,输出通道数为C1*m*m的第一特征图像。
其中,C1表示待美颜人脸图像的通道数(即深度神经网络的输入通道数),为正整数,m表示第一像素重排处理的参数,为不小于2的正整数。以m=2为例,遍历待美颜人脸图像的第一通道,通常从左上角开始,将每2*2格子的像素点提取出来,分别重排到4个通道中的相同位置,由此将一个通道变为四个通道,同时图像的宽和高降低到一半,将重排后的图像记为第一特征图像;采用同样的方式处理其他通道。如果待美颜人脸图像为单通道图像,则像素重排后得到四通道的第一特征图像;如果待美颜人脸图像为三通道图像,则像素重排后得到十二通道的第一特征图像。
第一像素重排层可以采用TensorFlow(一种机器学习的实现框架)中的space_to_depth函数实现,将待美颜人脸图像中的空间特征转换为深度特征,也可用采用步长为m的卷积操作实现,此时第一像素重排层可视为特殊的卷积层。
步骤S720,利用卷积层对第一特征图像进行卷积处理,得到第二特征图像。
本公开对于卷积层的数量、卷积核尺寸、卷积层的具体结构等不做限定。卷积层用于从不同尺度上提取图像特征并学习深度信息。卷积层可以包括配套的池化层,用于对卷积后的图像进行下采样,以实现信息抽象,增大感受野,同时降低参数复杂度。
当设置多个卷积层时,可以采用逐步卷积与下采样的方式,例如可以使图像按照2倍率下降,直到最后一个卷积层输出第二特征图像,第二特征图像可以是深度神经网络处理过程中尺寸最小的特征图像。
步骤S730,利用转置卷积层对第二特征图像进行转置卷积处理,得到第三特征图像。
本公开对于转置卷积层的数量、转置卷积核尺寸、转置卷积层的具体结构等不做限定。转置卷积层用于对第二特征图像进行上采样,可视为卷积的相反过程,由此恢复图像的尺寸。
当设置多个转置卷积层时,可以采用逐步上采样的方式,例如可以使图像按照2倍率上升,直到最后一个转置卷积层输出第三特征图像。
在一种实施方式中,卷积层与转置卷积层可以是对称的结构,则第三特征图像与第一特征图像的尺寸、通道数相同。
在一种实施方式中,可以在卷积层与转置卷积层之间建立直连,如图6所示,在对应于相同尺寸的特征图像的卷积层与转置卷积层之间建立直连,由此实现卷积环节的特征图像信息直接连接到转置卷积环节中的特征图像,有利于得到信息更为全面的第三特征图像。
步骤S740,利用第二像素重排层对第三特征图像分别进行第二像素重排处理与第三像素重排处理,得到中间人脸图像与待美颜人脸图像的掩膜。
第二像素重排层用于进行第二像素重排处理与第三像素重排处理,第二像素重排处理与第三像素重排处理均可以是减少通道数的重排,例如可以是将第三特征图像的多个通道重排至单通道。
在一种实施方式中,步骤S740包括:
将通道数为C1*n*n的第三特征图像输入第二像素重排层;
将第三特征图像的每n*n个通道中相同位置的像素点重排至单通道中的n*n邻域内,输出通道数为C1的中间人脸图像;
将第三特征图像的每r*r个通道中相同位置的像素点重排至单通道中的r*r邻域内,输出通道数为C2的掩膜;
其中,n表示第二像素重排处理的参数,r表示第三像素重排处理的参数,n与r均为不小于2的正整数,两者可以相同,也可以不同,例如C1=C2时,n=r。第二像素重排处理与第三像素重排处理可以与第一像素重排处理相反。例如,第二像素重排处理与第三像素重排处理可以采用TensorFlow中的depth_to_space函数实现,将第三特征图像中的深度特征转换为空间特征,也可用采用步长为n或r的转置卷积操作实现,此时第二像素重排层可视为特殊的转置卷积层。
如果卷积层与转置卷积层为完全对称的结构,即第三特征图像与第一特征图像的尺寸、通道数相同,则有m=n,则待美颜人脸图像与中间人脸图像的尺寸相同。即深度神经网络的第一美颜处理不改变图像尺寸与通道数。
需要说明的是,深度神经网络的第一美颜处理过程同样不改变人脸的数量。例如待美颜人脸图像是由4张待美颜人脸子图像组合而成,在经过深度神经网络的第一美颜处理后,中间人脸图像中也包括4张人脸,是对4张待美颜人脸子图像中人脸进行美颜后的人脸。
由上可知,本示例性实施方式无需对深度神经网络进行过多的改造或者设置复杂的结构,即可实现第一美颜处理与确定图像掩膜这两方面的任务,从而降低了计算成本。
本示例性实施方式通过对深度神经网络进行训练,使其能够同时实现第一美颜处理后和确定图像掩膜。在一种实施方式中,图像美颜处理方法还包括对深度神经网络的训练过程,参考图8所示,包括以下步骤S810至S830:
步骤S810,获取待美颜样本图像以及待美颜样本图像对应的标注美颜图像与标注掩膜;
步骤S820,将待美颜样本图像输入待训练的深度神经网络,以输出样本美颜图像与样本掩膜;
步骤S830,基于样本美颜图像与标注美颜图像的差别,以及样本掩膜与标注掩膜的差别,更新深度神经网络的参数。
其中,待美颜样本图像可以是各种未经美颜的人脸图像。对于每张待美颜样本图像,可以通过人工美颜修图的方式得到对应的标注美颜图像,人工美颜修图的方式可以与第一美颜处理相对应,包括但不限于祛斑祛痘、祛眼袋、肤色均匀、光影平整、显脏嘴角处理、唇部处理等。例如,第一美颜处理为去瑕疵,则通过对待美颜样本图像进行人工去瑕疵,得到标注美颜图像。此外,通过对待美颜样本图像人工标注出其中预设区域的位置,可以得到对应的标注掩膜。本公开对标注掩膜的具体形式不做限定。例如,可以标注4种预设区域的位置,0表示背景区域,1表示人像区域,2表示脸部皮肤区域,3表示脸部遮挡物区域,并可以采用one-hot(独热)编码的形式,将0转换为0000,1转换为0100,2转换为0010,3转换为0001,以作为标注掩膜,或者将标注的预设区域的信息转换为上述4通道或单通道的掩膜图像,以作为标注掩膜。由此,构建了由待美颜样本图像-标注美颜图像-标注掩膜这样的三元组所形成的美颜图像数据集。
在一种实施方式中,可以将多张人脸图像进行组合,得到一张待美颜样本图像,并可以将该多张人脸图像对应的人工美颜修图后的图像进行组合,以及将该多张人脸图像对应的人工标注的掩膜进行组合,得到该待美颜样本图像对应的标注美颜图像与标注掩膜。换句话说,美颜图像数据集可以包括单人脸的图像、多人脸的图像、组合人脸的图像等不同类型。
可以将美颜图像数据集进一步划分为训练集与验证集。将训练集中的待美颜样本图像输入待训练的深度神经网络,得到样本美颜图像与样本掩膜。由于深度神经网络未经训练,样本美颜图像与标注美颜图像通常存在较大的差别,样本掩膜与标注掩膜通常也存在较大的差别。基于样本美颜图像与标注美颜图像的差别,以及样本掩膜与标注掩膜的差别,可以计算损失函数值。例如可以建立关于样本美颜图像的第一损失函数,以及关于样本掩膜的第二损失函数,将样本美颜图像与标注美颜图像代入第一损失函数,计算第一损失函数值,将样本掩膜与标注掩膜代入第二损失函数,计算第二损失函数值。基于第一损失函数值与第二损失函数值,对深度神经网络的参数进行反向传播更新。当深度神经网络在验证集上的准确率达到设定的标准时,确定训练完成。
由此,在步骤S320中,将待美颜人脸图像输入经过训练的深度神经网络,可以同时输出中间人脸图像与待美颜人脸图像的掩膜。
继续参考图3,在步骤S330中,基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像。
其中,目标图像可以是经过美颜后输出的图像,也可以作为一个美颜阶段输出的图像,并进行进一步的美颜处理,本公开对此不做限定。
由于待美颜人脸图像的掩膜表示了待美颜人脸图像中至少一种预设区域的位置信息,其基本等同于中间人脸图像中预设区域的位置信息,因此可以基于该掩膜,对中间人脸图像中的不同预设区域进行针对性的第二美颜处理。
在一种实施方式中,上述基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像,可以包括以下步骤:
基于待美颜人脸图像的掩膜确定中间人脸图像中的至少一个待处理区域,对该待处理区域进行第二美颜处理,得到目标图像。
其中,第二美颜处理可以包括至少一种具体的美颜功能,每种美颜功能对应于特定的预设区域,即为待处理区域。第二美颜处理的美颜功能可以由用户选择或者系统自动确定。例如,在美颜App中,可以提供所有可选的美颜功能,如磨皮、美白提亮、五官形变、上妆等,用户从中选择磨皮与上妆,则第二美颜处理包括磨皮与上妆这两种美颜功能,磨皮与上妆对应于脸部皮肤区域,则可以将脸部皮肤区域确定为待处理区域。进而,对中间人脸图像中的待处理区域进行第二美颜处理中对应美颜功能的处理,处理后得到目标图像。
在一种实施方式中,待美颜人脸图像的掩膜包括待美颜人脸图像的脸部皮肤掩膜与待美颜人脸图像的脸部遮挡物掩膜。上述基于待美颜人脸图像的掩膜确定中间人脸图像中的至少一个待处理区域,对该待处理区域进行第二美颜处理,得到目标图像,可以包括以下步骤:
基于待美颜人脸图像的脸部皮肤掩膜与待美颜人脸图像的脸部遮挡物掩膜,确定中间人脸图像中的待处理脸部皮肤区域,待处理脸部皮肤区域不包含脸部遮挡物区域;
对中间人脸图像中的上述待处理脸部皮肤区域进行第二美颜处理,得到目标图像。
其中,待处理脸部皮肤区域可以是脸部皮肤区域中不包括脸部遮挡物的部分。在一些待美颜人脸图像中,可能存在手部或其他物品遮挡脸部的情况,例如人做出捧脸、捂嘴等动作的图像,或者佩戴眼镜的图像等,这些遮挡部位通常不需要进行磨皮、上妆等第二美颜处理。通过确定待美颜人脸图像的脸部皮肤掩膜与脸部遮挡物掩膜,可以从脸部皮肤区域中排除掉脸部遮挡物区域,得到待处理脸部皮肤区域。对中间人脸图像中的待处理脸部皮肤区域进行第二美颜处理,使得第二美颜处理的位置更加准确、针对性更强,有利于提升第二美颜处理的效果,得到高质量的目标图像。
在一种实施方式中,如果待美颜人脸图像是根据待美颜全局图像中的待美颜人脸子图像确定的,例如待美颜人脸图像是对待美颜全局图像中的待美颜人脸子图像进行调节处理后生成的,则参考图9所示,上述基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像,可以包括以下步骤S910和S920:
步骤S910,利用中间人脸图像对待美颜全局图像中的待美颜人脸子图像进行替换,得到待美颜全局图像对应的中间全局图像。
其中,在将待美颜全局图像中的待美颜人脸子图像替换为中间人脸图像时,可以对中间人脸图像进行尺寸、方向等的适应性调整。
在一种实施方式中,如果在根据待美颜人脸子图像确定待美颜人脸图像时,对待美颜人脸子图像进行了调节处理,则可以根据调节处理信息对中间人脸图像进行反调节处理,得到美颜人脸子图像。反调节处理是指与上述调节处理完全相反的处理。例如,如果待美颜人脸图像是由待美颜人脸子图像经过变换和组合而生成的,则在得到中间人脸图像后,可以根据调节处理信息中的组合信息对中间人脸图像进行拆分,得到单张人脸的图像。再根据调节处理信息中的变换信息对每张图像进行相反的变换,包括去除填充的像素、上采样、反向旋转90度等,得到与待美颜人脸子图像一一对应的美颜人脸子图像,美颜人脸子图像与待美颜人脸子图像的方向、尺寸等一致,为单张人脸对应的第一美颜处理后的图像。进而,可以将待美颜全局图像中的待美颜人脸子图像替换为对应的美颜人脸子图像,可以进行1:1的原位置替换,从而得到待美颜全局图像对应的中间全局图像,中间全局图像是待美颜全局图像中的人脸经过第一美颜处理后的图像。
步骤S920,基于待美颜人脸图像的掩膜对中间全局图像进行第二美颜处理,得到目标图像。
美颜人脸图像的掩膜包括预设区域的位置信息,将需要进行第二美颜处理的预设区域确定为待处理区域,结合待美颜人脸图像在待美颜全局图像中对应的位置,可以确定待处理区域在待美颜全局图像中的位置,其基本等同于待处理区域在中间全局图像中的位置。由此,可以在中间全局图像中确定待处理区域,进而对中间全局图像中的待处理区域进行第二美颜处理,得到目标图像。
在一种实施方式中,在上述基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理时,可以记录调节处理信息。相应的,参考图10所示,上述基于待美颜人脸图像的掩膜对中间全局图像进行第二美颜处理,得到所述目标图像,可以包括以下步骤S1010和S1020:
步骤S1010,根据调节处理信息对待美颜人脸图像的掩膜进行反调节处理,得到待美颜全局图像的掩膜。
其中,对待美颜人脸图像的掩膜的反调节处理可以参考上述对中间人脸图像的反调节处理。待美颜人脸图像的掩膜用于表示待美颜人脸图像中预设区域的位置信息,通过反调节处理,可以将预设区域对应到待美颜全局图像中,得到预设区域在待美颜全局图像中的位置信息,以待美颜全局图像的掩膜的形式加以表示。
在一种实施方式中,上述根据调节处理信息对待美颜人脸图像的掩膜进行反调节处理,得到待美颜全局图像的掩膜,可以包括以下步骤:
获取与待美颜全局图像对应的初始化掩膜;
根据处理信息对待美颜人脸图像的掩膜进行反调节处理,得到待替换掩膜;
根据待替换掩膜对初始化掩膜进行数值替换,得到待美颜全局图像的掩膜。
其中,初始化掩膜用于对待美颜全局图像的不同区域的信息进行初始化表示。示例性的,可以生成与待美颜全局图像尺寸相同的掩膜,并填充表示空白区域或背景区域的数值(如0、1等预设值),作为初始化掩膜。或者,对待美颜全局图像进行语义分割,将生成的语义分割图像作为初始化掩膜。或者,对待美颜全局图像进行肤色检测,肤色检测可以通过每个像素的像素值(如RGB值)来判断其是否为皮肤像素,从而检测出属于皮肤的像素,得到待美颜全局图像的皮肤掩膜。该皮肤掩膜可以示出待美颜全局图像中的皮肤区域与其他区域(即皮肤以外的区域),可以作为初始化掩膜。
对待美颜人脸图像的掩膜的反调节处理可以参考上述对中间人脸图像的反调节处理。例如,如果待美颜人脸图像是由待美颜人脸子图像经过变换和组合而生成的,则在得到待美颜人脸图像的掩膜后,可以根据调节处理信息中的组合信息对该掩膜进行拆分(即与组合相反的操作),得到单张人脸图像的掩膜。再根据调节处理信息中的变换信息对每张人脸图像的掩膜进行相反的变换,包括去除填充像素对应的区域、上采样、反向旋转90度等,得到待美颜人脸子图像的掩膜,称为待替换掩膜。
再结合待美颜人脸子图像在待美颜全局图像中的位置,将待替换掩膜对应到待美颜全局图像中,确定待替换掩膜在待美颜全局图像中对应的位置,也就是待替换掩膜在上述初始化掩膜中对应的位置,进而以待替换掩膜替换掉初始化掩膜中对应位置的数值,得到待美颜全局图像的掩膜。
在一种实施方式中,待美颜人脸图像的掩膜可以包括待美颜人脸图像的脸部皮肤掩膜与待美颜人脸图像的脸部遮挡物掩膜。相应的,待替换掩膜可以包括待替换脸部皮肤掩膜与待替换脸部遮挡物掩膜。上述根据待替换掩膜对初始化掩膜进行数值替换,得到待美颜全局图像的掩膜,可以包括以下步骤:
根据待替换脸部皮肤掩膜对初始化掩膜中脸部皮肤区域对应的数值进行替换,以及根据待替换脸部遮挡物掩膜对初始化掩膜中脸部遮挡物区域对应的数值进行替换,得到待美颜全局图像的掩膜。
例如,得到待美颜人脸图像的4通道掩膜图像,包括待美颜人脸图像的背景掩膜图像、人像掩膜图像、脸部皮肤掩膜图像、脸部遮挡物掩膜图像。将该4通道掩膜图像进行反调节处理,得到4通道的待替换掩膜图像,包括待替换背景掩膜图像、待替换人像掩膜图像、待替换脸部皮肤掩膜图像、待替换脸部遮挡物掩膜图像。检测在待替换脸部皮肤掩膜图像中取得最大值且为非0值的像素,将初始化掩膜中对应位置的像素替换为脸皮皮肤对应的数值或者该像素在待替换脸部皮肤掩膜图像中的数值,以表示该像素属于脸部皮肤区域。检测在待替换脸部遮挡物掩膜图像中取得最大值且为非0值的像素,将初始化掩膜中对应位置的像素替换为脸皮皮肤对应的数值或者该像素在待替换脸部遮挡物掩膜图像中的数值,以表示该像素属于脸部遮挡物区域。由此,在该初始化掩膜中对脸部皮肤区域与脸部遮挡物区域进行了标记,将进行上述替换后的掩膜作为待美颜全局图像的掩膜。
通过对初始化掩膜进行数值替换的方式,可以在初始化掩膜的基础上进一步准确识别出待美颜全局图像中的预设区域,例如识别出脸部皮肤区域、脸部遮挡物区域等,以便于进行后续的第二美颜处理。由于初始化掩膜采用的相关算法仅能够大致确定待美颜全局图像中的不同区域,例如肤色检测可能将脸部与肤色相近的刘海(如黄头发)、佩戴物等识别为皮肤,利用待替换掩膜对初始化掩膜进行数值替换后,可以排除初始化掩膜中存在的误检测的情况,提高待美颜全局图像的掩膜的准确性。
步骤S1020,基于待美颜全局图像的掩膜对中间全局图像进行第二美颜处理,得到目标图像。
待美颜全局图像的掩膜表示待美颜全局图像中预设区域的位置信息,其基本等同于中间全局图像中预设区域的位置信息,因此可以基于待美颜全局图像的掩膜对中间全局图像进行第二美颜处理,具体来说,对中间全局图像中的待处理区域进行第二美颜处理,得到目标图像。
由上可知,本示例性实施方式可以对待美颜人脸图像进行第一美颜处理,即只对人脸的局部图像进行第一美颜处理,可以对中间全局图像进行第二美颜处理,即对整个全局图像进行第二美颜处理。由于第二美颜处理大多是区域性的处理,在全局图像的尺度上进行处理,有利于提高图像整体的视觉协调感,并且降低处理量。
中间人脸图像是经过第一美颜处理后的图像,有时存在过度处理的情况。在一种实施方式中,为了增加中间人脸图像的真实感,在上述利用中间人脸图像对待美颜全局图像中的待美颜人脸子图像进行替换前,可以利用待美颜人脸子图像对中间人脸图像进行美颜弱化处理。美颜弱化处理是指降低中间人脸图像的美颜程度,以增加自然、真实感。下面提供美颜弱化处理的两种示例性方式:
方式一、根据设定的美颜程度参数,将待美颜人脸子图像融合至中间人脸图像。其中,美颜程度参数可以是特定美颜功能下的美颜力度参数,如去瑕疵程度。本示例性实施方式中,美颜程度参数可以是用于当前设定的参数,系统默认的参数,或者上一次美颜所使用的参数等。在确定美颜程度参数后,可以以美颜程度参数作为比重,将待美颜人脸子图像与中间人脸图像进行融合。举例来说,假设去瑕疵程度的范围为0~100,当前设定的值为a,参考如下公式:
其中,image_blend表示融合后的图像,image_ori表示待美颜人脸子图像,image_deblemish表示中间人脸图像。当a为0时,表示不进行去瑕疵处理,则完全使用待美颜人脸子图像;当a为100时,表示完全去瑕疵处理,则完全使用中间人脸图像。因此,公式(12)表示通过融合,得到介于待美颜人脸子图像与中间人脸图像中间的图像,a越大,所得到的图像越接近于中间人脸图像,即美颜程度越高,美颜效果越明显。
方式二、将待美颜人脸子图像的高频图像融合至中间人脸图像。其中,高频图像是指包含待美颜人脸子图像中细节纹理等高频信息的图像。
在一种实施方式中,可以通过以下方式获取高频图像:
在根据待美颜人脸子图像确定待美颜人脸图像时,如果对待美颜人脸子图像进行下采样,则将下采样后得到的下采样人脸子图像进行上采样,得到上采样人脸子图像;
根据待美颜人脸子图像与上采样人脸子图像的差别,获取待美颜人脸子图像的高频图像。
其中,下采样人脸子图像的分辨率低于待美颜人脸子图像,一般在下采样的过程中,不可避免地会损失图像的高频信息。对下采样人脸子图像进行上采样,使得到的上采样人脸子图像与待美颜人脸子图像的分辨率相同。需要说明的是,如果对待美颜人脸子图像进行下采样前,还进行了旋转,则对下采样人脸子图像进行上采样后,还可以进行反向旋转,使得到的上采样人脸子图像与待美颜人脸子图像的方向也相同。
上采样可以采用双线性插值、最近邻插值等方法。通过上采样虽然能够恢复分辨率,但是难以完全恢复出所损失的高频信息,即上采样人脸子图像可视为待美颜人脸子图像的低频图像。由此,确定待美颜人脸子图像与上采样人脸子图像的差别,例如可以将待美颜人脸子图像与上采样人脸子图像相减,结果为待美颜人脸子图像的高频信息,将相减后的值形成图像,即待美颜人脸子图像的高频图像。
在另一种实施方式中,还可以通过对待美颜人脸子图像进行滤波,以提取高频信息,得到高频图像。
在将上述高频图像融合至中间人脸图像时,可以采用直接相加的方式,将高频图像叠加到中间人脸图像中,使得中间人脸图像中增加细节纹理等高频信息,更具有真实感。
由于待美颜人脸子图像与上采样人脸子图像通常是非常相近的,基于其差值得到的高频图像中,像素值一般较小,如RGB各通道值不超过4。然而,对于待美颜人脸子图像中的突变位置,比如脸上的小黑痣等,其具有强烈的高频信息,因此在高频图像中对应位置的像素值可能比较大。在将高频图像融合至待美颜人脸子图像时,这些位置的像素值可能产生不良影响,例如产生“痣印”等锐利边缘,导致视觉感受不自然。
针对于上述问题,在一种实施方式中,图像美颜处理方法还可以包括以下步骤:
在高频图像中确定瑕疵点;
将高频图像中上述瑕疵点周围预设区域内的像素值调整到预设数值范围内。
其中,瑕疵点是具有强烈高频信息的像素点,可以将高频图像中像素值较大的点确定为瑕疵点。或者,在一种实施方式中,可以通过以下方式确定瑕疵点:
将中间人脸图像(或美颜人脸子图像)与对应的待美颜人脸子图像进行尺寸统一后相减,得到每个像素点的差值;
当判断某个像素点的差值满足预设瑕疵条件时,将该像素点在高频图像中对应的像素点确定为瑕疵点。
其中,预设瑕疵条件用于衡量中间人脸图像与待美颜人脸子图像的差别,以判断每个像素点是否为被去除的瑕疵点。在去瑕疵处理中,通常会将人脸中的小黑痣、痘等去除,并填充人脸肤色,在该位置处,美颜人脸子图像与待美颜人脸子图像的差别很大,因此可以通过设定预设瑕疵条件来甄别瑕疵点。
示例性的,预设瑕疵条件可以包括:各个通道的差值均大于第一颜色差阈值,且各个通道的差值中的至少一个大于第二颜色差阈值。第一颜色差阈值与第二颜色差阈值可以是经验阈值。例如,当上述通道包括RGB时,第一颜色差阈值可以是20,第二颜色差阈值可以是40。由此,得到每个像素点在美颜人脸子图像中与在待美颜人脸子图像中的差值后,对差值中RGB三个通道的具体差值进行判断,判断每个通道的差值是否均大于20,以及其中是否有至少一个通道的差值大于40,当满足这两个条件时,表示满足预设瑕疵条件,则将高频图像中对应位置的像素点确定为瑕疵点。
确定瑕疵点后,可以在高频图像中进一步确定瑕疵点周围的预设区域,例如可以是以瑕疵点为中心的5*5像素区域,具体的尺寸可以根据高频图像的尺寸来确定,本公开不做限定。将预设区域内的像素值调整到预设数值范围内,预设数值范围一般是较小的数值范围,可以根据经验与实际需求确定,在调整时通常需要减小像素值。示例性的,预设数值范围可以是-2~2,而瑕疵点周围的像素值可能超出-5~5,将其调整到-2~2内,实际上进行了限值处理。由此能够弱化“痣印”等锐利边缘,增加视觉上的自然感受。
以上说明了两种美颜弱化处理方式。本示例性实施方式可以同时采用这两种美颜弱化处理方式,例如,先通过方式一进行待美颜人脸子图像与中间人脸图像的融合,在此基础上,再通过方式二将高频图像叠加到其中,得到经过美颜弱化处理的中间人脸图像,该中间人脸图像兼具有较好的美颜效果与真实感。
应当理解,在进行上述任一种方式的融合前,可以对待美颜人脸子图像或中间人脸图像进行尺寸等的适应性处理。示例性的,如果在根据待美颜人脸子图像确定待美颜人脸图像时,对待美颜人脸子图像进行了调节处理,则可以将中间人脸图像进行反调节处理,例如得到与待美颜人脸子图像一一对应的美颜人脸子图像。然后再进行美颜弱化处理,例如,将待美颜人脸子图像融合至美颜人脸子图像,上述公式(12)中的image_deblemish可以表示美颜人脸子图像;或者将待美颜人脸子图像的高频图像融合至美颜人脸子图像。
在一种实施方式中,在利用中间人脸图像对待美颜全局图像中的待美颜人脸子图像进行替换时,可以对位于待美颜全局图像中的未替换区域与中间人脸图像之间的边界区域进行渐变处理,使边界区域形成平滑过渡。
其中,待美颜全局图像中的未替换区域即待美颜全局图像中除待美颜人脸子图像以外的区域。上述未替换区域与中间人脸图像之间的边界区域实际包括两部分:未替换区域中与中间人脸图像相邻的边界区域,以及中间人脸图像中与未替换区域相邻的边界区域。本示例性实施方式可以对其中任一部分进行渐变处理,也可以同时对两部分进行渐变处理。
参考图11所示,可以在中间人脸图像中确定一定比例(如10%)的边界区域,其从美颜人脸子图像的边缘向内延伸。需要注意的是,边界区域通常需要避开人脸部分,以避免渐变处理中改变人脸部分的颜色。例如,通过上述稳定包围盒截取待美颜人脸子图像,使得待美颜人脸子图像中的人脸与边界具有一定的距离,则美颜人脸子图像中的人脸与边界也具有一定的距离,这样在进行渐变处理时,可以较好地避开人脸部分。确定边界区域后,获取边界区域的内边缘颜色,记为第一颜色;获取未替换区域的内边缘颜色,记为第二颜色;再对边界区域进行第一颜色与第二颜色的渐变处理。由此,未替换区域与中间人脸图像的边界处为渐变色区域(图11中的斜线区域),这样形成平滑过渡,防止产生颜色突变,导致视觉感受不和谐。
如果在根据待美颜人脸子图像确定待美颜人脸图像时,对待美颜人脸子图像进行了调节处理,则可以将中间人脸图像进行反调节处理,例如得到与待美颜人脸子图像一一对应的美颜人脸子图像。然后分别将每一张美颜人脸子图像替换掉待美颜全局图像中对应的待美颜人脸子图像,并进行边界区域的渐变处理,得到中间全局图像。
图12示出了图像美颜处理方法的示意性流程,包括:
步骤S1201,获取待美颜全局图像,例如可以将视频中的当前帧图像作为待美颜全局图像。从待美颜全局图像中提取待美颜人脸子图像。
步骤S1202,根据深度神经网络的输入图像尺寸对待美颜人脸子图像进行变换和组合,得到待美颜人脸图像。在变换过程中,保存对待美颜人脸子图像进行下采样后的图像,记为下采样人脸子图像。
步骤S1203,将下采样人脸子图像进行上采样,如果在获取下采样人脸子图像时还进行了旋转、填充等处理,则还可以进行反向旋转、去除填充等处理,得到上采样人脸子图像,其与对应的待美颜人脸子图像的分辨率一致。
步骤S1204,将待美颜人脸子图像与对应的上采样人脸子图像相减,得到待美颜人脸子图像的高频图像。
步骤S1205,将待美颜人脸图像输入深度神经网络,输出经过第一美颜处理后的中间人脸图像,同时输出待美颜人脸图像的掩膜。
步骤S1206,利用变换和组合的调节处理信息,对中间人脸图像进行反调节处理,包括图像拆分与反变换,得到与待美颜人脸子图像一一对应的美颜人脸子图像。
步骤S1207,将美颜人脸子图像与对应的待美颜人脸子图像按照美颜程度参数进行融合,再与该待美颜人脸子图像的高频图像相加,得到待替换人脸子图像。
步骤S1208,将待替换人脸子图像融合至待美颜全局图像,具体地,可以由待替换人脸子图像替换掉待美颜全局图像中的待美颜人脸子图像的部分,并进行边缘的颜色渐变处理,使得待美颜全局图像中的人脸被替换为第一美颜处理后的人脸,得到中间全局图像。
步骤S1209,根据调节处理信息,对待美颜人脸图像的掩膜进行反调节处理,得到待美颜全局图像的掩膜。
步骤S1210,基于待美颜全局图像的掩膜对中间全局图像进行第二美颜处理,得到目标图像。后续还可以对目标图像进行其他方面的美颜处理。
本公开的示例性实施方式还提供一种图像美颜处理装置。参考图13所示,该图像美颜处理装置1300可以包括:
图像获取模块1310,被配置为获取待美颜人脸图像;
第一美颜处理模块1320,被配置为通过预先训练的深度神经网络对待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过深度神经网络确定待美颜人脸图像的掩膜;
第二美颜处理模块1330,被配置为基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像。
在一种实施方式中,深度神经网络包括第一像素重排层、至少一个卷积层、至少一个转置卷积层、第二像素重排层。上述通过预先训练的深度神经网络对待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过深度神经网络确定待美颜人脸图像的掩膜,包括:
利用第一像素重排层对待美颜人脸图像进行由第一像素重排处理,得到第一特征图像;
利用卷积层对第一特征图像进行卷积处理,得到第二特征图像;
利用转置卷积层对第二特征图像进行转置卷积处理,得到第三特征图像;
利用第二像素重排层对第三特征图像分别进行第二像素重排处理与第三像素重排处理,得到中间人脸图像与待美颜人脸图像的掩膜。
在一种实施方式中,图像美颜处理装置1300还可以包括深度神经网络训练模块,被配置为:
获取待美颜样本图像以及待美颜样本图像对应的标注美颜图像与标注掩膜;
将待美颜样本图像输入待训练的深度神经网络,以输出样本美颜图像与样本掩膜;
基于样本美颜图像与标注美颜图像的差别,以及样本掩膜与标注掩膜的差别,更新深度神经网络的参数。
在一种实施方式中,待美颜人脸图像的掩膜用于表示待美颜人脸图像中至少一种预设区域的位置信息。上述基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像,包括:
基于待美颜人脸图像的掩膜确定中间人脸图像中的至少一个待处理区域,对待处理区域进行第二美颜处理,得到目标图像。
在一种实施方式中,待美颜人脸图像的掩膜包括待美颜人脸图像的脸部皮肤掩膜与待美颜人脸图像的脸部遮挡物掩膜。上述基于待美颜人脸图像的掩膜确定中间人脸图像中的至少一个待处理区域,对待处理区域进行第二美颜处理,得到目标图像,包括:
基于待美颜人脸图像的脸部皮肤掩膜与待美颜人脸图像的脸部遮挡物掩膜,确定中间人脸图像中的待处理脸部皮肤区域,待处理脸部皮肤区域不包含脸部遮挡物区域;
对中间人脸图像中的待处理脸部皮肤区域进行第二美颜处理,得到目标图像。
在一种实施方式中,上述获取待美颜人脸图像,包括:
从待美颜全局图像中提取一张或多张待美颜人脸子图像,根据待美颜人脸子图像确定待美颜人脸图像;
基于待美颜人脸图像的掩膜对中间人脸图像进行第二美颜处理,得到目标图像,包括:
利用中间人脸图像对待美颜全局图像中的待美颜人脸子图像进行替换,得到待美颜全局图像对应的中间全局图像;
基于待美颜人脸图像的掩膜对中间全局图像进行第二美颜处理,得到目标图像。
在一种实施方式中,上述根据待美颜人脸子图像确定待美颜人脸图像,包括:
基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理,生成待美颜人脸图像,调节处理包括变换和/或组合。
在一种实施方式中,上述基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理,生成待美颜人脸图像,包括:
根据待美颜人脸子图像的数量,将输入图像尺寸分割为与待美颜人脸子图像一一对应的子图像尺寸;
分别基于每个子图像尺寸将对应的待美颜人脸子图像进行变换;
将变换后的待美颜人脸子图像进行组合,生成待美颜人脸图像。
在一种实施方式中,上述分别基于每个子图像尺寸将对应的待美颜人脸子图像进行变换,包括以下任意一条或多条:
当待美颜人脸子图像的宽度与高度的大小关系与子图像尺寸的宽度与高度的大小关系不同时,将待美颜人脸子图像旋转90度;
当待美颜人脸子图像或者经过旋转的待美颜人脸子图像的尺寸大于子图像尺寸时,根据子图像尺寸将待美颜人脸子图像或者经过旋转的待美颜人脸子图像进行下采样;
当待美颜人脸子图像或者经过旋转与下采样中至少一种处理的待美颜人脸子图像的尺寸小于子图像尺寸时,根据待美颜人脸子图像的尺寸与子图像尺寸的差值将待美颜人脸子图像进行填充,或者根据经过旋转与下采样中至少一种处理的待美颜人脸子图像的尺寸与子图像尺寸的差值将经过旋转与下采样中至少一种处理的待美颜人脸子图像进行填充。
在一种实施方式中,上述在基于深度神经网络的输入图像尺寸将待美颜人脸子图像进行调节处理时,记录调节处理信息。上述基于待美颜人脸图像的掩膜对中间全局图像进行第二美颜处理,得到目标图像,包括:
根据调节处理信息对待美颜人脸图像的掩膜进行反调节处理,得到待美颜全局图像的掩膜;
基于待美颜全局图像的掩膜对中间全局图像进行第二美颜处理,得到目标图像。
在一种实施方式中,上述根据调节处理信息对待美颜人脸图像的掩膜进行反调节处理,得到待美颜全局图像的掩膜,包括:
获取与待美颜全局图像对应的初始化掩膜;
根据调节处理信息对待美颜人脸图像的掩膜进行反调节处理,得到待替换掩膜;
根据待替换掩膜对初始化掩膜进行数值替换,得到待美颜全局图像的掩膜。
在一种实施方式中,上述获取与待美颜全局图像对应的初始化掩膜,包括:
对待美颜全局图像进行肤色检测,得到待美颜全局图像的皮肤掩膜,以作为初始化掩膜。
在一种实施方式中,待美颜人脸图像的掩膜包括待美颜人脸图像的脸部皮肤掩膜与待美颜人脸图像的脸部遮挡物掩膜;待替换掩膜包括待替换脸部皮肤掩膜与待替换脸部遮挡物掩膜。上述根据待替换掩膜对初始化掩膜进行数值替换,得到待美颜全局图像的掩膜,包括:
根据待替换脸部皮肤掩膜对初始化掩膜中脸部皮肤区域对应的数值进行替换,以及根据待替换脸部遮挡物掩膜对初始化掩膜中脸部遮挡物区域对应的数值进行替换,得到待美颜全局图像的掩膜。
在一种实施方式中,第二美颜处理模块1330,还被配置为:
在利用中间人脸图像对待美颜全局图像中的待美颜人脸子图像进行替换前,利用待美颜人脸子图像对中间人脸图像进行美颜弱化处理。
在一种实施方式中,上述利用待美颜人脸子图像对中间人脸图像进行美颜弱化处理,包括:
根据设定的美颜程度参数,将待美颜人脸子图像融合至中间人脸图像。
在一种实施方式中,上述利用待美颜人脸子图像对美颜人脸子图像进行美颜弱化处理,包括:
将待美颜人脸子图像的高频图像融合至中间人脸图像。
在一种实施方式中,图像获取模块1310,还被配置为:
在根据待美颜人脸子图像确定待美颜人脸图像时,如果对待美颜人脸子图像进行下采样,则将下采样后得到的下采样人脸子图像进行上采样,得到上采样人脸子图像,上采样人脸子图像与待美颜人脸子图像的分辨率相同;
根据待美颜人脸子图像与上采样人脸子图像的差别,获取待美颜人脸子图像的高频图像。
在一种实施方式中,第二美颜处理模块1330,还被配置为:
在将待美颜人脸子图像的高频图像融合至美颜人脸子图像前,在高频图像中确定瑕疵点,以及将高频图像中瑕疵点周围预设区域内的像素值调整到预设数值范围内。
在一种实施方式中,第二美颜处理模块1330,还被配置为:
在利用中间人脸图像对待美颜全局图像中的待美颜人脸子图像进行替换时,对位于待美颜全局图像中的未替换区域与中间人脸图像之间的边界区域进行渐变处理,使边界区域形成平滑过渡。
上述装置中各部分的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。在一种实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。
Claims (22)
1.一种图像美颜处理方法,其特征在于,包括:
获取待美颜人脸图像;
通过预先训练的深度神经网络对所述待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过所述深度神经网络确定所述待美颜人脸图像的掩膜;
基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像。
2.根据权利要求1所述的方法,其特征在于,所述深度神经网络包括第一像素重排层、至少一个卷积层、至少一个转置卷积层、第二像素重排层;所述通过预先训练的深度神经网络对所述待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过所述深度神经网络确定所述待美颜人脸图像的掩膜,包括:
利用所述第一像素重排层对所述待美颜人脸图像进行第一像素重排处理,得到第一特征图像;
利用所述卷积层对所述第一特征图像进行卷积处理,得到第二特征图像;
利用所述转置卷积层对所述第二特征图像进行转置卷积处理,得到第三特征图像;
利用所述第二像素重排层对所述第三特征图像分别进行第二像素重排处理与第三像素重排处理,得到所述中间人脸图像与所述待美颜人脸图像的掩膜。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取待美颜样本图像以及所述待美颜样本图像对应的标注美颜图像与标注掩膜;
将所述待美颜样本图像输入待训练的所述深度神经网络,以输出样本美颜图像与样本掩膜;
基于所述样本美颜图像与所述标注美颜图像的差别,以及所述样本掩膜与所述标注掩膜的差别,更新所述深度神经网络的参数。
4.根据权利要求1所述的方法,其特征在于,所述待美颜人脸图像的掩膜用于表示所述待美颜人脸图像中至少一种预设区域的位置信息;所述基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像,包括:
基于所述待美颜人脸图像的掩膜确定所述中间人脸图像中的至少一个待处理区域,对所述待处理区域进行第二美颜处理,得到目标图像。
5.根据权利要求4所述的方法,其特征在于,所述待美颜人脸图像的掩膜包括所述待美颜人脸图像的脸部皮肤掩膜与所述待美颜人脸图像的脸部遮挡物掩膜;所述基于所述待美颜人脸图像的掩膜确定所述中间人脸图像中的至少一个待处理区域,对所述待处理区域进行第二美颜处理,得到目标图像,包括:
基于所述待美颜人脸图像的脸部皮肤掩膜与所述待美颜人脸图像的脸部遮挡物掩膜,确定所述中间人脸图像中的待处理脸部皮肤区域,所述待处理脸部皮肤区域不包含脸部遮挡物区域;
对所述中间人脸图像中的所述待处理脸部皮肤区域进行第二美颜处理,得到所述目标图像。
6.根据权利要求1所述的方法,其特征在于,所述获取待美颜人脸图像,包括:
从待美颜全局图像中提取一张或多张待美颜人脸子图像,根据所述待美颜人脸子图像确定所述待美颜人脸图像;
所述基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像,包括:
利用所述中间人脸图像对所述待美颜全局图像中的待美颜人脸子图像进行替换,得到所述待美颜全局图像对应的中间全局图像;
基于所述待美颜人脸图像的掩膜对所述中间全局图像进行第二美颜处理,得到所述目标图像。
7.根据权利要求6所述的方法,其特征在于,所述根据所述待美颜人脸子图像确定所述待美颜人脸图像,包括:
基于所述深度神经网络的输入图像尺寸将所述待美颜人脸子图像进行调节处理,生成所述待美颜人脸图像,所述调节处理包括变换和/或组合。
8.根据权利要求7所述的方法,其特征在于,所述基于所述深度神经网络的输入图像尺寸将所述待美颜人脸子图像进行调节处理,生成所述待美颜人脸图像,包括:
根据所述待美颜人脸子图像的数量,将所述输入图像尺寸分割为与所述待美颜人脸子图像一一对应的子图像尺寸;
分别基于每个子图像尺寸将对应的所述待美颜人脸子图像进行变换;
将变换后的所述待美颜人脸子图像进行组合,生成所述待美颜人脸图像。
9.根据权利要求8所述的方法,其特征在于,所述分别基于每个子图像尺寸将对应的所述待美颜人脸子图像进行变换,包括以下任意一条或多条:
当所述待美颜人脸子图像的宽度与高度的大小关系与所述子图像尺寸的宽度与高度的大小关系不同时,将所述待美颜人脸子图像旋转90度;
当所述待美颜人脸子图像或者经过旋转的待美颜人脸子图像的尺寸大于所述子图像尺寸时,根据所述子图像尺寸将所述待美颜人脸子图像或者所述经过旋转的待美颜人脸子图像进行下采样;
当所述待美颜人脸子图像或者经过旋转与下采样中至少一种处理的待美颜人脸子图像的尺寸小于所述子图像尺寸时,根据所述待美颜人脸子图像的尺寸与所述子图像尺寸的差值将所述待美颜人脸子图像进行填充,或者根据所述经过旋转与下采样中至少一种处理的待美颜人脸子图像的尺寸与所述子图像尺寸的差值将所述经过旋转与下采样中至少一种处理的待美颜人脸子图像进行填充。
10.根据权利要求7所述的方法,其特征在于,在基于所述深度神经网络的输入图像尺寸将所述待美颜人脸子图像进行调节处理时,记录调节处理信息;所述基于所述待美颜人脸图像的掩膜对所述中间全局图像进行第二美颜处理,得到所述目标图像,包括:
根据所述调节处理信息对所述待美颜人脸图像的掩膜进行反调节处理,得到所述待美颜全局图像的掩膜;
基于所述待美颜全局图像的掩膜对所述中间全局图像进行第二美颜处理,得到所述目标图像。
11.根据权利要求10所述的方法,其特征在于,所述根据所述调节处理信息对所述待美颜人脸图像的掩膜进行反调节处理,得到所述待美颜全局图像的掩膜,包括:
获取与所述待美颜全局图像对应的初始化掩膜;
根据所述调节处理信息对所述待美颜人脸图像的掩膜进行反调节处理,得到待替换掩膜;
根据所述待替换掩膜对所述初始化掩膜进行数值替换,得到所述待美颜全局图像的掩膜。
12.根据权利要求11所述的方法,其特征在于,所述获取与所述待美颜全局图像对应的初始化掩膜,包括:
对所述待美颜全局图像进行肤色检测,得到所述待美颜全局图像的皮肤掩膜,以作为所述初始化掩膜。
13.根据权利要求11所述的方法,其特征在于,所述待美颜人脸图像的掩膜包括所述待美颜人脸图像的脸部皮肤掩膜与所述待美颜人脸图像的脸部遮挡物掩膜;所述待替换掩膜包括待替换脸部皮肤掩膜与待替换脸部遮挡物掩膜;所述根据所述待替换掩膜对所述初始化掩膜进行数值替换,得到所述待美颜全局图像的掩膜,包括:
根据所述待替换脸部皮肤掩膜对所述初始化掩膜中脸部皮肤区域对应的数值进行替换,以及根据所述待替换脸部遮挡物掩膜对所述初始化掩膜中脸部遮挡物区域对应的数值进行替换,得到所述待美颜全局图像的掩膜。
14.根据权利要求6所述的方法,其特征在于,在利用所述中间人脸图像对所述待美颜全局图像中的待美颜人脸子图像进行替换前,所述方法还包括:
利用所述待美颜人脸子图像对所述中间人脸图像进行美颜弱化处理。
15.根据权利要求14所述的方法,其特征在于,所述利用所述待美颜人脸子图像对所述中间人脸图像进行美颜弱化处理,包括:
根据设定的美颜程度参数,将所述待美颜人脸子图像融合至所述中间人脸图像。
16.根据权利要求14所述的方法,其特征在于,所述利用所述待美颜人脸子图像对所述美颜人脸子图像进行美颜弱化处理,包括:
将所述待美颜人脸子图像的高频图像融合至所述中间人脸图像。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
在根据所述待美颜人脸子图像确定所述待美颜人脸图像时,如果对所述待美颜人脸子图像进行下采样,则将下采样后得到的下采样人脸子图像进行上采样,得到上采样人脸子图像,所述上采样人脸子图像与所述待美颜人脸子图像的分辨率相同;
根据所述待美颜人脸子图像与所述上采样人脸子图像的差别,获取所述待美颜人脸子图像的高频图像。
18.根据权利要求16所述的方法,其特征在于,在将所述待美颜人脸子图像的高频图像融合至所述美颜人脸子图像前,所述方法还包括:
在所述高频图像中确定瑕疵点;
将所述高频图像中所述瑕疵点周围预设区域内的像素值调整到预设数值范围内。
19.根据权利要求6所述的方法,其特征在于,在利用所述中间人脸图像对所述待美颜全局图像中的待美颜人脸子图像进行替换时,所述方法还包括:
对位于所述待美颜全局图像中的未替换区域与所述中间人脸图像之间的边界区域进行渐变处理,使所述边界区域形成平滑过渡。
20.一种图像美颜处理装置,其特征在于,包括:
图像获取模块,被配置为获取待美颜人脸图像;
第一美颜处理模块,被配置为通过预先训练的深度神经网络对所述待美颜人脸图像进行第一美颜处理,得到中间人脸图像,并通过所述深度神经网络确定所述待美颜人脸图像的掩膜;
第二美颜处理模块,被配置为基于所述待美颜人脸图像的掩膜对所述中间人脸图像进行第二美颜处理,得到目标图像。
21.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至19任一项所述的方法。
22.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至19任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111362233.2A CN114049278A (zh) | 2021-11-17 | 2021-11-17 | 图像美颜处理方法、装置、存储介质与电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111362233.2A CN114049278A (zh) | 2021-11-17 | 2021-11-17 | 图像美颜处理方法、装置、存储介质与电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114049278A true CN114049278A (zh) | 2022-02-15 |
Family
ID=80209827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111362233.2A Pending CN114049278A (zh) | 2021-11-17 | 2021-11-17 | 图像美颜处理方法、装置、存储介质与电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114049278A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022206202A1 (zh) * | 2021-03-29 | 2022-10-06 | Oppo广东移动通信有限公司 | 图像美颜处理方法、装置、存储介质与电子设备 |
WO2023284401A1 (zh) * | 2021-07-14 | 2023-01-19 | Oppo广东移动通信有限公司 | 图像美颜处理方法、装置、存储介质与电子设备 |
WO2024103190A1 (en) * | 2022-11-17 | 2024-05-23 | Monsters Aliens Robots Zombies Inc. | Method and system for image processing across multiple frames using machine learning |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108428214A (zh) * | 2017-02-13 | 2018-08-21 | 阿里巴巴集团控股有限公司 | 一种图像处理方法及装置 |
CN112633252A (zh) * | 2021-01-09 | 2021-04-09 | 浙江臻享网络科技有限公司 | 一种证件照标准化处理方法及装置 |
CN112669197A (zh) * | 2019-10-16 | 2021-04-16 | 顺丰科技有限公司 | 图像处理方法、装置、移动终端及存储介质 |
CN112884637A (zh) * | 2021-01-29 | 2021-06-01 | 北京市商汤科技开发有限公司 | 特效生成方法、装置、设备及存储介质 |
CN113538274A (zh) * | 2021-07-14 | 2021-10-22 | Oppo广东移动通信有限公司 | 图像美颜处理方法、装置、存储介质与电子设备 |
-
2021
- 2021-11-17 CN CN202111362233.2A patent/CN114049278A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108428214A (zh) * | 2017-02-13 | 2018-08-21 | 阿里巴巴集团控股有限公司 | 一种图像处理方法及装置 |
CN112669197A (zh) * | 2019-10-16 | 2021-04-16 | 顺丰科技有限公司 | 图像处理方法、装置、移动终端及存储介质 |
CN112633252A (zh) * | 2021-01-09 | 2021-04-09 | 浙江臻享网络科技有限公司 | 一种证件照标准化处理方法及装置 |
CN112884637A (zh) * | 2021-01-29 | 2021-06-01 | 北京市商汤科技开发有限公司 | 特效生成方法、装置、设备及存储介质 |
CN113538274A (zh) * | 2021-07-14 | 2021-10-22 | Oppo广东移动通信有限公司 | 图像美颜处理方法、装置、存储介质与电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022206202A1 (zh) * | 2021-03-29 | 2022-10-06 | Oppo广东移动通信有限公司 | 图像美颜处理方法、装置、存储介质与电子设备 |
WO2023284401A1 (zh) * | 2021-07-14 | 2023-01-19 | Oppo广东移动通信有限公司 | 图像美颜处理方法、装置、存储介质与电子设备 |
WO2024103190A1 (en) * | 2022-11-17 | 2024-05-23 | Monsters Aliens Robots Zombies Inc. | Method and system for image processing across multiple frames using machine learning |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112330574B (zh) | 人像修复方法、装置、电子设备及计算机存储介质 | |
CN114049278A (zh) | 图像美颜处理方法、装置、存储介质与电子设备 | |
WO2022206202A1 (zh) | 图像美颜处理方法、装置、存储介质与电子设备 | |
CN112598579B (zh) | 面向监控场景的图像超分辨率方法、装置及存储介质 | |
WO2023284401A1 (zh) | 图像美颜处理方法、装置、存储介质与电子设备 | |
US10991150B2 (en) | View generation from a single image using fully convolutional neural networks | |
CN113902611A (zh) | 图像美颜处理方法、装置、存储介质与电子设备 | |
US20210150287A1 (en) | Apparatus and method of using ai metadata related to image quality | |
US20230051960A1 (en) | Coding scheme for video data using down-sampling/up-sampling and non-linear filter for depth map | |
JP2003018398A (ja) | ピクセル画像から超解像度画像を生成する方法 | |
CN114723760B (zh) | 人像分割模型的训练方法、装置及人像分割方法、装置 | |
CN114565532A (zh) | 视频美颜处理方法、装置、存储介质与电子设备 | |
CN112233041B (zh) | 图像美颜处理方法、装置、存储介质与电子设备 | |
JP2017527011A (ja) | イメージをアップスケーリングする方法及び装置 | |
CN115063303A (zh) | 一种基于图像修复的图像3d化方法 | |
CN110390657A (zh) | 一种图像融合方法 | |
Liu et al. | Arbitrary-scale super-resolution via deep learning: A comprehensive survey | |
CN116612263B (zh) | 一种感知潜视觉合成一致性动态拟合的方法及装置 | |
CN114972096A (zh) | 人脸图像优化方法及装置、存储介质及电子设备 | |
CN115311145B (zh) | 图像处理方法及装置、电子设备、存储介质 | |
CN115330633A (zh) | 图像色调映射方法及装置、电子设备、存储介质 | |
CN115187488A (zh) | 图像处理方法及装置、电子设备、存储介质 | |
TW200820744A (en) | Image encoding method and image encoding apparatus | |
CN116711301A (zh) | 虚拟视点生成、渲染、解码方法及装置、设备、存储介质 | |
CN115082349A (zh) | 图像美颜处理方法、装置、存储介质与电子设备 |
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 |