CN114187165A - 图像处理方法和装置 - Google Patents
图像处理方法和装置 Download PDFInfo
- Publication number
- CN114187165A CN114187165A CN202111320264.1A CN202111320264A CN114187165A CN 114187165 A CN114187165 A CN 114187165A CN 202111320264 A CN202111320264 A CN 202111320264A CN 114187165 A CN114187165 A CN 114187165A
- Authority
- CN
- China
- Prior art keywords
- vector
- image
- image processing
- model
- head portrait
- 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 22
- 239000013598 vector Substances 0.000 claims abstract description 114
- 238000012549 training Methods 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 43
- 230000004927 fusion Effects 0.000 claims abstract description 13
- 238000012986 modification Methods 0.000 claims abstract description 9
- 230000004048 modification Effects 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 27
- 230000015654 memory Effects 0.000 claims description 22
- 230000001133 acceleration Effects 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 5
- 230000007704 transition Effects 0.000 claims description 5
- 210000003128 head Anatomy 0.000 description 44
- 238000013528 artificial neural network Methods 0.000 description 19
- 238000000034 method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 210000000887 face Anatomy 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000036544 posture Effects 0.000 description 3
- 230000001815 facial effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 241000320126 Pseudomugilidae Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000037308 hair color Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000004279 orbit Anatomy 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000011265 semifinished product Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 210000000216 zygoma Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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/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
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
公开了一种图像处理方法和装置。该图像处理方法包括:从实景图像中提取人物头像并输入给编码器,以获得第一向量;训练编辑器对第一向量进行修改,以获得第二向量,其中,所述修改参考基于用户需求构建的自然语言格式的描述文本,并且基于第二向量生成的人物头像与所述描述文本的接近程度达到设定要求;将第二向量提供给生成指定图像处理模型,以得到修正头像;将修正头像和实景图像中的人物头像融合,以获得新的实景图像。和现有技术相比,本公开实施例通过自然语言监督编辑器对头像的隐变量进行编辑以生成符合要求的人物头像,并通过头像融合获得的新的实景图像的自然程度。
Description
技术领域
本公开涉及神经网络和图像处理结合的应用领域,具体而言,涉及一种图像处理方法和装置。
背景技术
对于企业来说,已经拍摄好的物料(包括海报、视频、宣传单等等),如果重新进行拍摄则需要花费大量的人力物力,但在某些情况下,又不得不拍摄新的物料,例如产品进入一个新的国家,往往需要采用当地的模特拍摄新的宣传海报。
随着神经网络的快速应用,利用图像处理模型已经能够生成高清的人脸图像,但完成实景模特的人物头像生成和替换仍面临以下几个困难:1)原有的物料中模特往往有着特定的姿势,为了保证好的替换效果,如何可控地生成相同姿势下的人脸是一个难点;2)不同的需求方对人物形象有着不同的要求,如脸型,发色,眼睛等,如何生成对应要求的人物头像是另一难点。
发明内容
有鉴于此,本公开提供一种图像处理方法和装置,以可控地生成人物头像并替换掉实景模特的人物头像。
根据本公开实施例的第一方面,提供一种图像处理方法,包括:
从实景图像中提取人物头像并输入给编码器,以获得第一向量;
训练编辑器对所述第一向量进行修改,以获得第二向量,其中,所述修改参考基于用户需求构建的自然语言格式的描述文本,并且基于所述第二向量生成的人物头像与所述描述文本的接近程度达到设定要求;
将所述第二向量提供给指定图像处理模型,以得到修正头像;
基于所述修正头像和所述实景图像中的人物头像融合,以获得新的实景图像。
在一些实施例中,所述从实景图像中提取人物头像包括:利用人脸关键点检测人脸的多个关键点并据此截取所述人物头像。
在一些实施例中,所述从实景图像中提取人物头像还包括:根据检测到的人脸的关键点将脸部转正对齐。
在一些实施例中,所述图像处理方法还包括:
从图片库获取与所述描述文本部分相符的多个样本头像并输入给编码器,以获得多个第三向量;
则在所述训练编辑器对所述第一向量进行修改的步骤中,基于所述多个第三向量与所述第二向量之间的欧式距离建立损失函数。
在一些实施例中,所述编辑器、所述指定图像处理模型、文本编码器、图像编码器和图文相似度模型组成第一网络结构,通过对所述第一网络结构进行训练来训练所述编辑器,并且,所述第一网络结构的损失函数基于以下项目构建:所述第二向量和所述第一向量之间的欧式距离、所述指定图像处理模型输出的重建头像和所述实景图像的人物头像之间的人脸相似度以及所述描述文本与所述指定图像处理模型输出的重建头像之间的图文相关性。
在一些实施例中,所述指定图像处理模型为生成对抗网络中的生成模型,所述第一向量和所述第二向量符合生成对抗网络隐空间的隐变量的要求。
在一些实施例中,所述基于所述修正头像和所述实景图像中的人物头像融合包括:采用二次重建和平滑过渡的方式进行头像融合。
在一些实施例中,所述描述文本来自于用户对模特的要求。
根据本公开实施例的第二方面,提供一种图像处理装置,包括:
提取编码单元,用于从实景图像中提取所述人物头像并输入给编码器,以获得第一向量,所述第一向量符合生成对抗网络隐空间隐变量的要求;
编辑器训练单元,用于训练编辑器对所述第一向量进行修改,以获得第二向量,其中,所述修改参考基于用户需求构建的自然语言格式的描述文本,并且基于所述第二向量生成的人物头像与所述描述文本的接近程度达到设定要求;
图像生成单元,用于将所述第二向量提供给生成对抗网络模型,以得到修正头像;
图像融合单元,用于基于所述修正头像和所述实景图像中的人物头像融合,以获得新的实景图像。
在一些实施例中,所述编辑器训练单元采用的损失函数基于多个第三向量与所述第二向量的欧式距离建立,所述多个第三向量通过以下步骤得到:从图片库获取与所述描述文本部分相符的多个样本头像并输入给编码器,以获得所述多个第三向量。
在一些实施例中,所述编辑器训练单元在第一网络结构上训练,所述第一网络结构包括:所述编辑器、生成对抗网络的生成模型、文本编码器、图像编码器和图文相似度模型,并且,所述编辑器训练单元采用的损失函数基于以下项目构建:所述第二向量和所述第一向量的欧式距离、所述生成对抗网络的生成模型输出的重建头像和所述实景图像的人物头像的人脸相似度以及所述描述与所述生成对抗网络的生成模型输出的重建头像的图文相关性。
根据本公开实施例的第三方面,提供一种服务器,包括存储器、调度器和多个模型加速单元,所述存储器还存储可由所述处理器和所述多个模型加速单元执行的计算机指令,所述计算机指令被执行时,实现上述任一项所述的图像处理方法。
根据本公开实施例的第四方面,提供一种计算机可读介质,所述计算机可读介质存储有可由电子设备执行的计算机指令,所述计算机指令被执行时,实现上述任一项所述的图像处理方法。
本公开实施例旨在按照指定要求完成实景图像中的人物头像的替换,为此,从以下三个方面进行改进:首先由于从图像层面对人脸的表示无法将各种属性特征解耦开从而不利于新的人物头像的生成,所以采用将人物头像映射到生成对抗网络隐空间的方式来表征,有利于后面对人物头像中的人脸属性进行修改;第二,通过自然语言监督编辑器对与人物头像对应的隐变量进行编辑以生成符合要求的人物头像,如此实现了自然语言对人物头像生成的控制;第三,利用生成对抗网络的连续插值隐空间的特点,对拼接不自然的融合头像进行二次重建实现平滑的融合效果。
上述方案能够实现较为自然地将实景图像中的人物头像替换为按照指定要求构建的人物头像。
附图说明
通过参考以下附图对本公开实施例的描述,本公开的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1是应用服务的部署示意图;
图2是示例性的服务器的示意图;
图3示出了电商系统的部分网购页面;
图3是一个示例性模型的网络结构的示意图;
图4是本公开实施例提供一种图像处理方法的流程图;
图5示出了生成对抗网络的原理示意图;
图5是本公开一实施例提供的针对特定网络结构的模型训练装置的示意图。
图6是残差网络模型的示意图;
图7是为训练编辑器搭建的网络结构的示意图;
图8是本公开一实施例提供的图像处理装置的示意图。
具体实施方式
以下基于实施例对本公开进行描述,但是本公开并不仅仅限于这些实施例。在下文对本公开的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本公开。为了避免混淆本公开的实质,公知的方法、过程、流程没有详细叙述。另外附图不一定是按比例绘制的。
关于神经网络,一般指人工神经网络(Artificial Neural Network,简写为ANN),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法网络。一个经典的神经网络,也是最简单的神经网络结构,包含三个层次:输入层、输出层和中间层(又称隐藏层)。输入层、输出层和中间层又各自包括多个节点。节点是神经网络中的最小处理单元。经由大量、简单功能的神节点的广泛的互相连接能够形成非常复杂的神经网络结构。在神经网络中,将节点数学化,产生节点的数学模型,神经网络中的大量的节点的数学模型构成了神经网络模型。
关于预训练(Pre-trained),众所周知,模型训练通常需要大量资源,包括但不局限于大量需要标注的训练样本以及执行训练的计算机资源,因此模型训练并不容易执行。而通过预训练,可提供具有较优权值参数的“半成品”的模型,我们通常将其称为预训练模型。在将预训练模型应用到真实场景下之前,还可采用真实场景下采集到的样本数据对预训练模型进行一个增量训练,通过增量训练,实现对预训练模型中的权值参数进行微调,从而得到适用于真实场景下的“成品”模型,我们通常将其称为已经训练好的模型。
关于模型加速单元,是包括诸如NPU(嵌入式神经网络处理器)、TPU(张量处理单元)等各种由不同公司生产的、专用于特定神经网络模型的硬件执行单元。
图1是应用服务的部署示意图。如图上所示,部署图100包括经由网络101联通的终端103和服务器集群102。
网络101为基于交换信号实现的各种通信技术之一或多种通信技术的组合,包括但不限于采用电和/或光传导线缆的有线技术,以及采用红外、射频和/或其它形式的无线技术。在不同的应用场景下,网络101可以是互联网、广域网或局域网,可以是有线网络或无线网络。例如网络101为公司内部的局域网。
服务器集群102由多个物理服务器构成。终端103可以是智能手机、平板电脑、笔记本电脑、台式计算机等电子设备。服务器集群102上部署各种应用系统,终端103可以经由网络101获取这些应用系统提供的服务。
随着云计算的发展,服务器集群102可以部署云服务系统。云服务系统能够汇聚云服务器集群中的软硬件资源,并根据来自终端103的请求提供软硬件服务。例如,云服务系统可以向用户提供一个具有指定配置的服务器(可能是虚拟机),其中指定配置包括诸如处理器型号、内存大小、硬盘大小、操作系统类型、在操作系统之上部署的各种软件(例如文本处理软件、视频播放软件)类型,等等,用户通过终端103远程访问并使用这台服务器完成多种工作。再例如,将特定应用系统部署在服务器(可能是虚拟机),并向用户提供服务入口,以便于用户可通过服务入口获取应用系统提供的相应功能。
图2是示例性的服务器的示意图。如图上所示,服务器200可以包括但不限于:经由总线205耦接的调度器201、存储单元203、I/O接口204、现场可编程门阵列(FPGA)208、图形处理器(GPU)202、神经网络加速单元(NPU)202和数据传输单元(DTU)207。
存储单元203可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)和/或高速缓存存储单元。存储单元203还可以包括非易失性存储单元形式的可读介质,例如,只读存储单元(ROM)、闪存存储器和各种磁盘存储器。
存储单元203可以存储各种程序模块和数据,各种程序模块包括操作系统、提供诸如文本处理、视频播放、软件编辑和编译等功能的应用程序。这些应用程序的可执行代码被调度器201从存储单元203中读出并执行,以达到这些程序模块预定提供的功能。调度器201一般为CPU。
总线205可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
服务器200可以与一个或多个外部设备(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该服务器200交互的设备通信,和/或与使得服务器200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口204进行。并且,服务器200还可以通过网络适配器(未示出)与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。例如通过网络适配器,图1中的终端103可访问服务器200。应当明白,尽管图中未示出,基于服务器200可使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
神经网络加速单元(NPU)202采用数据驱动并行计算的架构,用于处理各神经网络节点的大量运算(例如卷积、池化等)的处理单元。由于各神经网络节点的大量运算(例如卷积、池化等)中的数据和中间结果在整个计算过程中紧密联系,会被经常用到,使用现有的CPU构架,由于CPU核内的内存容量很小,因此要大量频繁访问核外存储器,造成处理的低效。采用NPU,每个核中具有适于神经网络计算用到的存储容量的片上内存,避免频繁访问核外部的存储器,就能大大提高处理效率,提高计算性能。
数据传输单元(DTU)207是专门用于将串口数据转换为IP数据或将IP数据转换为串口数据通过无线通信网络进行传送的无线终端设备。DTU的主要功能是把远端设备的数据通过无线的方式传送回后台中心。在前端,DTU和客户的设备通过接口相连。DTU上电运行后先注册到移动的GPRS网络,然后去和设置在DTU中的后台中心建立套接字连接。后台中心作为套接字连接的服务端,DTU是套接字连接的客户端。因此DTU和后台软件配合一起使用,在建立连接后,前端的设备和后台的中心就可以通过DTU进行无线数据传输。
图形处理器(GPU)206是专门做图像和图形相关运算工作的微处理器。GPU开发了CPU中计算单元的空间过少的缺点,采用大量用于专门做图形计算的计算单元,使显卡减少了对CPU的依赖,承担了CPU原来承担的一些计算密集的图形图像处理工作。
现场可编程门阵列(FPGA)208是在PAL、GAL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
需要说明的是,上文以及图2仅仅用于对系统中的服务器进行示例性的描述,而不用于限制服务器的具体实现方式。服务器还可以包括其它组成部分,且上文描述的服务器中的各个部分也可以在实际应用中适当被省略。
图3示出了电商系统的部分网购页面。在图3中,部分网购页面301包含特定产品的图文介绍信息,其中的海报设计图3011是一个国内模特的实景图像。用户希望使用国外模特代替海报中的中国模特,但又无法重新拍摄海报。在此情况下,本公开实施例提供一种替换实景图像中的人物头像的方法,该方法构建出一个虚拟的国外模特的人物头像,该虚构的国外模特例如具有一些特定脸部特征,例如眼眶深、蓝眼睛等,然后用该虚拟的人物头像替换海报设计图3011中的国内模特的头像,如此,看起来就是一个国外模特拍摄了海报。该方法可通过计算机程序实施为提供上述图像处理服务的应用系统,并可将计算机程序部署在图1所示的服务器集群102上以将上述图像处理服务提供给经由终端103访问的用户。
当然还存在其他场景需要进行类似的操作,例如,在影视制作领域,对于已经拍摄完结的电影或电视剧,需要替换其中的角色。在此情况下,则可以采用本公开实施例提供的方法构建出一个虚拟的人物头像,并以此替换角色头像。
图4是本公开实施例提供一种图像处理方法的流程图。该方法用于从实景图像中替换人物图像。该方法具体包括以下步骤。
在步骤S01中,从实景图像中提取人物头像并输入给编码器,以获得第一向量。
在一些实施例中,可首先利用人脸关键点检测提取人脸的多个关键点并截取人脸,然后根据检测人脸的关键点将脸部转正对齐,对齐的方式是根据两个姿态下对应关键点的坐标求解仿射变换矩阵,然后利用仿射变换矩阵将人脸转正对齐,最后将转正对齐的人脸通过编码器编码为第一向量。
在一些实施例中,第一向量符合生成对抗网络隐空间的隐变量的要求。生成对抗网络可以是如StyleGAN、BigGAN等任一图像生成对抗网络,该生成对抗网络通过大量高清人脸进行训练。图5为生成对抗网络的原理示意图。如图上所示,在训练过程中,生成模型501接收图片向量,并生成重建图片。重建图片和真实图片都提供给判定模型502,判定模型502判定是重建图片还是真实图片。步骤503基于判定模型502的输出结果是否正确同时对生成模型501和判定模型502的权值参数进行调整:如果判定模型502判断正确,则调整生成模型501的权值参数使得生成的重建图片更加逼真,如果判定模型502判断错误,则调整判定模型502的权值参数从而避免下次判断出错。训练持续进行直到进入一个均衡和谐的状态。最终得到一个训练好的生成模型和判定模型。
在一些实施例中,编码器可以经由任一卷积神经网络训练得到。在训练过程中,通过卷积神经网络将图像转化为生成对抗网络的输入向量,然后输入向量提供给一个已经训练好的生成模型,以得到重建人脸,再基于损失函数来调整编码器的权值参数。损失函数包括人脸识别相似度损失函数以及感知损失函数(Perceptual loss)。还可基于重建人脸和原始人脸之间的欧式距离构建损失函数。人脸识别相似度,是利用人脸识别模型提取人脸特征求余弦相似度作为损失函数。感知损失函数,是通过预训练的卷积神经网络提取图像特征并将图像特征之间的欧式距离作为损失函数。
在步骤S02中,训练编辑器对第一向量进行修改,以获得第二向量。
在一些实施例中,编辑器是可以是一个预训练的神经网络模型,其输入为第一向量,输出是基于第一向量修改后的第二向量,第一向量和第二向量是符合指定图像处理模型(例如为上文提及的生成对抗网络中的生成模型)的输入要求的向量,并且将第一向量和第二向量分别输入给指定图像处理模型,都可以产生一个人物头像,第一向量产生的人物头像与原实景图像中提取的人物头像大体上一致。
本步骤中的对编辑器的训练参考了输入的自然语言格式的描述文本,而通过训练,最终得到与描述文本的接近程度达到设定要求的第二向量,也就是,将最终得到的第二向量输入给指定图像处理模型产生的人物头像与描述文本非常接近。这里所说的描述文本来自于用户需求,例如,在图3的描述中,用户针对海报设计图中的模特提出的具体要求。
应理解,通常的模型训练是在实验室中进行,然后将训练好的模型放在实际场景中使用。但是本公开中,必须在实际场景中针对每个案例提供的描述文本训练编辑器,才能得到满足该描述文本的编辑器和第二向量。
在一些实施例中,可根据用户提供的描述文本从图片库选出与描述文本部分相符的多个样本头像,即每个样本头像的一部分(例如皮肤颜色、眼睛形状、大小和距离、颧骨)与描述文本的一些要求相符;然后将多个样本图像进行步骤S01中所提及的一些图像预处理,包括而不限于:可首先利用人脸关键点检测提取人脸的多个关键点并截取人脸,然后根据检测人脸的关键点将脸部转正对齐;再然后将图像预处理之后的人物头像通过编码器编码为多个第三向量,可以根据每个样本头像与描述文本相符的信息将多个第三向量整合成一个第四向量,同时基于第二向量与第四向量之间的欧式距离建立损失函数,训练时,当损失函数收敛到设定程度时,表征基于当前的第二向量产生的人物图像与描述文本要所要求的人物头像非常接近,此时可停止训练,并将当前的第二向量作为本步骤最终输出的第二向量。
在一些实施例中,可构建如图7所示的网络结构。该网络结构由编辑器701、生成对抗网络中的生成模型702、图像编码器703和文本编码器704以及图文相似度模型705组成。生成模型702、图像编码器703和文本编码器704以及图文相似度模型705可以全部都是已经训练好的模型。构建这个网络结构是为了训练编辑器701。文本编码器704将输入的描述文本转换为文本向量。图像编码器703将输入的重建图像转换为图像向量。图文相似度模型705基于输入的文本向量和图像向量输出相似度指标。这里用到的损失函数包含三个部分:修改后的第二向量和原始的第一向量的欧式距离、人脸识别相似度以及图文相关程度损失。通过这样的损失函数不断地调整编辑器的权重系数。这里文本编码器704、图像编码器703和图文相似度模型705集成在一起作为一个模型进行训练。
在一些实施例中,图7所示的网络结构中,图文相关模型可采用CLIP、M6等多模态预训练模型。损失函数保持不变,通过这样的损失函数同时训练编辑器和图文相关模型的权重系数。其中,CLIP(Contrastive Language-Image Pre-Training)是一种图文相关性匹配模型。M6(Multi-Modality to Multi-Modality Multitask Mega-transformer)是一种自研超大规模中文预训练模型。
在一些实施例中,编辑器由多个残差神经网络构成,通过回归得到不同层的偏移量,然后偏移量加上原始的第一向量作为修改后的第二向量。图6示出了一种残差网络模型的结构示意图,如图6所示,该残差网络模型包括至少一个残差模块(图6仅示出了1个),该残差模块包括第一层卷积模块61和第二层卷积模块62,第一层卷积模块61和第二层卷积模块62通过激活函数(ReLU)连接,当该残差模块的输入为X时,经过第一层卷积模块61和第二层卷积模块62的处理,得到F(X),再将X和F(X)相加传递给下一残差模块,该残差模块与下一残差模块也通过RELU连接。
在步骤S03中,将第二向量提供给指定图像处理模型,以得到修正头像。
通过步骤S02,编辑器输出的第二向量输入给指定图像处理模型,该模型产生的人物图像与描述文本的接近程度满足设定要求。指定图像处理模型例如为生成对抗网络中的生成模型,则本步骤将步骤S02输出的第二向量输入给生成对抗网络中的生成模型,由生成对抗网络中的生成模型输出修正图像。
在步骤S04中,将修正头像和实景图像中的人物头像融合,以获得新的实景图像。
在一些实施例中,可直接将将修正图像和实景图像中的人物头像进行拼接,以形成新的实景图像。并且可利用从人脸中检测到的多个关键点进行拼接。
在一些实施例中,为了解决直接将生成人脸进行拼接会出现皮肤颜色不一致以及拼接痕迹明显的问题,提出通过平滑过渡和二次重建的方式进行头像融合。所述平滑过渡包括:对原人脸头像和修正头像中的新人脸进行高斯模糊,对于头部区域的每个位置,采用修正头像中的人脸像素乘以模糊后原人脸像素除以模糊后生成人脸像素,实现皮肤颜色纠正的目的,然后对皮肤颜色纠正后的人脸头像的区域二值掩码(mask)进行高斯滤波,再利用了滤波后的二值掩码对修正头像和原实景图像进行融合。
所述二次重建包括:从融合后的图像再次提取人脸头像,并通过编码器隐射为向量,再通过生成对抗网络的生成模型生成新的人脸头像,最后利用高斯滤波后的区域掩码来合并人脸得到最终效果。
综上所述,本公开实施例旨在按照指定要求完成实景图像中的人物头像的替换,为此,从以下三个方面进行改进:首先由于从图像层面对人脸的表示无法将各种属性特征解耦开从而不利于新的人物头像的生成,所以采用将人物头像映射到生成对抗网络隐空间的方式来表征,有利于后面对人物头像中的人脸属性进行修改;第二,通过自然语言监督编辑器对与人物头像对应的隐变量进行编辑以生成符合要求的人物头像,如此实现了自然语言对人物头像生成的控制;第三,利用生成对抗网络的连续插值隐空间的特点,对拼接不自然的融合头像进行二次重建实现平滑的融合效果。本公开实施例提供的方案能够实现较为自然地将实景图像中的人物头像替换为按照指定要求构建的人物头像。
图8是本公开一实施例提供的图像处理装置的示意图。该图像处理装置包括:提取编码单元801、编辑器训练单元802、图像生成单元803和图像融合单元804。
提取编码单元801用于从实景图像901中提取人物头像并输入给编码器,以获得第一向量903,第一向量903符合生成对抗网络隐空间隐变量的要求。
在一些实施例中,提取编码单元801从实景图像901中首先检测提取人脸的多个(例如68)关键点并截取人脸,然后根据所述多个关键点将脸部转正对齐,对齐的方式是根据两个姿态下对应关键点的坐标求解仿射变换矩阵,然后利用仿射变换矩阵将人脸转正对齐,最后将转正对齐的人脸通过编码器编码为第一向量。
编辑器训练单元802用于训练编辑器对第一向量901进行修改,以获得第二向量904,也就是说,训练的目的是通过编辑器输出满足以下条件的第二向量902:基于第二向量生成的人物头像与用户输入的描述文本902的接近程度达到设定要求。
在一些实施例中,编辑器是可以是一个预训练的神经网络模型,其输入为第一向量,输出是基于第一向量修改后的第二向量,第一向量和第二向量是同一类型的向量,并且将第一向量和第二向量分别输入给图像处理模型,都可以产生一个人物头像,第一向量产生的人物头像与原实景图像中提取的人物头像大体上一致,但是第二向量产生的人物头像则会发生改变。训练编辑器的目的就是通过训练得到满足这样条件的第二向量:将第二向量输入给图像处理模型(例如为生成对抗网络中的生成模型),该模型产生的人物图像与描述文本的接近程度满足设定要求。这里所指的描述文本,即是在图3的描述中,用户针对设计图中的模特提出的具体要求。
图像生成单元803用于将第二向量提供给生成对抗网络,通过生成对抗网络中的生成模型得到修正头像,基于对于编辑器训练单元802的功能描述可知,本单元得到的修正头像与用户输入的描述文本902的接近程度达到设定要求。
在一些实施例中,图像生成单元803是将编辑器训练单元802输出的第二向量输入给生成对抗网络中的生成模型,由生成对抗网络中的生成模型输出修正图像。
图像融合单元804用于基于修正头像和实景图像中的人物头像融合,以获得新的实景图像。
在一些实施例中,由于直接将生成人脸进行拼接会出现皮肤颜色不一致以及拼接痕迹明显的问题,因此提出通过二次重建和平滑过渡的方式进行头像融合。首先利用UNet分割模型和关键点检测得到头发和面部区域并通过仿射变换对齐关键点,对原人脸和新人脸进行高斯模糊,对于头部区域每个位置,再对生成人脸像素乘以模糊后原人脸像素除以模糊后生成人脸像素,实现皮肤颜色纠正的目的,然后对头部的区域mask进行高斯滤波,然后利用了滤波后的mask对生成人脸和原模特进行融合。
应理解,本公开实施例提供的图像处理装置与方法对应,因此在方法中提及的各种实施方式也适用于装置中,这里就不再相对简单的方式描述装置。
本公开各个实施例的实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读介质上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如但不限于为电、磁、光、电磁、红外线或半导体的系统、装置或器件,或其他任意以上的组合。计算机可读存储介质的更具体的例子包括:具体一个或多个导线的电连接,便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器、磁存储器或者上述任意合适的组合。在本文中,计算机可读的存储介质可以是任意包含或存储程序的有形介质,该程序可以被处理单元、装置或者器件使用,或者与其结合使用。
计算机可读信号介质可以包括在基带中或者作为截波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或者其他任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质之外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令系统、装置或器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,以及上述任意合适的组合。
可以以一种或者多种程序设计语言或者组合来编写用于执行本公开实施例的计算机程序代码。所述程序设计语言包括面向对象的程序设计语言,例如JAVA、C++,还可以包括常规的过程式程序设计语言,例如C。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
以上所述仅为本公开的优选实施例,并不用于限制本公开,对于本领域技术人员而言,本公开可以有各种改动和变化。凡在本公开的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (12)
1.一种图像处理方法,包括:
从实景图像中提取人物头像并输入给编码器,以获得第一向量;
训练编辑器对所述第一向量进行修改,以获得第二向量,其中,所述修改参考基于用户需求构建的自然语言格式的描述文本,并且基于所述第二向量生成的人物头像与所述描述文本的接近程度达到设定要求;
将所述第二向量提供给指定图像处理模型,以得到修正头像;
基于所述修正头像和所述实景图像中的人物头像融合,以获得新的实景图像。
2.根据权利要求1所述的图像处理方法,其中,所述从实景图像中提取人物头像包括:利用人脸关键点检测人脸的多个关键点并据此截取所述人物头像。
3.根据权利要求2所述的图像处理方法,其中,所述从实景图像中提取人物头像还包括:根据检测到的人脸的关键点将脸部转正对齐。
4.根据权利要求1所述的图像处理方法,其中,所述图像处理方法还包括:
从图片库获取与所述描述文本部分相符的多个样本头像并输入给编码器,以获得多个第三向量;
则在所述训练编辑器对所述第一向量进行修改的步骤中,基于所述多个第三向量与所述第二向量之间的欧式距离建立损失函数。
5.根据权利要求1所述的图像处理方法,其中,所述编辑器、所述指定图像处理模型、文本编码器、图像编码器和图文相似度模型组成第一网络结构,通过对所述第一网络结构进行训练来训练所述编辑器,并且,所述第一网络结构的损失函数基于以下项目构建:所述第二向量和所述第一向量之间的欧式距离、所述指定图像处理模型输出的重建头像和所述实景图像的人物头像之间的人脸相似度以及所述描述文本与所述指定图像处理模型输出的重建头像之间的图文相关性。
6.根据权利要求1至5任一项所述的图像处理方法,其中,所述指定图像处理模型为生成对抗网络中的生成模型,所述第一向量和所述第二向量符合生成对抗网络隐空间的隐变量的要求。
7.根据权利要求1所述的图像处理方法,所述基于所述修正头像和所述实景图像中的人物头像融合包括:采用二次重建和平滑过渡的方式进行头像融合。
8.一种图像处理装置,包括:
提取编码单元,用于从实景图像中提取所述人物头像并输入给编码器,以获得第一向量,所述第一向量符合生成对抗网络隐空间隐变量的要求;
编辑器训练单元,用于训练编辑器对所述第一向量进行修改,以获得第二向量,其中,所述所述修改参考基于用户需求构建的自然语言格式的描述文本,并且基于所述第二向量生成的人物头像与所述描述文本的接近程度达到设定要求;
图像生成单元,用于将所述第二向量提供给生成对抗网络模型,以得到修正头像;
图像融合单元,用于基于所述修正头像和所述实景图像中的人物头像融合,以获得新的实景图像。
9.根据权利要求8所述的图像处理装置,其中,所述编辑器训练单元采用的损失函数基于多个第三向量与所述第二向量的欧式距离建立,所述多个第三向量通过以下步骤得到:从图片库获取与所述描述文本部分相符的多个样本头像并输入给编码器,以获得所述多个第三向量。
10.根据权利要求8所述的图像处理装置,其中,所述编辑器训练单元在第一网络结构上训练,所述第一网络结构包括:所述编辑器、生成对抗网络的生成模型、文本编码器、图像编码器和图文相似度模型,并且,所述编辑器训练单元采用的损失函数基于以下项目构建:所述第二向量和所述第一向量的欧式距离、所述生成对抗网络的生成模型输出的重建头像和所述实景图像的人物头像的人脸相似度以及所述描述与所述生成对抗网络的生成模型输出的重建头像的图文相关性。
11.一种服务器,包括存储器、调度器和多个模型加速单元,所述存储器还存储可由所述处理器和所述多个模型加速单元执行的计算机指令,所述计算机指令被执行时,实现所述如权利要求1至7任一项所述的图像处理方法。
12.一种计算机可读介质,所述计算机可读介质存储有可由电子设备执行的计算机指令,所述计算机指令被执行时,实现所述如权利要求1至7任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111320264.1A CN114187165A (zh) | 2021-11-09 | 2021-11-09 | 图像处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111320264.1A CN114187165A (zh) | 2021-11-09 | 2021-11-09 | 图像处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114187165A true CN114187165A (zh) | 2022-03-15 |
Family
ID=80540827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111320264.1A Pending CN114187165A (zh) | 2021-11-09 | 2021-11-09 | 图像处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114187165A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115155058A (zh) * | 2022-09-06 | 2022-10-11 | 北京澜舟科技有限公司 | 一种捏脸方法、捏脸系统及存储介质 |
CN115810215A (zh) * | 2023-02-08 | 2023-03-17 | 科大讯飞股份有限公司 | 面部图像生成方法、装置、设备及存储介质 |
CN116935418A (zh) * | 2023-09-15 | 2023-10-24 | 成都索贝数码科技股份有限公司 | 一种三维图文模板自动重组方法、设备及系统 |
CN118015290A (zh) * | 2024-04-08 | 2024-05-10 | 浙江深象智能科技有限公司 | 图像特征处理方法、图像对比方法、模型训练方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110503601A (zh) * | 2019-08-28 | 2019-11-26 | 上海交通大学 | 基于对抗网络的人脸生成图片替换方法及系统 |
CN110889381A (zh) * | 2019-11-29 | 2020-03-17 | 广州华多网络科技有限公司 | 换脸方法、装置、电子设备及存储介质 |
CN111080511A (zh) * | 2019-11-18 | 2020-04-28 | 杭州时光坐标影视传媒股份有限公司 | 一种端到端的高分辨率多特征提取的人脸交换方法 |
CN111275780A (zh) * | 2020-01-09 | 2020-06-12 | 北京搜狐新媒体信息技术有限公司 | 人物图像的生成方法及装置 |
CN112734634A (zh) * | 2021-03-30 | 2021-04-30 | 中国科学院自动化研究所 | 换脸方法、装置、电子设备和存储介质 |
CN112837213A (zh) * | 2021-02-07 | 2021-05-25 | 北京字跳网络技术有限公司 | 脸型调整图像生成方法、模型训练方法、装置和设备 |
CN113420665A (zh) * | 2021-06-23 | 2021-09-21 | 平安国际智慧城市科技股份有限公司 | 对抗人脸图像生成、人脸识别模型训练方法、装置及设备 |
-
2021
- 2021-11-09 CN CN202111320264.1A patent/CN114187165A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110503601A (zh) * | 2019-08-28 | 2019-11-26 | 上海交通大学 | 基于对抗网络的人脸生成图片替换方法及系统 |
CN111080511A (zh) * | 2019-11-18 | 2020-04-28 | 杭州时光坐标影视传媒股份有限公司 | 一种端到端的高分辨率多特征提取的人脸交换方法 |
CN110889381A (zh) * | 2019-11-29 | 2020-03-17 | 广州华多网络科技有限公司 | 换脸方法、装置、电子设备及存储介质 |
CN111275780A (zh) * | 2020-01-09 | 2020-06-12 | 北京搜狐新媒体信息技术有限公司 | 人物图像的生成方法及装置 |
CN112837213A (zh) * | 2021-02-07 | 2021-05-25 | 北京字跳网络技术有限公司 | 脸型调整图像生成方法、模型训练方法、装置和设备 |
CN112734634A (zh) * | 2021-03-30 | 2021-04-30 | 中国科学院自动化研究所 | 换脸方法、装置、电子设备和存储介质 |
CN113420665A (zh) * | 2021-06-23 | 2021-09-21 | 平安国际智慧城市科技股份有限公司 | 对抗人脸图像生成、人脸识别模型训练方法、装置及设备 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115155058A (zh) * | 2022-09-06 | 2022-10-11 | 北京澜舟科技有限公司 | 一种捏脸方法、捏脸系统及存储介质 |
CN115155058B (zh) * | 2022-09-06 | 2023-02-03 | 北京澜舟科技有限公司 | 一种捏脸方法、捏脸系统及存储介质 |
CN115810215A (zh) * | 2023-02-08 | 2023-03-17 | 科大讯飞股份有限公司 | 面部图像生成方法、装置、设备及存储介质 |
CN116935418A (zh) * | 2023-09-15 | 2023-10-24 | 成都索贝数码科技股份有限公司 | 一种三维图文模板自动重组方法、设备及系统 |
CN116935418B (zh) * | 2023-09-15 | 2023-12-05 | 成都索贝数码科技股份有限公司 | 一种三维图文模板自动重组方法、设备及系统 |
CN118015290A (zh) * | 2024-04-08 | 2024-05-10 | 浙江深象智能科技有限公司 | 图像特征处理方法、图像对比方法、模型训练方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7373554B2 (ja) | クロスドメイン画像変換 | |
CN111652828B (zh) | 人脸图像生成方法、装置、设备和介质 | |
CN111401216B (zh) | 图像处理、模型训练方法、装置、计算机设备和存储介质 | |
CN114187165A (zh) | 图像处理方法和装置 | |
WO2021052375A1 (zh) | 目标图像生成方法、装置、服务器及存储介质 | |
CN111489287A (zh) | 图像转换方法、装置、计算机设备和存储介质 | |
CN111553267B (zh) | 图像处理方法、图像处理模型训练方法及设备 | |
CN110490959B (zh) | 三维图像处理方法及装置、虚拟形象生成方法以及电子设备 | |
WO2024109374A1 (zh) | 换脸模型的训练方法、装置、设备、存储介质和程序产品 | |
Li et al. | Learning dual memory dictionaries for blind face restoration | |
CN112036260A (zh) | 一种自然环境下多尺度子块聚合的表情识别方法及系统 | |
CN113808005A (zh) | 一种基于视频驱动的人脸姿态迁移方法及装置 | |
CN113781324A (zh) | 一种老照片修复方法 | |
CN113177892A (zh) | 生成图像修复模型的方法、设备、介质及程序产品 | |
CN118015159A (zh) | 角色视频生成方法、装置、电子设备及存储介质 | |
CN112634413B (zh) | 生成模型和生成3d动画的方法、装置、设备和存储介质 | |
WO2024104144A1 (zh) | 图像合成方法和装置、存储介质及电子设备 | |
Pei et al. | Deepfake generation and detection: A benchmark and survey | |
CN116977547A (zh) | 一种三维人脸重建方法、装置、电子设备和存储介质 | |
CN113822117B (zh) | 一种数据处理方法、设备以及计算机可读存储介质 | |
WO2022252372A1 (zh) | 一种图像处理方法、装置、设备及计算机可读存储介质 | |
CN115578298A (zh) | 一种基于内容感知的深度肖像视频合成方法 | |
Wang et al. | [Retracted] Convolution‐Based Design for Real‐Time Pose Recognition and Character Animation Generation | |
CN114299105A (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
Koumparoulis et al. | Audio-assisted image inpainting for talking faces |
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 |