CN113343931A - 生成对抗网络的训练方法、图像视线校正方法与装置 - Google Patents
生成对抗网络的训练方法、图像视线校正方法与装置 Download PDFInfo
- Publication number
- CN113343931A CN113343931A CN202110758908.9A CN202110758908A CN113343931A CN 113343931 A CN113343931 A CN 113343931A CN 202110758908 A CN202110758908 A CN 202110758908A CN 113343931 A CN113343931 A CN 113343931A
- Authority
- CN
- China
- Prior art keywords
- image
- eye
- label
- discriminator
- generator
- 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
- 238000012937 correction Methods 0.000 title claims abstract description 236
- 238000012549 training Methods 0.000 title claims abstract description 213
- 238000000034 method Methods 0.000 title claims abstract description 83
- 230000004438 eyesight Effects 0.000 claims abstract description 17
- 210000001508 eye Anatomy 0.000 claims description 548
- 238000012545 processing Methods 0.000 claims description 17
- 230000036040 emmetropia Effects 0.000 claims description 15
- 230000003042 antagnostic effect Effects 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims description 12
- 230000000007 visual effect Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 9
- 230000006870 function Effects 0.000 description 135
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 210000005252 bulbus oculi Anatomy 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 210000000887 face Anatomy 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 210000004709 eyebrow Anatomy 0.000 description 2
- 210000001061 forehead Anatomy 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 210000003491 skin Anatomy 0.000 description 2
- 208000004350 Strabismus Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000004309 orthophoria Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本公开提供了用于视线校正的生成对抗网络的训练方法、图像视线校正方法、装置、存储介质与电子设备,涉及计算机视觉技术领域。该训练方法包括:获取多张人脸样本图像;将人脸样本图像去除眼部区域后输入生成器,通过生成器输出视线校正样本图像;基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;基于人脸样本图像与视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;根据正视标签图像、非正视标签图像与视线校正样本图像训练生成器与第一判别器,根据真实眼部标签图像与非真实眼部标签图像训练生成器与第二判别器。本公开具有较优的视线校正效果。
Description
技术领域
本公开涉及计算机视觉技术领域,尤其涉及用于视线校正的生成对抗网络的训练方法、图像视线校正方法、用于视线校正的生成对抗网络的训练装置、图像视线校正装置、计算机可读存储介质与电子设备。
背景技术
视线校正是指对包含人脸的图像或视频进行处理,改变画面中人眼的视线方向。
例如,在用户A与用户B进行视频通话的场景中,A在注视屏幕的同时,被摄像头捕捉到自己的画面并传送到B的屏幕上。由于A的视线聚焦于屏幕中央而非摄像头,而屏幕中央与摄像头的位置不一致,因此B所看到的画面中,A并不是在看向B而是在看其他方向。如智能手机的前置摄像头一般位于屏幕上方,这样B所看到的A是向下看的。心理学、社会学等相关研究表明,这样缺乏眼神交流的沟通容易减弱人的被关注感,影响沟通效果。
又例如,在自拍场景中,用户需要在拍摄时观察屏幕中的预览图像,这样也会导致拍摄出非正视(即眼睛未看向正前方)的图像,影响美感。
发明内容
本公开提供了用于视线校正的生成对抗网络的训练方法、图像视线校正方法、用于视线校正的生成对抗网络的训练装置、图像视线校正装置、计算机可读存储介质与电子设备,进而至少在一定程度上提升视线校正的效果。
根据本公开的第一方面,提供一种用于视线校正的生成对抗网络的训练方法,所述生成对抗网络包括生成器、第一判别器与第二判别器;所述方法包括:获取多张人脸样本图像;将所述人脸样本图像去除眼部区域后输入所述生成器,通过所述生成器输出视线校正样本图像;基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;所述正视人脸样本图像为眼睛正视前方的所述人脸样本图像,所述非正视人脸样本图像为眼睛未正视前方的所述人脸样本图像;基于所述人脸样本图像与所述视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器。
根据本公开的第二方面,提供一种图像视线校正方法,包括:获取待处理人脸图像,以及获取根据上述第一方面的训练方法所训练的生成对抗网络中的生成器;将所述待处理人脸图像去除眼部区域后输入所述生成器,通过所述生成器输出所述待处理人脸图像对应的视线校正图像。
根据本公开的第三方面,提供一种图像视线校正方法,包括:获取待处理人脸图像;将所述待处理人脸图像去除眼部区域,并基于去除眼部区域后的所述待处理人脸图像生成视线校正图像;当判别所述视线校正图像为眼睛正视前方的图像,且所述视线校正图像中的眼睛为真实眼睛时,输出所述视线校正图像。
根据本公开的第四方面,提供一种用于视线校正的生成对抗网络的训练装置,所述生成对抗网络包括生成器、第一判别器与第二判别器;所述装置包括:图像获取模块,被配置为获取多张人脸样本图像;图像生成模块,被配置为将所述人脸样本图像去除眼部区域后输入所述生成器,通过所述生成器输出视线校正样本图像;第一提取模块,被配置为基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;所述正视人脸样本图像为眼睛正视前方的所述人脸样本图像,所述非正视人脸样本图像为眼睛未正视前方的所述人脸样本图像;第二提取模块,被配置为基于所述人脸样本图像与所述视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;网络训练模块,被配置为根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器。
根据本公开的第五方面,提供一种图像视线校正装置,包括:图像获取模块,被配置为获取待处理人脸图像,以及获取根据上述第一方面的训练方法所训练的生成对抗网络中的生成器;图像生成模块,被配置为将所述待处理人脸图像去除眼部区域后输入所述生成器,通过所述生成器输出所述待处理人脸图像对应的视线校正图像。
根据本公开的第六方面,提供一种图像视线校正装置,包括:图像获取模块,被配置为获取待处理人脸图像;图像生成模块,被配置为将所述待处理人脸图像去除眼部区域,并基于去除眼部区域后的所述待处理人脸图像生成视线校正图像;图像判别模块,被配置为当判别所述视线校正图像为眼睛正视前方的图像,且所述视线校正图像中的眼睛为真实眼睛时,输出所述视线校正图像。
根据本公开的第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的训练方法或者上述第二或第三方面的图像视线校正方法。
根据本公开的第八方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述第一方面的训练方法或者上述第二或第三方面的图像视线校正方法。
本公开的技术方案具有以下有益效果:
提供了一种用于视线校正的生成对抗网络及其训练方法,通过对第一判别器的训练,使第一判别器能够判别图像中的眼睛视线是否为正,通过对第二判别器的训练,使第二判别器能够判别图像中的眼睛是否真实,通过对生成器的训练,使生成器能够生成眼睛视线为正、且具有真实感的图像,从而得到具有视线校正功能的生成对抗网络。进一步的,利用该生成对抗网络对待处理人脸图像去除眼部区域后进行处理,生成眼睛为正视的视线校正图像,能够覆盖到实际应用中各种环境、各种状态下的人脸,使得本方案具有较优的视线校正效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
图1示出本示例性实施方式中一种系统架构的示意图;
图2示出本示例性实施方式中一种电子设备的结构示意图;
图3示出本示例性实施方式中一种用于视线校正的生成对抗网络的训练方法的流程图;
图4示出本示例性实施方式中提取正视标签图像与非正视标签图像的示意图;
图5示出本示例性实施方式中去除眼部区域的示意图;
图6示出本示例性实施方式中一种生成对抗网络的示意性架构图;
图7示出本示例性实施方式中一种训练第一判别器与生成器的流程图;
图8示出本示例性实施方式中一种训练第二判别器与生成器的流程图;
图9示出本示例性实施方式中一种训练第一判别器、第二判别器与生成器的流程图;
图10示出本示例性实施方式中一种训练第三判别器与生成器的流程图;
图11示出本示例性实施方式中另一种生成对抗网络的示意性架构图;
图12示出本示例性实施方式中另一种训练第三判别器与生成器的流程图;
图13示出本示例性实施方式中一种训练第一判别器、第二判别器、第三判别器与生成器的流程图;
图14示出本示例性实施方式中一种图像视线校正方法的流程图;
图15示出本示例性实施方式中另一种图像视线校正方法的流程图;
图16示出本示例性实施方式中一种用于视线校正的生成对抗网络的训练装置的结构示意图;
图17示出本示例性实施方式中一种图像视线校正装置的结构示意图;
图18示出本示例性实施方式中另一种图像视线校正装置的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
相关技术的一种方案中,预先获取非正视人脸图像与正视人脸图像中的眼部区域像素点的对应关系,得到码表(或码书);在使用码表时,先对待处理图像中人物头部姿态、视线方向做出估计,再在码表中查询匹配的校正向量,由此对待处理图像中的眼部区域进行偏移,以完成视线校正。然而,码表的大小是有限的,难以刻画实际情况下的多样性,可能对一些状态的人脸图像无法查询到匹配度较高的校正向量,也可能将不同状态的人脸眼部校正为相似的结果,真实性较差,从而影响视线校正的效果;并且,码表校正的方式还容易导致误差的逐级累积,同样影响视线校正的效果。
鉴于上述问题,本公开的示例性实施方式提供一种图像视线校正方法,基于生成对抗网络来实现视线校正。以及,为了得到该生成对抗网络,本公开的示例性实施方式还提供一种用于视线校正的生成对抗网络的训练方法。
下面先对本示例性实施方式运行环境的系统架构以及应用场景进行介绍。
图1示出了系统架构的示意图,该系统架构100可以包括终端110与服务端120。其中,终端110可以是智能手机、平板电脑、笔记本电脑、数码相机等终端设备,服务端120可以是提供图像处理相关服务的一台服务器,或者多台服务器形成的集群。终端110与服务端120之间可以通过有线或无线的通信链路形成连接,以进行数据交互。
在一种实施方式中,可以由服务端120执行上述生成对抗网络的训练方法,并将经过训练的生成对抗网络(或者生成对抗网络中的生成器)发送至终端110。终端110存储生成对抗网络,后续可以基于该生成对抗网络执行上述图像视线校正方法,例如终端110拍摄图像后,可以对图像进行视线校正,或者终端110在进行视频通话时,可以对所拍摄的视频进行视线校正,也可以对接收的对方的视频进行视线校正。
在一种实施方式中,生成对抗网络也可以完全部署在服务端120。终端110将需要视线校正的图像或视频发送至服务端120,由服务端120执行上述图像视线校正方法。例如,两台终端110进行视频通话时,每一方发送的视频均由服务端120进行视线校正后再传送至另一方。需要说明的是,在服务端120中,可以由具体不同的服务器分别执行上述生成对抗网络的训练方法与上述图像视线校正方法。
在一种实施方式中,也可以完全由终端110执行上述生成对抗网络的训练方法与上述图像视线校正方法。
本公开的示例性实施方式还提供一种用于执行上述生成对抗网络的训练方法或上述图像视线校正方法的电子设备,该电子设备可以是上述终端110或服务端120。下面参考图2对该电子设备进行说明。应当理解,图2显示的电子设备200仅仅是一个示例,不应对本公开实施方式的功能和使用范围带来任何限制。
如图2所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括处理单元210和存储单元220)的总线230。
其中,存储单元存储有程序代码,程序代码可以被处理单元210执行,使得处理单元210执行上述三维模型的语义生成方法。
存储单元220可以包括易失性存储单元,例如随机存取存储单元(RAM)221和/或高速缓存存储单元222,还可以进一步包括只读存储单元(ROM)223。
存储单元220还可以包括具有一组(至少一个)程序模块225的程序/实用工具224,这样的程序模块225包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以包括数据总线、地址总线和控制总线。
电子设备200也可以与一个或多个外部设备260(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(I/O)接口240进行。电子设备200还可以通过网络适配器250与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图2所示,网络适配器250通过总线230与电子设备200的其它模块通信。应当理解,尽管图2中未示出,可以在电子设备200中设置其它硬件和/或软件模块,包括但不限于:显示器、微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
本示例性实施方式中,生成对抗网络包括生成器与至少两个判别器,该至少两个判别器包括第一判别器与第二判别器。图3示出了生成对抗网络的训练方法的示例性流程,可以包括:
步骤S310,获取多张人脸样本图像;
步骤S320,将人脸样本图像去除眼部区域后输入生成器,通过生成器输出视线校正样本图像;
步骤S330,基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;
步骤S340,基于人脸样本图像与视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;
步骤S350,根据正视标签图像、非正视标签图像与视线校正样本图像训练生成器与第一判别器,根据真实眼部标签图像与非真实眼部标签图像训练生成器与第二判别器。
其中,正视人脸样本图像为眼睛正视前方的人脸样本图像,非正视人脸样本图像为眼睛未正视前方的人脸样本图像,例如眼睛斜视上方、下方、左方或右方的人脸样本图像。生成器用于生成眼睛正视的图像;第一判别器用于判别图像中的视线方向为正视或者非正视;第二判别器用于判别图像(特别是眼部图像)为真实图像或者非真实图像。
基于上述方法,提供了一种用于视线校正的生成对抗网络及其训练方法,通过对第一判别器的训练,使第一判别器能够判别图像中的眼睛视线是否为正,通过对第二判别器的训练,使第二判别器能够判别图像中的眼睛是否真实,通过对生成器的训练,使生成器能够生成眼睛视线为正、且具有真实感的图像,从而得到具有视线校正功能的生成对抗网络。进一步的,利用该生成对抗网络对待处理人脸图像去除眼部区域后进行处理,生成眼睛为正视的视线校正图像,能够覆盖到实际应用中各种环境、各种状态下的人脸,且不存在通过码表进行视线校正的误差累积问题,使得本方案具有较优的视线校正效果。
下面对图3中的每个步骤进行具体说明。
参考图3,在步骤S310中,获取多张人脸样本图像。
人脸样本图像是指包含清晰、可判断视线方向的人脸的图像,按照视线方向将其划分为正视人脸样本图像与非正视人脸样本图像。示例性的,可以收集数量充足(如106数量级)的人脸样本图像,通过人为标注的方式将其中的正视人脸样本图像划分至正视数据集,将其中的非正视人脸样本图像划分至非正视数据集。
继续参考图3,在步骤S320中,将人脸样本图像去除眼部区域后输入生成器,通过生成器输出视线校正样本图像。
其中,眼部区域可以是能够体现视线方向的局部区域,本公开对于眼部区域的具体范围不做限定。例如,眼睛看向不同方向主要体现为眼球在眼睛中的位置不同,因此眼部区域可以是眼球区域;在一些情况下,眼睛看向不同方向时,除了眼球在眼睛中的位置不同外,眼睛形状可能也存在差别,因此眼部区域可以是整个眼睛区域;在一些情况下,眼睛看向不同方向时,除了眼球在眼睛中的位置不同、以及眼睛形状的差异外,眼睛周围的皮肤、眉毛、额头等部位的形态也可能存在差别,因此眼部区域可以是包含眼睛与这些部位的局部区域。
在一种实施方式中,可以通过人眼检测的相关算法在人脸样本图像中检测出眼部区域。示例性的,可以在人脸样本图像中检测与眼睛相关的人脸关键点,如可以是眼睛上下左右的四个角点,根据该四个角点的位置进行矩形框定位,矩形框区域即为眼部区域。眼部区域可以是矩形,也可以是其他形状。
检测出眼部区域后,可以将眼部区域的像素值置为预设值。预设值可以是与人脸颜色具有强烈差别的颜色值,如黑色或白色。
图4示出了从人脸样本图像中去除眼部区域的示意图。可以分别去除两只眼睛的区域,也可以将两只眼睛作为一个整体予以去除。
正视人脸样本图像与非正视人脸样本图像去除眼部区域后没有明显差别,因此步骤S320中可以选取任意的人脸样本图像。
生成器可以是端到端的网络结构,将去除眼部区域的人脸样本图像输入生成器,经过处理,可以输出对应的一张相同像素数的图像,在该图像中,眼部区域被填充像素值,可视为生成了新的眼部区域,将该图像称为视线校正样本图像。本示例性实施方式训练生成对抗网络的目标包括使生成器能够准确生成正视的眼部区域,得到视线校正的图像。
继续参考图3,在步骤S330中,基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像。
其中,正视标签图像与非正视标签图像是用于判别图像中的眼睛为正视或者非正视时的标签(Ground truth),可以是第一判别器的标签。示例性的,可以对正视标签图像添加第一正标签值(此处的“第一”表示为针对第一判别器的标签,用于区分后续针对第二判别器、第三判别器等的标签),表示正视标签图像为正样本,可以对非正视标签图像添加第一负标签值,表示非正视标签图像为负样本。示例性的,第一正标签值可以是1,第一负标签值可以是0。
在一种实施方式中,步骤S330可以包括:
从正视人脸样本图像中截取包含眼睛的局部区域图像,得到正视标签图像,从非正视人脸样本图像中截取包含眼睛的局部区域图像,得到非正视标签图像。
本公开对于从正视人脸样本图像与非正视人脸样本图像中截取的局部区域图像的范围大小不做限定。参考图5所示,可以从正视人脸样本图像与非正视人脸样本图像中截取仅包含单只眼睛的局部区域图像,也可以截取包含两只眼睛的局部区域图像。此外,还可以将眼睛周围的皮肤、眉毛、额头等部位截取到局部区域图像中。如果正视人脸样本图像或非正视人脸样本图像中还包含人脸以外的图像内容,例如是人的半身或全身照片,则可以截取包含人脸的局部区域图像,作为正视标签图像或非正视标签图像。通过截取眼睛局部区域图像的方式,在正视标签图像与非正视标签图像中滤除了与眼睛视线方向无关的图像信息,有利于提高生成对抗网络的训练质量。
进一步的,从正视人脸样本图像或非正视人脸样本图像中截取的上述局部区域图像可以与步骤S320中去除的眼部区域相同。例如,从正视数据集与非正视数据集中随机选取人脸样本图像,去除眼部区域后输入生成器中,如果该人脸样本图像为正视人脸样本图像,则将被去除的眼部区域作为正视标签图像,如果该人脸样本图像为非正视人脸样本图像,则将被去除的眼部区域作为非正视标签图像。
在另一种实施方式中,步骤S330可以包括:
将正视人脸样本图像作为正视标签图像,将非正视人脸样本图像作为非正视标签图像。
即,无需对正视人脸样本图像做进一步的处理,将其直接作为正视标签图像,无需对非正视人脸样本图像做进一步的处理,将其直接作为非正视标签图像。由此,简化了在获取正视标签图像与非正视标签图像时的处理流程,有利于提高效率。
继续参考图3,在步骤S340中,基于人脸样本图像与视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像。
其中,真实眼部标签图像与非真实眼部标签图像是用于判别眼部区域的图像为真实图像或者非真实图像时的标签,可以是第二判别器的标签。示例性的,可以对真实眼部标签图像添加第二正标签值,表示真实眼部图像为正样本,可以对非真实眼部标签图像添加第二负标签值,表示非真实眼部标签图像为负样本。示例性的,第二正标签值可以是1,第二负标签值可以是0。
在一种实施方式中,由于人脸样本图像均为真实(非计算机合成)的人脸图像,因此可以基于人脸样本图像提取真实眼部标签图像,并且对人脸样本图像中的眼睛视线方向没有特别要求,即可以基于任意的人脸样本图像提取真实眼部标签图像。而视线校正样本图像中的眼部区域是由生成器生成的,为非真实的眼部区域,因此可以基于视线校正样本图像提取非真实眼部标签图像。
在一种实施方式中,考虑到第二判别器主要判别经过视线校正的图像中的眼睛,因此在步骤S340中可以基于正视人脸样本图像与视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像,即不采用非正视人脸样本图像,使得后续第二判别器的训练主要针对眼睛正视的情况。
在一种实施方式中,步骤S340可以包括:
从人脸样本图像中截取包含眼睛的局部区域图像,得到真实眼部标签图像,从视线校正样本图像中截取包含眼睛的局部区域图像,得到非真实眼部标签图像。
本公开对于从人脸样本图像与视线校正样本图像中截取的局部区域图像的范围大小不做限定,例如,可以从人脸样本图像与视线校正样本图像中分别截取包含单只眼睛的局部区域图像,作为真实眼部标签图像与非真实眼部标签图像,也可以从人脸样本图像与视线校正样本图像中分别截取包含两只眼睛的局部区域图像,作为真实眼部标签图像与非真实眼部标签图像。从人脸样本图像与视线校正样本图像中截取的局部区域图像的范围大小,与上述从正视人脸样本图像与非正视人脸样本图像中截取的局部区域图像的范围大小可以相同,也可以不同。示例性的,可以将步骤S330中提取的正视标签图像与非正视标签图像均作为真实眼部标签图像,并采用与步骤S330相同的提取方式,从视线校正样本图像中提取非真实眼部标签图像。
在另一种实施方式中,步骤S340可以包括:
将人脸样本图像作为真实眼部标签图像,将视线校正样本图像作为非真实眼部标签图像。
即,无需对人脸样本图像做进一步的处理,将其直接作为真实眼部标签图像,无需对视线校正样本图像做进一步的处理,将其直接作为非真实眼部标签图像。由此,简化了在获取真实眼部标签图像与非真实眼部标签图像时的处理流程,有利于提高效率。
继续参考图3,在步骤S350中,根据正视标签图像、非正视标签图像与视线校正样本图像训练生成器与第一判别器,根据真实眼部标签图像与非真实眼部标签图像训练生成器与第二判别器。
图6示出了一种生成对抗网络的示意性架构。将正视人脸样本图像或非正视人脸样本图像去除眼部区域后输入生成器,通过生成器为图像“添加”新的眼部区域,得到视线校正样本图像。从正视人脸样本图像中提取正视标签图像,从非正视人脸样本图像中提取非正视标签图像,将正视标签图像与非正视标签图像输入第一判别器;此外,还可以基于视线校正样本图像提取中间标签图像,可以是视线校正样本图像中与眼睛视线相关的部分,也输入第一判别器;第一判别器输出判别图像中眼睛为正视或非正视的判别结果。从正视人脸样本图像或非正视人脸样本图像中提取真实眼部标签图像,从视线校正样本图像中提取非真实眼部标签图像,输入第二判别器;第二判别器输出判别图像为真实图像或非真实图像的判别结果。第一判别器与第二判别器可以是相互独立的两个判别网络,也可以共享部分网络结构,如可以共享多个卷积层。
本示例性实施方式中,训练生成对抗网络的目标包括:使第一判别器能够准确判别图像中的眼睛为正视或非正视;使第二判别器能够准确判别图像为真实图像或与非真实图像;使生成器能够“骗过”第一判别器与第二判别器,即生成器生成的图像被第一判别器判别为眼睛正视的图像,该整张图像或其中的眼部区域图像被第二判别器判别为真实图像。
步骤S350包括两部分训练过程:第一部分为训练生成器与第一判别器,第二部分为训练生成器与第二判别器。下面通过两种具体的训练方式,对两部分训练进行说明。
方式一、将生成器与第一判别器、第二判别器分开训练
在一种实施方式中,参考图7所示,第一部分训练过程可以包括以下步骤S710至S730:
步骤S710,基于视线校正样本图像提取中间标签图像。
其中,基于视线校正样本图像提取中间标签图像的具体方式可以参考步骤S330中提取正视标签图像与非正视标签图像的具体方式。
步骤S720,以正视标签图像为正样本,非正视标签图像与中间标签图像为负样本,训练第一判别器。
在对第一判别器进行训练时,正视标签图像为正样本,非正视标签图像为负样本;此外,还可以将中间标签图像作为负样本,即认为中间标签图像为眼睛非正视图像。
可以将正视标签图像、非正视标签图像、中间标签图像分别输入第一判别器,通过第一判别器分别输出正视标签图像的前判别值、非正视标签图像的前判别值、中间标签图像的前判别值。前判别值是指训练完成前的判别器(可以是第一判别器或第二判别器等)输出的图像的判别值,此处表示第一判别器判别上述三种图像为眼睛正视图像的概率,相对应的,后判别值是指训练完成后的判别器输出的图像的判别值。相对来说,前判别值的准确度低于后判别值。根据正视标签图像的前判别值与第一正标签值、非正视标签图像的前判别值与第一负标签值、中间标签图像的前判别值与第一负标签值,确定第一判别损失函数,并据此更新第一判别器的参数。第一正标签值可以是1,第一负标签值可以是0,但本公开不限定于此。第一判别损失函数是第一判别器的损失函数,可以采用任意形式的损失函数,如L1损失、L2损失、交叉熵损失等。下面示出L2形式的第一判别损失函数:
其中,Loss(D1)表示第一判别器的损失函数,即第一判别损失函数。K1、K2、K3分别表示正视标签图像的数据集、非正视标签图像的数据集、中间标签图像的数据集,i表示其中的任一张图像。wi表示图像i的权重,如可以对不同数据集的图像设置不同的权重,或者对全部图像设置等权重。PreD1(i)表示第一判别器输出的图像i的前判别值,YD1(i)表示图像i对应的标签值,K1数据集中的图像对应第一正标签值,K2与K3数据集中的图像对应第一负标签值。p1表示所选取的正视标签图像、非正视标签图像、中间标签图像的总数,如可以是本次训练中一个批次的样本数(batch size)。基于第一判别损失函数值,可以通过反向传播的方式更新第一判别器的参数。
步骤S720中训练完成的判定条件包括但不限于:训练步数达到第一预设步数,第一判别损失函数值低于第一预设损失值,准确率达到第一预设准确率,等等。第一预设步数、第一预设损失值、第一预设准确率均为根据经验、实际需求等预先设定的训练参数。
步骤S730,以中间标签图像为正样本,训练生成器。
在完成对第一判别器的训练后,可以进一步对生成器进行训练。在对生成器进行训练时,可以将中间标签图像作为正样本,使得生成器能够生成被第一判别器判别为眼睛正视的图像。
可以将中间标签图像输入训练完成后的第一判别器,通过第一判别器输出中间标签图像的后判别值,表示训练完成后的第一判别器判别中间标签图像为眼睛正视图像的概率;此外,还可以选取更多的人脸样本图像,去除眼部区域后输入生成器,得到更多的视线校正样本图像,并从中提取中间标签图像,输入第一判别器后得到后判别值。根据中间标签图像的后判别值与第一正标签值,确定第一生成损失函数,并据此更新生成器的参数。第一生成损失函数是利用第一判别器训练生成器所用的损失函数,可以采用任意形式的损失函数,如L1损失、L2损失、交叉熵损失等。下面示出L2形式的第一生成损失函数:
其中,Loss(G1)表示利用第一判别器训练生成器的损失函数,即第一生成损失函数。K4为本次训练生成器中所用的中间标签图像的数据集,j表示K4数据集中的任一张图像。wj表示图像j的权重,如可以对K4数据集中的全部图像设置等权重。PostD1(j)表示第一判别器输出的图像j的后判别值,YD1(j)表示图像j对应的标签值,为第一正标签值。q1表示所选取的中间标签图像的总数,如可以是本次训练中一个批次的样本数。基于第一生成损失函数值,可以通过反向传播的方式更新生成器的参数。
步骤S730中训练完成的判定条件包括但不限于:训练步数达到第二预设步数,第一生成损失函数值低于第二预设损失值,准确率达到第二预设准确率,等等。第二预设步数、第二预设损失值、第二预设准确率均为根据经验、实际需求等预先设定的训练参数。
通过训练第一判别器,使其能够准确判别图像中的眼睛视线方向是否为正,进而通过训练生成器,促使生成器能够生成眼睛正视的图像。
在一种实施方式中,以正视标签图像为正样本,非正视标签图像为负样本,训练第一判别器;然后再以中间标签图像为正样本,训练生成器。和图7的方法流程相比,区别在于单独训练第一判别器时不使用中间标签图像,而仅使用正视标签图像与非正视标签图像,这样有利于加速第一判别器的收敛,缩短训练时间。
在一种实施方式中,参考图8所示,第二部分训练过程可以包括以下步骤S810和S820:
步骤S810,以真实眼部标签图像为正样本,非真实眼部标签图像为负样本,训练第二判别器。
在对第二判别器进行训练时,真实眼部标签图像为正样本,非真实眼部标签图像为负样本。
可以将真实眼部标签图像与非真实眼部标签图像分别输入第二判别器,通过第二判别器分别输出真实眼部标签图像的前判别值与非真实眼部标签图像的前判别值,表示第二判别器判别这两种图像为真实眼部图像的概率。根据真实眼部标签图像的前判别值与第二正标签值、非真实眼部标签图像的前判别值与第二负标签值,确定第二判别损失函数,并据此更新第二判别器的参数。第二正标签值与第二负标签值为针对第二判别器设定的正标签值与负标签值,第二正标签值可以是1,第二负标签值可以是0,但本公开不限定于此。第二判别损失函数是第二判别器的损失函数,可以采用任意形式的损失函数,如L1损失、L2损失、交叉熵损失等。下面示出L2形式的第二判别损失函数:
其中,Loss(D2)表示第二判别器的损失函数,即第二判别损失函数。F1、F2分别表示真实眼部标签图像的数据集、非真实眼部标签图像的数据集,k表示其中的任一张图像。wk表示图像k的权重,如可以对不同数据集的图像设置不同的权重,或者对全部图像设置等权重。PreD2(k)表示第二判别器输出的图像k的前判别值,YD1(k)表示图像k对应的标签值,F1数据集中的图像对应第二正标签值,F2数据集中的图像对应第二负标签值。p2表示所选取的真实眼部标签图像与非真实眼部标签图像的总数,如可以是本次训练中一个批次的样本数。基于第二判别损失函数值,可以通过反向传播的方式更新第二判别器的参数。
步骤S810中训练完成的判定条件包括但不限于:训练步数达到第三预设步数,第二判别损失函数值低于第三预设损失值,准确率达到第三预设准确率,等等。第三预设步数、第三预设损失值、第三预设准确率均为根据经验、实际需求等预先设定的训练参数。
步骤S820,以非真实眼部标签图像为正样本,训练生成器。
在完成对第二判别器的训练后,可以进一步对生成器进行训练。在对生成器进行训练时,可以将非真实眼部标签图像作为正样本,使得生成器能够生成被第二判别器判别为真实的图像。
可以将非真实眼部标签图像输入训练完成后的第二判别器,通过第二判别器输出非真实眼部标签图像的后判别值,表示训练完成后的第二判别器判别非真实眼部标签图像为眼睛正视图像的概率;此外,还可以选取更多的人脸样本图像,去除眼部区域后输入生成器,得到更多的视线校正样本图像,并从中提取非真实眼部标签图像,输入第二判别器后得到后判别值。根据非真实眼部标签图像的后判别值与第二正标签值,确定第二生成损失函数,并据此更新生成器的参数。第二生成损失函数是利用第二判别器训练生成器所用的损失函数,可以采用任意形式的损失函数,如L1损失、L2损失、交叉熵损失等。下面示出L2形式的第二生成损失函数:
其中,Loss(G2)表示利用第二判别器训练生成器的损失函数,即第一生成损失函数。F3为本次训练生成器中所用的非真实眼部标签图像的数据集,s表示F3数据集中的任一张图像。ws表示图像s的权重,如可以对F3数据集中的全部图像设置等权重。PostD2(s)表示第二判别器输出的图像s的后判别值,YD2(s)表示图像s对应的标签值,为第二正标签值。q2表示所选取的非真实眼部标签图像的总数,如可以是本次训练中一个批次的样本数。基于第二生成损失函数值,可以通过反向传播的方式更新生成器的参数。
步骤S820中训练完成的判定条件包括但不限于:训练步数达到第四预设步数,第二生成损失函数值低于第四预设损失值,准确率达到第四预设准确率,等等。第四预设步数、第四预设损失值、第四预设准确率均为根据经验、实际需求等预先设定的训练参数。
通过训练第二判别器,使其能够准确判别生成器生成的图像是否为真实图像,或该图像中的眼部区域图像是否为真实图像,进而通过训练生成器,促使生成器能够生成具有真实感的图像,特别是避免图像中眼部区域与其它区域之间出现明显的分界线,使得图像符合人的主观视觉感受。
上述步骤S720是对第一判别器的训练,上述步骤S810是对第二判别器的训练。
在一种实施方式中,可以分别独立执行步骤S720与步骤S810中的训练,即单独训练第一判别器,以达到步骤S720的训练完成判定条件,单独训练第二判别器,以达到步骤S810的训练完成判定条件。
在另一种实施方式中,也可以合并执行步骤S720与步骤S810中的训练。示例性的,可以结合第一判别损失函数与第二判别损失函数,得到全局判别损失函数,如下所示:
Loss(D1,D2)=a1Loss(D1)+a2Loss(D2) (5)
其中,Loss(D1,D2)表示第一判别器与第二判别器的全局判别损失函数;a1与a2分别为第一判别损失函数与第二判别损失函数的权重,用于控制第一判别损失函数与第二判别损失函数在全局判别损失函数中的比重,以调节后续生成器的训练偏好,可以根据经验与实际需求设置a1与a2的值。第一判别器与第二判别器中的样本可以不同,例如第一判别器的样本包括正视标签图像、非正视标签图像、中间标签图像,第二判别器的样本包括真实眼部标签图像、非真实眼部标签图像;向第一判别器与第二判别器分别输入样本后,根据输出的判别值与对应的标签值计算全局判别损失函数值,可以通过反向传播的方式同时更新第一判别器与第二判别器的参数,使第一判别器与第二判别器的训练同时收敛。
上述步骤S730是对生成器进行视线校正的训练,使生成器能够生成眼睛正视的图像;上述步骤S820是对生成器进行真实性的训练,使生成器能够生成具有真实感的图像。
在一种实施方式中,可以分别独立执行步骤S730与步骤S820中的训练,考虑到两个步骤均是针对生成器的训练,可以交替进行两个步骤的训练,例如基于步骤S730对生成器进行一个batch的训练,再基于步骤S820对生成器进行一个batch的训练,最终同时达到步骤S730与步骤S820的训练完成判定条件。
在另一种实施方式中,也可以合并执行步骤S730与步骤S820中的训练。示例性的,可以结合第一生成损失函数与第二生成损失函数,得到全局生成损失函数,如下所示:
Loss(G1,G2)=b1Loss(G1)+b2Loss(G2) (6)
其中,Loss(G1,G2)表示利用第一判别器与第二判别器训练生成器的全局生成损失函数;b1与b2分别为第一生成损失函数与第二生成损失函数的权重,用于控制第一生成损失函数与第二生成损失函数在全局生成损失函数中的比重,以调节生成器的训练偏好,可以根据经验与实际需求设置b1与b2的值。在训练中,向生成器中输入去除眼部区域的人脸样本图像,得到视线校正样本图像,从中提取中间标签图像与非真实眼部标签图像,将中间标签图像输入第一判别器,非真实眼部标签图像输入第二判别器,根据第一判别器与第二判别器输出的判别值与对应的标签值计算全局生成损失函数值,可以通过反向传播的方式更新生成器的参数,使生成器实现全局收敛。
在一种实施方式中,参考图9所示,步骤S350可以包括:
步骤S910,基于视线校正样本图像提取中间标签图像;
步骤S920,以正视标签图像为第一判别器的正样本,非正视标签图像与中间标签图像为第一判别器的负样本,以真实眼部标签图像为第二判别器的正样本,非真实眼部标签图像第二判别器的负样本,更新第一判别器与第二判别器的参数;
步骤S930,将中间标签图像输入第一判别器,非真实眼部标签图像输入第二判别器,根据第一判别器输出的判别值与第一正标签值间的偏差、第二判别器输出的判别值与第二正标签值间的偏差,更新生成器的参数。
其中,步骤S920相当于将上述步骤S720对第一判别器的训练与上述步骤S810对第二判别器的训练合并执行。将正视标签图像作为正样本,非正视标签图像与中间标签图像作为负样本,输入第一判别器,第一判别器输出三种图像的前判别值,根据该前判别值与对应的标签值(第一正标签值或第一负标签值)计算第一判别损失函数;并将真实眼部标签图像作为正样本,非真实眼部标签图像作为负样本,输入第二判别器,第二判别器输出两种图像的前判别值,根据该前判别值与对应的标签值(第二正标签值或第二负标签值)计算第二判别损失函数;由第一判别损失函数与第二判别损失函数得到全局判别损失函数,通过反向传播的方式更新第一判别器与第二判别器的参数,以实现对第一判别器与第二判别器的合并训练。
步骤S930相当于将上述步骤S730对生成器的训练与上述步骤S820对生成器的训练合并执行。将中间标签图像作为正样本,输入第一判别器,第一判别器输出中间标签图像的判别值(此处的判别值是后判别值),根据该后判别值与第一正标签值的偏差计算第一生成损失函数;将非真实眼部标签图像作为正样本,输入第二判别器,第二判别器输出非真实眼部标签图像的判别值(此处的判别值也是后判别值),根据该后判别值与第二正标签值的偏差计算第二生成损失函数;由第一生成损失函数与第二生成损失函数得到全局生成损失函数,通过反向传播的方式更新生成器的参数,以实现对生成器的视线校正与真实性两方面的合并训练。
通过上述对第一判别器与第二判别器合并训练,以及对生成器的视线校正与真实性两方面合并训练,能够简化训练流程,有利于生成器、第一判别器与第二判别器在全局上快速收敛,提升训练效果。
以上说明了将生成器与第一判别器、第二判别器分开训练的方式一。在方式一中,先训练第一判别器或第二判别器,后训练生成器,这样使得第一判别器、第二判别器与生成器的训练更加具有针对性,如在训练第一判别器与生成器时,可以对第一判别器与生成器设置不同的训练完成的判定条件(具体可以参考上述步骤S720中的判定条件与上述步骤S730中的判定条件),在训练第二判别器与生成器时,可以对第二判别器与生成器设置不同的训练完成的判定条件(具体可以参考上述步骤S810中的判定条件与上述步骤S820中的判定条件),当更加注重于训练生成器时,可以对生成器设置更加严格的判定条件,从而满足实际需求。
方式二、将生成器与第一判别器、第二判别器合并训练
需要说明的是,方式一中的合并训练是指将第一判别器与第二判别器合并训练,将生成器的视线校正与真实性两方面的合并训练,而生成器与第一判别器、第二判别器的训练仍然是分开的,需要在对第一判别器、第二判别器训练完成的基础上训练生成器。方式二中将生成器与第一判别器、第二判别器合并训练,生成器与第一判别器、第二判别器的训练不分先后。
在一种实施方式中,步骤S350可以包括以下步骤:
基于视线校正样本图像提取中间标签图像;
将正视标签图像、非正视标签图像、中间标签图像输入第一判别器,根据正视标签图像的判别值与第一正标签值、非正视标签图像的判别值与第一负标签值、中间标签图像的判别值与第一负标签值,确定第一判别损失函数;
将真实眼部标签图像与非真实眼部标签图像输入第二判别器的负样本,根据真实眼部标签图像的判别值与第二正标签值、非真实眼部标签图像的判别值与第二负标签值,确定第二判别损失函数;
根据包括第一判别损失函数与第二判别损失函数的全局判别损失函数,按照第一方向更新第一判别器与第二判别器的参数,并按照第二方向更新生成器的参数,第一方向与第二方向相反。
其中,第一判别损失函数、第二判别损失函数、全局判别损失函数的相关内容可以参考上述公式(1)、(3)、(5)部分的内容,当然也可以采用交叉熵等其他形式。
第一方向可以是使全局判别损失函数值减小,第二方向可以是使全局判别损失函数值增大,但本公开不限定于此,其与全局判别损失函数的具体形式相关。示例性的,在计算出全局判别损失函数值后,可以对第一判别器与第二判别器的参数进行梯度下降更新,可以对生成器的参数进行梯度上升更新。一般的,更新第一判别器与第二判别器的参数,与更新生成器的参数可以交替进行,直到在两个方向上达到平衡。
以上通过第一判别器解决了视线校正的问题,通过第二判别器解决了图像真实感的问题。然而,还可能存在生成器生成的眼睛与原眼睛不匹配的问题,例如生成的眼睛与原眼睛在瞳孔颜色、眼皮特征等方面不一致,这样经过生成器处理的图像看上去像是另一张脸,或者生成器生成的左右两只眼睛不匹配,影响整张人脸的真实感与和谐感,这样显然无法满足视频通话、自拍美颜等场景中的需求。基于此,在一种实施方式中,生成对抗网络还可以包括第三判别器,用于判别两只眼睛的图像是否匹配(即是否属于同一张人脸),使得生成器生成左右两只眼睛均与原眼睛匹配的图像。
在步骤S340中,可以从人脸样本图像中截取包含单只眼睛的局部区域图像,得到真实眼部标签图像,从视线校正样本图像中截取包含单只眼睛的局部区域图像,得到非真实眼部标签图像。进一步的,参考图10所示,生成对抗网络的训练方法还可以包括以下步骤S1010至S1030:
步骤S1010,将属于同一张人脸的两张真实眼部标签图像形成匹配眼部标签图像对。
第三判别器的输入为两张单只眼睛的图像,称为图像对。
在一种实施方式中,可以认为不同的人脸样本图像为不同的人脸,则来自于同一张人脸样本图像的两张真实眼部标签图像形成匹配眼部标签图像对。
在另一种实施方式中,可以对人脸样本图像进行人脸识别,识别出对应于相同人脸的一张或多张人脸样本图像,将来自于这些人脸样本图像的任意两张真实眼部标签图像形成匹配眼部标签图像对。
在一种实施方式中,可以允许属于同一张人脸的两张同侧眼睛的真实眼部标签图像形成匹配眼部标签图像对,即允许两张左眼的真实眼部标签图像形成匹配眼部标签图像对。
在另一种实施方式中,可以仅允许属于同一张人脸的两张异侧眼睛的真实眼部标签图像形成匹配眼部标签图像对,即仅允许一张左眼的真实眼部标签图像与一张右眼的真实眼部标签图像形成匹配眼部标签图像对。
举例来说,识别人脸样本图像中的正视人脸样本图像Iz与非正视人脸样本图像Ix为同一张人脸,从Iz中提取左眼的真实眼部标签图像IzL与右眼的真实眼部标签图像IzR,从Ix中提取左眼的真实眼部标签图像IxL与右眼的真实眼部标签图像IxR。允许两张同侧眼睛的真实眼部标签图像形成匹配眼部标签图像对,则得到匹配眼部标签图像对:[IzL,IzR],[IzL,IxL],[IzL,IxR],[IzR,IxL],[IzR,IxR],[IxL,IxR]。
步骤S1020,将一张真实眼部标签图像与一张对应的非真实眼部标签图像形成非匹配眼部标签图像对。
其中,真实眼部标签图像可以来自于人脸样本图像,非真实眼部标签图像可以来自于视线校正样本图像,真实眼部标签图像与非真实眼部标签图像对应是指:真实眼部标签图像所属的人脸样本图像经过去除眼部区域与生成器的处理后输出的图像,正是非真实眼部标签图像所属的视线校正样本图像,即可以认为该真实眼部标签图像与该非真实眼部标签图像的起源为同一张人脸样本图像。
举例来说,将正视人脸样本图像Iz去除眼部区域后输入生成器,得到视线校正样本图像Io,从中截取左眼的非真实眼部标签图像IoL与右眼的非真实眼部标签图像IoR。IoL、IoR与上述IzL、IzR、IxL、IxR均具有对应关系,由此可以得到非匹配眼部标签图像对:[IzL,IoL],[IzL,IoR],[IzR,IoL],[IzR,IoR],[IxL,IoL],[IxL,IoR],[IxR,IoL],[IxR,IoR]。
在一种实施方式中,考虑到第三判别器主要判别经过视线校正的两只眼睛是否与原眼睛匹配,因此在形成上述匹配眼部标签图像对与非匹配眼部标签图像对时,可以仅采用从正视人脸样本图像中提取的单只眼睛的真实眼部标签图像,而不采用非正视人脸样本图像中提取的单只眼睛的真实眼部标签图像,使得后续第三判别器的训练主要针对眼睛正视的情况。
步骤S1030,根据匹配眼部标签图像对与非匹配眼部标签图像对训练生成器与第三判别器。
图11示出了另一种生成对抗网络的示意性架构,与图6相比,增加了第三判别器部分的架构。通过对真实眼部标签图像与非真实眼部标签图像进行组合,得到匹配眼部标签图像对与非匹配眼部标签图像对;将匹配眼部标签图像对与非匹配眼部标签图像对分别输入第三判别器,每个图像对可以在图像通道维度上进行级联;第三判别器输出判别图像对中的两只眼睛匹配或不匹配的判别结果。第三判别器可以是独立于第一判别器、第二判别器的判别网络,也可以与第一判别器、第二判别器中的任意一个或多个共享部分网络结构。
对生成器与第三判别器进行训练的目标包括:使第三判别器能够准确判别两张眼部图像中的眼睛是否匹配;使生成器能够“骗过”第三判别器,即生成器基于某一张脸所生成的图像中的每一只眼睛,均与该脸的真实图像中的单只眼睛形成被第三判别器判别为匹配的双眼。
参考上述步骤S350部分的内容,本示例性实施方式对于生成器与第三判别器的训练也可以采用分开训练与合并训练两种方式(即上述方式一与方式二)。
在一种实施方式中,可以对生成器与第三判别器进行分开训练。示例性的,参考图12所示,步骤S1030可以包括以下步骤S1210与S1220:
步骤S1210,以匹配眼部标签图像对为正样本,非匹配眼部标签图像对为负样本,训练第三判别器。
在对第三判别器进行训练时,匹配眼部标签图像对为正样本,非匹配眼部标签图像对为负样本。
可以将匹配眼部标签图像对与非匹配眼部标签图像对分别输入第三判别器,通过第三判别器分别输出匹配眼部标签图像对的前判别值与非匹配眼部标签图像对的前判别值,表示第三判别器判别这两种图像对中的两只眼睛匹配的概率。根据匹配眼部标签图像对的前判别值与第三正标签值、非匹配眼部标签图像对的前判别值与第三负标签值,确定第三判别损失函数,并据此更新第三判别器的参数。第三正标签值与第三负标签值为针对第三判别器设定的正标签值与负标签值,第三正标签值可以是1,第三负标签值可以是0,但本公开不限定于此。第三判别损失函数是第三判别器的损失函数,可以采用任意形式的损失函数,如L1损失、L2损失、交叉熵损失等。下面示出L2形式的第三判别损失函数:
其中,Loss(D3)表示第三判别器的损失函数,即第三判别损失函数。H1、H2分别表示匹配眼部标签图像对的数据集、非匹配眼部标签图像对的数据集,t表示其中的任一个图像对。wt表示图像对t的权重,如可以对不同数据集的图像对设置不同的权重,或者对全部图像对设置等权重。PreD3(t)表示第三判别器输出的图像对t的前判别值,YD3(t)表示图像对t对应的标签值,H1数据集中的图像对对应第三正标签值,H2数据集中的图像对对应第三负标签值。p3表示所选取的匹配眼部标签图像对与非匹配眼部标签图像对的总数,如可以是本次训练中一个批次的样本数。基于第三判别损失函数值,可以通过反向传播的方式更新第三判别器的参数。
步骤S1210中训练完成的判定条件包括但不限于:训练步数达到第五预设步数,第三判别损失函数值低于第五预设损失值,准确率达到第五预设准确率,等等。第五预设步数、第五预设损失值、第五预设准确率均为根据经验、实际需求等预先设定的训练参数。
步骤S1220,以非匹配眼部标签图像对为正样本,训练生成器。
在完成对第三判别器的训练后,可以进一步对生成器进行训练。在对生成器进行训练时,可以将非匹配眼部标签图像对作为正样本,使得生成器基于某一张脸所生成的图像中的单只眼睛,与该脸的真实图像中的单只眼睛能够被第三判别器判别为匹配。
可以将非匹配眼部标签图像对输入训练完成后的第三判别器,通过第三判别器输出非匹配眼部标签图像对的后判别值,表示训练完成后的第三判别器判别非匹配眼部标签图像对中的两只眼睛匹配的概率;此外,还可以选取更多的人脸样本图像,去除眼部区域后输入生成器,得到更多的视线校正样本图像,并从中提取单只眼睛的非真实眼部标签图像,将其与对应的人脸样本图像中所提取的单只眼睛的真实眼部标签图像形成非匹配眼部标签图像对,并输入第三判别器后得到后判别值。根据非匹配眼部标签图像对的后判别值与第三正标签值,确定第三生成损失函数,并据此更新生成器的参数。第三生成损失函数是利用第三判别器训练生成器所用的损失函数,可以采用任意形式的损失函数,如L1损失、L2损失、交叉熵损失等。下面示出L2形式的第三生成损失函数:
其中,Loss(G3)表示利用第三判别器训练生成器的损失函数,即第三生成损失函数。H3为本次训练生成器中所用的非匹配眼部标签图像对的数据集,s表示H3数据集中的任一个图像对。ws表示图像对s的权重,如可以对H3数据集中的全部图像对设置等权重。PostD3(s)表示第三判别器输出的图像对s的后判别值,YD3(s)表示图像对s对应的标签值,为第三正标签值。q3表示所选取的非匹配眼部标签图像对的总数,如可以是本次训练中一个批次的样本数。基于第三生成损失函数值,可以通过反向传播的方式更新生成器的参数。
步骤S1220中训练完成的判定条件包括但不限于:训练步数达到第六预设步数,第三生成损失函数值低于第六预设损失值,准确率达到第六预设准确率,等等。第六预设步数、第六预设损失值、第六预设准确率均为根据经验、实际需求等预先设定的训练参数。
通过训练第三判别器,使其能够准确判别图像中的左右两只眼睛与原眼睛是否匹配,进而通过训练生成器,使得生成器能够生成具有左右两只眼睛与原眼睛匹配的图像,避免图像中眼睛看上去像是“换了一个人”。
由上可知,第二判别器是从生成的眼睛符合一般真实眼睛特征的角度加以判别,第三判别器是从生成的眼睛符合原眼睛特征的角度加以判别,两者实质上从不同方面解决眼睛真实感的问题,通过结合第二判别器与第三判别器,可以促使生成器生成具有高质量眼睛的图像。
本公开对于生成器、第一至第三判别器的具体网络结构不做限定。示例性的,生成器可以是全卷积网络,例如为U-Net结构;第一判别器、第二判别器、第三判别器均可以是包含全连接层的卷积网络。
下面对包含第三判别器的生成对抗网络的整体训练流程进行示例性说明。
在一种实施方式中,可以将步骤S350与步骤S1030合并执行,参考图13所示,具体可以包括以下步骤S1310至S1330:
步骤S1310,基于视线校正样本图像提取中间标签图像。
举例来说,将正视人脸样本图像Iz去除眼部区域后输入生成器,得到视线校正样本图像Io,从中截取左眼部分的局部区域图像IoL与右眼部分的局部区域图像IoR,IoL与IoR可以同时作为中间标签图像与非真实眼部标签图像。
此外,从正视人脸样本图像Iz中截取左眼部分的局部区域图像IzL与右眼部分的局部区域图像IzR,并从非正视人脸样本图像Ix中截取左眼部分的局部区域图像IxL与右眼部分的局部区域图像IxR;IzL与IzR可以作为正视标签图像,IxL与IxR可以作为非正视标签图像;IzL、IzR、IxL与IxR还可以作为真实眼部标签图像;将真实眼部标签图像与非真实眼部标签图像进行组合,得到匹配眼部标签图像对与非匹配眼部标签图像对。
步骤S1320,以正视标签图像为第一判别器的正样本,非正视标签图像与中间标签图像为第一判别器的负样本,以真实眼部标签图像为第二判别器的正样本,非真实眼部标签图像第二判别器的负样本,以匹配眼部标签图像对为第三判别器的正样本,非匹配眼部标签图像对为第三判别器的负样本,更新第一判别器、第二判别器与第三判别器的参数。
举例来说,将IzL、IzR作为正样本,IxL、IxR、IoL、IoR作为负样本,输入第一判别器D1,根据输出的前判别值与对应的标签值计算第一判别损失函数Loss(D1);将IzL、IzR、IxL、IxR作为正样本,IoL、IoR作为负样本,输入第二判别器D2,根据输出的前判别值与对应的标签值计算第二判别损失函数Loss(D2);将[IzL,IzR],[IzL,IxL],[IzL,IxR],[IzR,IxL],[IzR,IxR],[IxL,IxR]作为正样本,[IzL,IoL],[IzL,IoR],[IzR,IoL],[IzR,IoR],[IxL,IoL],[IxL,IoR],[IxR,IoL],[IxR,IoR]作为负样本,输入第三判别器D3,根据输出的前判别值与对应的标签值计算第三判别损失函数Loss(D3);对第一、第二、第三判别损失函数加权,得到全局判别损失函数,如下所示:
Loss(D1,D2,D3)=c1Loss(D1)+c2Loss(D2)+c3Loss(D3) (9)
其中,Loss(D1,D2,D3)表示对第一判别器、第二判别器、第三判别器进行训练的全局判别损失函数;c1、c2、c3分别为第一判别损失函数、第二判别损失函数、第三判别损失函数的权重,用于控制第一判别损失函数、第二判别损失函数、第三判别损失函数在全局判别损失函数中的比重,以调节生成器的训练偏好,可以根据经验与实际需求设置c1、c2、c3的值。在得到全局判别损失函数值后,可以通过反向传播的方式更新第一判别器、第二判别器与第三判别器的参数,使三个判别器同时收敛。
步骤S1330,将中间标签图像输入第一判别器,非真实眼部标签图像输入第二判别器,非匹配眼部标签图像对输入第三判别器,根据第一判别器输出的判别值与第一正标签值间的偏差、第二判别器输出的判别值与第二正标签值间的偏差、第三判别器输出的判别值与第三正标签值间的偏差,更新生成器的参数。
举例来说,将IoL、IoR作为正样本,输入第一判别器,根据第一判别器输出的判别值(此处为后判别值)与第一正标签值间的偏差计算第一生成损失函数Loss(G1);将IoL、IoR作为正样本,输入第二判别器,根据第二判别器输出的判别值(此处为后判别值)与第二正标签值间的偏差计算第二生成损失函数Loss(G2);将[IzL,IoL],[IzL,IoR],[IzR,IoL],[IzR,IoR],[IxL,IoL],[IxL,IoR],[IxR,IoL],[IxR,IoR]作为正样本,输入第三判别器,根据第三判别器输出的判别值(此处为后判别值)与第三正标签值间的偏差计算第三生成损失函数Loss(G3);对第一、第二、第三生成损失函数加权,得到全局生成损失函数,如下所示:
Loss(G1,G2,G3)=d1Loss(G1)+d2Loss(G2)+d3Loss(G3) (10)
其中,Loss(G1,G2,G3)表示利用第一判别器、第二判别器与第三判别器训练生成器的全局生成损失函数;d1、d2、d3分别为第一生成损失函数、第二生成损失函数、第三生成损失函数的权重,用于控制第一生成损失函数、第二生成损失函数、第三生成损失函数在全局生成损失函数中的比重,在得到全局生成损失函数值后,可以通过反向传播的方式更新生成器的参数,使生成器实现全局收敛。
由此完成对整个生成对抗网络的训练。并且,通过对第一、第二、第三判别器进行合并训练,以及对生成器进行视线校正、真实性、眼睛匹配三方面的合并训练,可以实现三个判别器与生成器的全局充分优化,提高生成对抗网络的质量。
在一种实施方式中,在对第一至第三判别器与生成器进行训练前,如可在执行上述步骤S350等训练步骤前,可以先根据视线校正样本图像与对应的人脸样本图像间的偏差,对生成器进行预训练。其中,视线校正样本图像与人脸样本图像对应是指:该视线校正样本图像是该人脸样本图像去除眼部区域后输入生成器所得到的图像。基于线校正样本图像与对应的人脸样本图像间的偏差,可以建立L1损失、L2损失等形式的损失函数,并据此对生成器进行预训练。预训练的目的是在对整个生成对抗网络进行训练前,给予生成器一个较好的初始状态,降低训练难度,避免训练崩溃。因此,无需对预训练设置严格的收敛条件,达到预设的训练步数(如根据经验与实际需求设置的第七预设步数)即可认为预训练完成。
在一种实施方式中,上述步骤S340中提取的真实眼部标签图像可以包括匹配眼部标签图像对;非真实眼部标签图像可以包括非匹配眼部标签图像对。具体地,步骤S340可以包括以下步骤:
从人脸样本图像中提取单只眼睛的局部区域图像,记为真实单眼图像,从视线校正样本图像中提取单只眼睛的局部区域图像,记为非真实单眼图像;
将属于同一张人脸的两张真实单眼图像形成匹配眼部标签图像对;
将一张真实单眼图像与一张对应的非真实单眼图像形成非匹配眼部标签图像对,其中,该真实单眼图像所属的人脸样本图像经过去除眼部区域与生成器的处理后输出的图像为该非真实单眼图像所属的视线校正样本图像。
进而,可以利用上述匹配眼部标签图像对与非匹配眼部标签图像对训练生成器与第二判别器,使得第二判别器能够判别两只眼睛是否匹配,使得生成器能够生成左右眼睛均与原眼睛匹配的图像。可见,本实施方式中的第二判别器与上述第三判别器的作用相同。在步骤S350中,通过训练生成器与第一判别器,以及训练生成器与第二判别器,可以促使生成器生成眼睛视线为正、左右两只眼睛均与原眼睛匹配的图像。
图14示出了本示例性实施方式中一种图像视线校正方法的示例性流程,可以包括:
步骤S1410,获取待处理人脸图像,以及获取根据上述用于视线校正的生成对抗网络的训练方法所训练的生成对抗网络中的生成器;
步骤S1420,将待处理人脸图像去除眼部区域后输入生成器,通过生成器输出待处理人脸图像对应的视线校正图像。
其中,待处理人脸图像可以是视频通话中的任一帧图像,也可以是待美颜的自拍图像等。在一种实施方式中,可以对视频中的眼睛视线方向进行识别,当某一帧中的视线方向为非正视时,将该帧作为待处理人脸图像。
在一种实施方式中,如果获取的原始图像中包含人脸以外的图像内容,为了减少这些无关内容对于视线校正的影响,可以基于生成器的输入图像尺寸从原始图像中截取包含人脸的局部区域图像,以作为待处理人脸图像。
将待处理人脸图像去除眼部区域,可以参考步骤S320中去除眼部区域的具体方式,例如可以检测出眼部所在的矩形框,将矩形框内的像素值置为0或其他预设值。
应当理解,步骤S1410中所获取的生成器可以是上述任一种生成对抗网络中的生成器,例如可以是图6或图11中的生成器。将去除眼部区域的待处理人脸图像输入生成器,经过上述训练的生成器可以生成对应的视线校正图像。视线校正图像中的眼睛视线方向为正视,且图像真实感较强。
如果待处理人脸图像为原始图像中所截取的局部区域图像,则在得到视线校正图像后,可以将视线校正图像添加至原始图像中,覆盖所截取的局部区域,从而得到视线校正后的完整图像。
基于上述图像视线校正方法方法,利用预先训练的生成对抗网络对待处理人脸图像去除眼部区域后进行处理,生成眼睛为正视的视线校正图像,能够覆盖到实际应用中各种环境、各种状态下的人脸,且不存在通过码表进行视线校正的误差累积问题,使得本方案具有较优的视线校正效果。
本公开的示例性实施方式还提供另一种图像视线校正方法,参考图15所示,可以包括以下步骤S1510至S1530:
步骤S1510,获取待处理人脸图像;
步骤S1520,将待处理人脸图像去除眼部区域,并基于去除眼部区域后的待处理人脸图像生成视线校正图像;
步骤S1530,当判别视线校正图像为眼睛正视前方的图像,且视线校正图像中的眼睛为真实眼睛时,输出视线校正图像。
其中,对于去除眼部区域后的待处理人脸图像的处理,可以采用上述生成器来完成,对于视线校正图像的判别,可以采用上述判别器来完成。
举例来说,采用图6所示的生成对抗网络。将待处理人脸图像去除眼部区域后输入生成器,输出视线校正图像;将视线校正图像输入上述第一判别器,如果第一判别器输出视线方向为正视的判别结果,表示视线校正图像为眼睛正视前方的图像;将视线校正图像输入第二判别器,或者将视线校正图像中的眼部区域图像输入第二判别器,如果第二判别器输出真实图像的判别结果,表示视线校正图像中的眼睛为真实眼睛。当同时满足这两方面判别条件时,确定视线校正图像符合要求,可以进行输出。
在一种实施方式中,步骤S1530可以包括:
当判别视线校正图像为眼睛正视前方的图像,视线校正图像或视线校正图像中的眼部区域图像为真实图像,且视线校正图像中的左眼、右眼均与待处理人脸图像中被去除的眼部区域匹配时,输出视线校正图像。
举例来说,采用图11所示的生成对抗网络。将待处理人脸图像去除眼部区域后输入生成器,输出视线校正图像;将视线校正图像输入上述第一判别器;将视线校正图像或视线校正图像中的眼部区域图像输入第二判别器;将视线校正图像中的左眼区域图像与待处理人脸图像中被去除的右眼区域图像形成一个图像对,视线校正图像中的右眼区域图像与待处理人脸图像中被去除的左眼区域图像形成另一个图像对,将两个图像对分别输入第三判别器;如果第一判别器判别视线校正图像的视线方向为正视,第二判别器判别视线校正图像或视线校正图像中的眼部区域图像为真实图像,第三判别器判别两个图像对中的眼睛均匹配,则满足上述判别条件,确定视线校正图像符合要求,可以进行输出。
本公开的示例性实施方式还提供一种用于视线校正的生成对抗网络的训练装置。参考图16所示,该训练装置1600可以包括:
图像获取模块1610,被配置为获取多张人脸样本图像;
图像生成模块1620,被配置为将人脸样本图像去除眼部区域后输入生成器,通过生成器输出视线校正样本图像;
第一提取模块1630,被配置为基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;正视人脸样本图像为眼睛正视前方的人脸样本图像,非正视人脸样本图像为眼睛未正视前方的人脸样本图像;
第二提取模块1640,被配置为基于人脸样本图像与视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;
网络训练模块1650,被配置为根据正视标签图像、非正视标签图像与视线校正样本图像训练生成器与第一判别器,根据真实眼部标签图像与非真实眼部标签图像训练生成器与第二判别器。
在一种实施方式中,第一提取模块1630,被配置为:
从正视人脸样本图像中截取包含眼睛的局部区域图像,得到正视标签图像,从非正视人脸样本图像中截取包含眼睛的局部区域图像,得到非正视标签图像。
在一种实施方式中,网络训练模块1650包括第一训练子模块,被配置为:
基于视线校正样本图像提取中间标签图像;
以正视标签图像为正样本,非正视标签图像与中间标签图像为负样本,训练第一判别器;
以中间标签图像为正样本,训练生成器。
在一种实施方式中,第二提取模块1640,被配置为:
从人脸样本图像中截取包含眼睛的局部区域图像,得到真实眼部标签图像,从视线校正样本图像中截取包含眼睛的局部区域图像,得到非真实眼部标签图像。
在一种实施方式中,网络训练模块1650包括第二训练子模块,被配置为:
以真实眼部标签图像为正样本,非真实眼部标签图像为负样本,训练第二判别器;
以非真实眼部标签图像为正样本,训练生成器。
在一种实施方式中,第二提取模块1640,被配置为:
从人脸样本图像中截取包含单只眼睛的局部区域图像,得到真实眼部标签图像,从视线校正样本图像中截取包含单只眼睛的局部区域图像,得到非真实眼部标签图像。
在一种实施方式中,生成对抗网络还包括第三判别器;训练装置1600还可以第三提取模块,被配置为:
将属于同一张人脸的两张真实眼部标签图像形成匹配眼部标签图像对;
将一张真实眼部标签图像与一张对应的非真实眼部标签图像形成非匹配眼部标签图像对,其中,真实眼部标签图像所属的人脸样本图像经过去除眼部区域与生成器的处理后输出的图像为真实眼部标签图像对应的非真实眼部标签图像所属的视线校正样本图像;
网络训练模块1650还包括第三训练子模块,被配置为:
根据匹配眼部标签图像对与非匹配眼部标签图像对训练生成器与第三判别器。
在一种实施方式中,第三训练子模块,被配置为:
以匹配眼部标签图像对为正样本,非匹配眼部标签图像对为负样本,训练第三判别器;
以非匹配眼部标签图像对为正样本,训练生成器。
在一种实施方式中,网络训练模块1650,被配置为:
基于视线校正样本图像提取中间标签图像;
以正视标签图像为第一判别器的正样本,非正视标签图像与中间标签图像为第一判别器的负样本,以真实眼部标签图像为第二判别器的正样本,非真实眼部标签图像第二判别器的负样本,以匹配眼部标签图像对为第三判别器的正样本,非匹配眼部标签图像对为第三判别器的负样本,更新第一判别器、第二判别器与第三判别器的参数;
将中间标签图像输入第一判别器,非真实眼部标签图像输入第二判别器,非匹配眼部标签图像对输入第三判别器,根据第一判别器输出的判别值与第一正标签值间的偏差、第二判别器输出的判别值与第二正标签值间的偏差、第三判别器输出的判别值与第三正标签值间的偏差,更新生成器的参数。
在一种实施方式中,网络训练模块1650,被配置为:
基于视线校正样本图像提取中间标签图像;
以正视标签图像为第一判别器的正样本,非正视标签图像与中间标签图像为第一判别器的负样本,以真实眼部标签图像为第二判别器的正样本,非真实眼部标签图像第二判别器的负样本,更新第一判别器与第二判别器的参数;
将中间标签图像输入第一判别器,非真实眼部标签图像输入第二判别器,根据第一判别器输出的判别值与第一正标签值间的偏差、第二判别器输出的判别值与第二正标签值间的偏差,更新生成器的参数。
在一种实施方式中,网络训练模块1650,被配置为:
在根据正视标签图像、非正视标签图像与视线校正样本图像训练生成器与第一判别器,根据真实眼部标签图像与非真实眼部标签图像训练生成器与第二判别器之前,先根据视线校正样本图像与对应的人脸样本图像间的差别,对生成器进行预训练。
本公开的示例性实施方式还提供一种图像视线校正装置。参考图17所示,该图像视线校正装置1700可以包括:
数据获取模块1710,被配置为获取待处理人脸图像,以及获取根据上述用于视线校正的生成对抗网络的训练方法所训练的生成对抗网络中的生成器;
图像生成模块1720,被配置为将待处理人脸图像去除眼部区域后输入生成器,通过生成器输出待处理人脸图像对应的视线校正图像。
本公开的示例性实施方式还提供另一种图像视线校正装置,参考图18所示,该图像视线校正装置1800可以包括:
图像获取模块1810,被配置为获取待处理人脸图像;
图像生成模块1820,被配置为将待处理人脸图像去除眼部区域,并基于去除眼部区域后的待处理人脸图像生成视线校正图像;
图像判别模块1830,被配置为当判别视线校正图像为眼睛正视前方的图像,且视线校正图像中的眼睛为真实眼睛时,输出视线校正图像。
在一种实施方式中,图像判别模块1830,被配置为:
当判别视线校正图像为眼睛正视前方的图像,视线校正图像或视线校正图像中的眼部区域图像为真实图像,且视线校正图像中的左眼、右眼均与待处理人脸图像中被去除的眼部区域匹配时,输出视线校正图像。
上述装置中各部分的细节在方法部分实施方式中已经详细说明,因而不再赘述。
本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。在一种实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。
Claims (19)
1.一种用于视线校正的生成对抗网络的训练方法,其特征在于,所述生成对抗网络包括生成器、第一判别器与第二判别器;所述方法包括:
获取多张人脸样本图像;
将所述人脸样本图像去除眼部区域后输入所述生成器,通过所述生成器输出视线校正样本图像;
基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;所述正视人脸样本图像为眼睛正视前方的所述人脸样本图像,所述非正视人脸样本图像为眼睛未正视前方的所述人脸样本图像;
基于所述人脸样本图像与所述视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;
根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器。
2.根据权利要求1所述的方法,其特征在于,所述基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像,包括:
从所述正视人脸样本图像中截取包含眼睛的局部区域图像,得到所述正视标签图像,从所述非正视人脸样本图像中截取包含眼睛的局部区域图像,得到所述非正视标签图像。
3.根据权利要求1所述的方法,其特征在于,所述根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,包括:
基于所述视线校正样本图像提取中间标签图像;
以所述正视标签图像为正样本,所述非正视标签图像与所述中间标签图像为负样本,训练所述第一判别器;
以所述中间标签图像为正样本,训练所述生成器。
4.根据权利要求1所述的方法,其特征在于,所述基于所述人脸样本图像与所述视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像,包括:
从所述人脸样本图像中截取包含眼睛的局部区域图像,得到所述真实眼部标签图像,从所述视线校正样本图像中截取包含眼睛的局部区域图像,得到所述非真实眼部标签图像。
5.根据权利要求4所述的方法,其特征在于,所述根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器,包括:
以所述真实眼部标签图像为正样本,所述非真实眼部标签图像为负样本,训练所述第二判别器;
以所述非真实眼部标签图像为正样本,训练所述生成器。
6.根据权利要求4所述的方法,其特征在于,所述从所述人脸样本图像中截取包含眼睛的局部区域图像,得到所述真实眼部标签图像,从所述视线校正样本图像中截取包含眼睛的局部区域图像,得到所述非真实眼部标签图像,包括:
从所述人脸样本图像中截取包含单只眼睛的局部区域图像,得到所述真实眼部标签图像,从所述视线校正样本图像中截取包含单只眼睛的局部区域图像,得到所述非真实眼部标签图像。
7.根据权利要求6所述的方法,其特征在于,所述生成对抗网络还包括第三判别器;所述方法还包括:
将属于同一张人脸的两张所述真实眼部标签图像形成匹配眼部标签图像对;
将一张所述真实眼部标签图像与一张对应的所述非真实眼部标签图像形成非匹配眼部标签图像对,其中,所述真实眼部标签图像所属的人脸样本图像经过去除眼部区域与所述生成器的处理后输出的图像为所述真实眼部标签图像对应的所述非真实眼部标签图像所属的视线校正样本图像;
根据所述匹配眼部标签图像对与所述非匹配眼部标签图像对训练所述生成器与所述第三判别器。
8.根据权利要求7所述的方法,其特征在于,所述根据所述匹配眼部标签图像对与所述非匹配眼部标签图像对训练所述生成器与所述第三判别器,包括:
以所述匹配眼部标签图像对为正样本,所述非匹配眼部标签图像对为负样本,训练所述第三判别器;
以所述非匹配眼部标签图像对为正样本,训练所述生成器。
9.根据权利要求7所述的方法,其特征在于,所述根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器,与所述根据所述匹配眼部标签图像对与所述非匹配眼部标签图像对训练所述生成器与所述第三判别器,包括:
基于所述视线校正样本图像提取中间标签图像;
以所述正视标签图像为所述第一判别器的正样本,所述非正视标签图像与所述中间标签图像为所述第一判别器的负样本,以所述真实眼部标签图像为所述第二判别器的正样本,所述非真实眼部标签图像所述第二判别器的负样本,以所述匹配眼部标签图像对为所述第三判别器的正样本,所述非匹配眼部标签图像对为所述第三判别器的负样本,更新所述第一判别器、所述第二判别器与所述第三判别器的参数;
将所述中间标签图像输入所述第一判别器,所述非真实眼部标签图像输入所述第二判别器,所述非匹配眼部标签图像对输入所述第三判别器,根据所述第一判别器输出的判别值与第一正标签值间的偏差、所述第二判别器输出的判别值与第二正标签值间的偏差、所述第三判别器输出的判别值与第三正标签值间的偏差,更新所述生成器的参数。
10.根据权利要求1所述的方法,其特征在于,所述根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器,包括:
基于所述视线校正样本图像提取中间标签图像;
以所述正视标签图像为所述第一判别器的正样本,所述非正视标签图像与所述中间标签图像为所述第一判别器的负样本,以所述真实眼部标签图像为所述第二判别器的正样本,所述非真实眼部标签图像所述第二判别器的负样本,更新所述第一判别器与所述第二判别器的参数;
将所述中间标签图像输入所述第一判别器,所述非真实眼部标签图像输入所述第二判别器,根据所述第一判别器输出的判别值与第一正标签值间的偏差、所述第二判别器输出的判别值与第二正标签值间的偏差,更新所述生成器的参数。
11.根据权利要求1所述的方法,其特征在于,在根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器之前,所述方法还包括:
根据所述视线校正样本图像与对应的所述人脸样本图像间的偏差,对所述生成器进行预训练。
12.一种图像视线校正方法,其特征在于,包括:
获取待处理人脸图像,以及获取根据权利要求1至11任一项所述的用于视线校正的生成对抗网络的训练方法所训练的生成对抗网络中的生成器;
将所述待处理人脸图像去除眼部区域后输入所述生成器,通过所述生成器输出所述待处理人脸图像对应的视线校正图像。
13.一种图像视线校正方法,其特征在于,包括:
获取待处理人脸图像;
将所述待处理人脸图像去除眼部区域,并基于去除眼部区域后的所述待处理人脸图像生成视线校正图像;
当判别所述视线校正图像为眼睛正视前方的图像,且所述视线校正图像中的眼睛为真实眼睛时,输出所述视线校正图像。
14.根据权利要求13所述的方法,其特征在于,所述当判别所述视线校正图像为眼睛正视前方的图像,且所述视线校正图像中的眼睛为真实眼睛时,输出所述视线校正图像,包括:
当判别所述视线校正图像为眼睛正视前方的图像,所述视线校正图像或所述视线校正图像中的眼部区域图像为真实图像,且所述视线校正图像中的左眼、右眼均与所述待处理人脸图像中被去除的眼部区域匹配时,输出所述视线校正图像。
15.一种用于视线校正的生成对抗网络的训练装置,其特征在于,所述生成对抗网络包括生成器、第一判别器与第二判别器;所述装置包括:
图像获取模块,被配置为获取多张人脸样本图像;
图像生成模块,被配置为将所述人脸样本图像去除眼部区域后输入所述生成器,通过所述生成器输出视线校正样本图像;
第一提取模块,被配置为基于正视人脸样本图像提取正视标签图像,以及基于非正视人脸样本图像提取非正视标签图像;所述正视人脸样本图像为眼睛正视前方的所述人脸样本图像,所述非正视人脸样本图像为眼睛未正视前方的所述人脸样本图像;
第二提取模块,被配置为基于所述人脸样本图像与所述视线校正样本图像提取真实眼部标签图像与非真实眼部标签图像;
网络训练模块,被配置为根据所述正视标签图像、所述非正视标签图像与所述视线校正样本图像训练所述生成器与所述第一判别器,根据所述真实眼部标签图像与所述非真实眼部标签图像训练所述生成器与所述第二判别器。
16.一种图像视线校正装置,其特征在于,包括:
数据获取模块,被配置为获取待处理人脸图像,以及获取根据权利要求1至11任一项所述的用于视线校正的生成对抗网络的训练方法所训练的生成对抗网络中的生成器;
图像生成模块,被配置为将所述待处理人脸图像去除眼部区域后输入所述生成器,通过所述生成器输出所述待处理人脸图像对应的视线校正图像。
17.一种图像视线校正装置,其特征在于,包括:
图像获取模块,被配置为获取待处理人脸图像;
图像生成模块,被配置为将所述待处理人脸图像去除眼部区域,并基于去除眼部区域后的所述待处理人脸图像生成视线校正图像;
图像判别模块,被配置为当判别所述视线校正图像为眼睛正视前方的图像,且所述视线校正图像中的眼睛为真实眼睛时,输出所述视线校正图像。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至14任一项所述的方法。
19.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至14任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110758908.9A CN113343931A (zh) | 2021-07-05 | 2021-07-05 | 生成对抗网络的训练方法、图像视线校正方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110758908.9A CN113343931A (zh) | 2021-07-05 | 2021-07-05 | 生成对抗网络的训练方法、图像视线校正方法与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113343931A true CN113343931A (zh) | 2021-09-03 |
Family
ID=77482646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110758908.9A Pending CN113343931A (zh) | 2021-07-05 | 2021-07-05 | 生成对抗网络的训练方法、图像视线校正方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113343931A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113822245A (zh) * | 2021-11-22 | 2021-12-21 | 杭州魔点科技有限公司 | 人脸识别方法、电子设备和介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109376582A (zh) * | 2018-09-04 | 2019-02-22 | 电子科技大学 | 一种基于生成对抗网络的交互式人脸卡通方法 |
CN109978804A (zh) * | 2019-03-08 | 2019-07-05 | 清华大学 | 基于深度学习的人眼视线矫正方法及系统 |
US20190266701A1 (en) * | 2019-03-14 | 2019-08-29 | Intel Corporation | Generating gaze corrected images using bidirectionally trained network |
CN110738161A (zh) * | 2019-10-12 | 2020-01-31 | 电子科技大学 | 一种基于改进生成式对抗网络的人脸图像矫正方法 |
CN111353336A (zh) * | 2018-12-21 | 2020-06-30 | 华为技术有限公司 | 图像处理方法、装置及设备 |
CN111652827A (zh) * | 2020-04-24 | 2020-09-11 | 山东大学 | 一种基于生成对抗网络的正面人脸合成方法及系统 |
CN111860362A (zh) * | 2020-07-24 | 2020-10-30 | 北京百度网讯科技有限公司 | 生成人脸图像校正模型及校正人脸图像的方法和装置 |
US20210097644A1 (en) * | 2019-09-30 | 2021-04-01 | Microsoft Technology Licensing, Llc | Gaze adjustment and enhancement for eye images |
CN112733794A (zh) * | 2021-01-22 | 2021-04-30 | 腾讯科技(深圳)有限公司 | 人脸图像的视线矫正方法、装置、设备及存储介质 |
CN112733795A (zh) * | 2021-01-22 | 2021-04-30 | 腾讯科技(深圳)有限公司 | 人脸图像的视线矫正方法、装置、设备及存储介质 |
-
2021
- 2021-07-05 CN CN202110758908.9A patent/CN113343931A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109376582A (zh) * | 2018-09-04 | 2019-02-22 | 电子科技大学 | 一种基于生成对抗网络的交互式人脸卡通方法 |
CN111353336A (zh) * | 2018-12-21 | 2020-06-30 | 华为技术有限公司 | 图像处理方法、装置及设备 |
CN109978804A (zh) * | 2019-03-08 | 2019-07-05 | 清华大学 | 基于深度学习的人眼视线矫正方法及系统 |
US20190266701A1 (en) * | 2019-03-14 | 2019-08-29 | Intel Corporation | Generating gaze corrected images using bidirectionally trained network |
US20210097644A1 (en) * | 2019-09-30 | 2021-04-01 | Microsoft Technology Licensing, Llc | Gaze adjustment and enhancement for eye images |
CN110738161A (zh) * | 2019-10-12 | 2020-01-31 | 电子科技大学 | 一种基于改进生成式对抗网络的人脸图像矫正方法 |
CN111652827A (zh) * | 2020-04-24 | 2020-09-11 | 山东大学 | 一种基于生成对抗网络的正面人脸合成方法及系统 |
CN111860362A (zh) * | 2020-07-24 | 2020-10-30 | 北京百度网讯科技有限公司 | 生成人脸图像校正模型及校正人脸图像的方法和装置 |
CN112733794A (zh) * | 2021-01-22 | 2021-04-30 | 腾讯科技(深圳)有限公司 | 人脸图像的视线矫正方法、装置、设备及存储介质 |
CN112733795A (zh) * | 2021-01-22 | 2021-04-30 | 腾讯科技(深圳)有限公司 | 人脸图像的视线矫正方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
MASATAKA SEO ET AL.: "High-Resolution Gaze-Corrected Image Generation based on Combined Conditional GAN and Residual Dense Network", 《2020 IEEE INTERNATIONAL CONFERENCE ON CONSUMER ELECTRONICS (ICCE)》, 23 March 2020 (2020-03-23), pages 1 - 5 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113822245A (zh) * | 2021-11-22 | 2021-12-21 | 杭州魔点科技有限公司 | 人脸识别方法、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111754415B (zh) | 人脸图像处理方法及装置、图像设备及存储介质 | |
CN106682632B (zh) | 用于处理人脸图像的方法和装置 | |
CN110956691A (zh) | 一种三维人脸重建方法、装置、设备及存储介质 | |
CN111985281B (zh) | 图像生成模型的生成方法、装置及图像生成方法、装置 | |
CN113507627B (zh) | 视频生成方法、装置、电子设备及存储介质 | |
US10499097B2 (en) | Methods, systems, and media for detecting abusive stereoscopic videos by generating fingerprints for multiple portions of a video frame | |
WO2021066907A1 (en) | Gaze adjustment and enhancement for eye images | |
CN110674759A (zh) | 一种基于深度图的单目人脸活体检测方法、装置及设备 | |
CN115171199B (zh) | 图像处理方法、装置及计算机设备、存储介质 | |
Nguyen et al. | Deep visual saliency on stereoscopic images | |
CN110570383A (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN114239717A (zh) | 模型训练方法、图像处理方法及装置、电子设备、介质 | |
CN116110100A (zh) | 一种人脸识别方法、装置、计算机设备及存储介质 | |
CN113343931A (zh) | 生成对抗网络的训练方法、图像视线校正方法与装置 | |
CN112241940B (zh) | 一种多张多聚焦图像融合方法及装置 | |
CN113240598A (zh) | 人脸图像去模糊方法、人脸图像去模糊装置、介质与设备 | |
CN113222857A (zh) | 图像处理方法、模型的训练方法及装置、介质和电子设备 | |
US20230237630A1 (en) | Image processing method and apparatus | |
CN113538254A (zh) | 图像恢复方法、装置、电子设备及计算机可读存储介质 | |
CN113031813A (zh) | 指令信息获取方法及装置、可读存储介质、电子设备 | |
WO2023149135A1 (ja) | 画像処理装置、画像処理方法及びプログラム | |
CN116664407A (zh) | 基于三元组非配对学习的人脸融合超分辨率方法及系统 | |
CN109711286B (zh) | 一种基于人工视网膜空间感知的控制方法及装置 | |
CN113362243A (zh) | 模型训练方法、图像处理方法及装置、介质和电子设备 | |
CN115035219A (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 |