CN113327191A - 人脸图像合成方法及装置 - Google Patents

人脸图像合成方法及装置 Download PDF

Info

Publication number
CN113327191A
CN113327191A CN202010132570.1A CN202010132570A CN113327191A CN 113327191 A CN113327191 A CN 113327191A CN 202010132570 A CN202010132570 A CN 202010132570A CN 113327191 A CN113327191 A CN 113327191A
Authority
CN
China
Prior art keywords
face image
information
neural network
attribute
vector
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.)
Granted
Application number
CN202010132570.1A
Other languages
English (en)
Other versions
CN113327191B (zh
Inventor
马骁勇
申皓全
王铭学
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010132570.1A priority Critical patent/CN113327191B/zh
Priority to PCT/CN2020/140440 priority patent/WO2021169556A1/zh
Publication of CN113327191A publication Critical patent/CN113327191A/zh
Application granted granted Critical
Publication of CN113327191B publication Critical patent/CN113327191B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本申请提供人脸图像合成方法及装置,涉及人工智能领域,能够基于真实人脸图像进行属性信息修正合成人脸图像,提高合成人脸图像的真实性,并提高合成效率。该方法包括:获取第一属性信息;第一属性信息为待合成人脸图像包含的属性信息。根据第一属性信息,在真实人脸图像库中查找第一人脸图像;第一人脸图像包含第二属性信息,第二属性信息与第一属性信息的重复率满足阈值要求。根据第一属性信息以及第二属性信息,获得属性差异信息;属性差异信息用于表示第一人脸图像与待合成人脸图像之间的属性差异。对第一人脸图像进行面部特征提取,获得第一人脸图像的第一面部特征信息。根据第一面部特征信息以及属性差异信息合成第二人脸图像。

Description

人脸图像合成方法及装置
技术领域
本申请涉及人工智能(artificial intelligence,AI)领域,尤其涉及一种人脸图像合 成方法及装置。
背景技术
人脸图像合成技术广泛应用于拍照娱乐、医疗整形等领域。比如,在拍照娱乐领域,用 户可以对照片的若干属性做出改变,如双眼皮、大眼睛、瘦脸等。又比如,在医疗整形领域, 医生可以根据用户描述,在当前用户照片的基础上进修改生成术后效果图。
目前,人脸图像合成方法主要包括以下两种。第一种是传统图像处理方法,通常的做法 是建立模板库,包含各式各样的五官局部图像。然后画师根据目击者的描述在模板库中选择 五官进行拼接,最后对拼接图像的边缘做平滑处理,生成人脸图像。但是,单纯的五官局部 图像拼接很难保证合成人脸图像的真实性。并且,受到画师和目击者的两次主观影响,合成 人脸图像与实际需求的人脸图像可能存在差距。
第二种是深度学习的方法,利用海量的人脸图像数据,用对抗生成的方法训练深度神经 网络。后续利用训练后的神经网络生成人脸图像。但是,训练后的神经网络无法合成包含用 户指定属性信息的人脸图像。
发明内容
本申请提供的人脸图像合成方法,可以实现基于真实人脸图像进行人脸图像合成,能够 获得满足需求且更加真实的人脸图像,合成效率较高。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种人脸图像合成方法,该方法可以包括:获取第一属性信息; 第一属性信息为待合成人脸图像包含的属性信息。根据第一属性信息,在真实人脸图像库中 查找第一人脸图像;第一人脸图像包含第二属性信息,第二属性信息与第一属性信息的重复 率满足阈值要求。根据第一属性信息以及第二属性信息,获得属性差异信息;属性差异信息 用于表示第一人脸图像与待合成人脸图像之间的属性差异。对第一人脸图像进行面部特征提 取,获得第一人脸图像的第一面部特征信息。根据第一面部特征信息以及属性差异信息合成 第二人脸图像。
其中,第一属性信息可以由用户采集后输入人脸图像合成设备,由人脸图像合成设备基 于属性信息进行人脸图像合成。示例性的,用户采集第一属性信息的过程包括:人脸图像合 成设备根据合成人脸图像需要的全部属性信息创建人脸图像属性信息调查表,将该人脸图像 属性信息调查表发送至终端设备,由用户在终端设备上填写后返回人脸图像合成设备,进而 人脸图像合成设备获得属性信息。如此,人脸图像合成设备可以从多维度采集待合成人脸图 像的属性信息,使得最后合成人脸图像更加接近需要的人脸图像。
属性差异信息用于表示查找的第一人脸图像包含的属性信息与第一属性信息之间的差 异,则可以确定第一人脸图像中需要修正的属性信息,进而根据属性差异信息修正第一人脸 图像。
如此,本申请实施例提供的人脸图像合成方法,可以不需要专业人员参与,效率较高, 便于推广。并且基于真实人脸图像进行人脸图像合成,能够获得更加真实的人脸图像。
在一种可能的实现方式中,根据第一属性信息以及第二属性信息,获得属性差异信息, 包括:根据第一属性信息获得第一属性向量。根据第二属性信息获得第二属性向量;第一属 性向量和第二属性向量的长度相同,每一位对应一种属性信息。根据第一属性向量和第二属 性向量的差异获得第一向量;第一向量用于表示属性差异信息。
示例性的,若第一属性向量与第二属性向量对应的位置取值不同,表示该位置对应的属 性信息需要修改,则输出的第一向量中将该位置的取值设置为第一属性向量中该位置的取值。 若第一属性向量与第二属性向量对应位置的取值相同,表示该位置对应的属性信息不用修改, 则输出的第一向量中该位置的取值可以设置为无意义的符号。如此,获得表示属性差异信息 的第一向量后,后续可以根据第一向量中有意义位置的取值修正第一人脸图像的属性信息。
在一种可能的实现方式中,对第一人脸图像进行面部特征提取,获得第一人脸图像的第 一面部特征信息,包括:将第一人脸图像输入第一神经网络,获得第二向量;其中,第一神 经网络用于提取输入的人脸图像的面部特征信息;第二向量用于表示第一人脸图像的第一面 部特征信息。
其中,人脸图像可以包括无法穷举的多项面部特征信息,该面部特征信息可以用于表示 对应的人脸图像,上述的第一人脸图像包含的属性信息可以为第一人脸图像面部特征信息的 部分内容。每个人的面部特征信息不相同,可以利用面部特征信息具体的区分不同的人,如 张三的面部特征信息不同于李四的面部特征信息,可以利用张三的面部特征信息迅速确定谁 是张三。进一步的,面部特征提取就是为了获得可以表示该人脸图像的面部特征信息。
如此,利用第一神经网络对第一人脸图像进行面部特征提取,获得表示第一人脸图像的 第一面部特征信息。
在一种可能的实现方式中,根据第一面部特征信息以及属性差异信息,合成第二人脸图 像,包括:获取第一向量以及第二向量;其中,第一向量用于表示属性差异信息;第二向量 用于表示第一人脸图像的第一面部特征信息。将第一向量和第二向量进行拼接后输入第二神 经网络,获得第二人脸图像;其中,第二神经网络用于根据属性差异信息修正第一人脸图像 的第一面部特征信息。
其中,第一向量和第二向量的拼接可以包括将第一向量直接拼接在第二向量之后,第二 神经网络根据第一向量修正第二向量中表示属性信息的部分。比如,第一向量和第二向量中 表示属性信息的部分长度相同,其中的每一位对应一种人脸图像属性信息。如此,第二神经 网络可以直接根据第一向量的取值修正第二向量中对应位置的取值,进而实现根据属性差异 信息修正第一人脸图像。并且,可以实现除需要修正的属性信息以外尽可能小的改变第一人 脸图像的属性信息。
在一种可能的实现方式中,在对第一人脸图像进行面部特征提取,获得第一人脸图像的 第一面部特征信息之前,方法还包括:初始化第二神经网络。获取第一真实人脸图像,第一 真实人脸图像对应的向量以及属性差异信息对应的向量。其中,第一真实人脸图像对应的向 量用于表示第一真实人脸图像的面部特征信息;将第一真实人脸图像对应的向量和属性差异 信息对应的向量输入第二神经网络,输出包含属性差异信息的合成人脸图像。将第一真实人 脸图像和第一真实人脸图像对应的合成人脸图像输入第三神经网络和第四神经网络;其中, 第三神经网络用于判别输入的人脸图像为真实人脸图像的第一概率;第四神经网络用于判别 输入的人脸图像包含属性差异信息的第二概率。根据第三神经网络输出的第一概率和第四神 经网络输出的第二概率对第二神经网络进行迭代训练。在迭代训练过程中,调整第二神经网 络的参数的权重。若第三神经网络输出的第一概率大于第一阈值和第四神经网络输出的第二 概率大于第二阈值则停止训练第二神经网络,得到可用于合成人脸图像的第二神经网络。
示例性的,可以利用对抗式生成网络(generative adversarial networks,GAN)的方 法训练第二神经网络。利用第三神经网络判别第二神经网络输出的合成人脸图像为真实人脸 图像的第一概率,利用第四神经网络判别第二神经网络输出的合成人脸图像包含属性差异信 息的第二概率。根据第三神经网络输出的第一概率和第四神经网络输出的第二概率,调整第 二神经网络的参数的权重,进而使得第二神经网络合成人脸图像,与对应的真实人脸图像的 差别尽可能的小,更加的真实,且包含特定的属性信息如属性差异信息。
在一种可能的实现方式中,该方法还包括:获取用户反馈的属性调整信息。对第二人脸 图像进行面部特征提取,获得第二人脸图像的第二面部特征信息。根据第二面部特征信息以 及属性调整信息合成第三人脸图像。
其中,用户反馈的属性调整信息表示用户想要对合成人脸图像进行属性调整的信息,人 脸图像合成设备通过与用户的交互过程,对人脸图像包含的属性信息进行调整。比如一些难 以完整描述的人脸图像的细节特征。或者,一些初次采集用户属性信息未采集到的属性信息, 可以利用属性调整信息进行调整。比如,可以采集用户在上述合成的第二人脸图像上直接通 过绘画方式进行的调整,识别该调整的属性信息,利用该调整的属性信息直接对第二人脸图 像进行修正。进而获得更加接近用户需求的真实的人脸图像。
在一种可能的实现方式中,根据第二面部特征信息以及属性调整信息合成第三人脸图像, 包括:根据用户反馈的属性调整信息,获得第三向量;其中,第三向量用于表示第二人脸图 像中需要调整的属性信息。将第二人脸图像输入第五神经网络,获得第四向量;其中,第五 神经网络用于提取输入的人脸图像的面部特征信息;第四向量用于表示第二人脸图像的第二 面部特征信息。将第三向量和第四向量拼接后输入第六神经网络,获得第三人脸图像;其中, 第六神经网络用于根据属性调整信息修正第二人脸图像的第二面部特征信息。
如此,可以直接将属性信息转换为向量问题,实现利用神经网络合成人脸图像,使得合 成人脸图像除需要调整的部分之外尽可能少的变化。
在一种可能的实现方式中,在根据第二面部特征信息以及属性调整信息合成第三人脸图 像之前,方法还包括:初始化第六神经网络。获取第二真实人脸图像,第二真实人脸图像对 应的向量,以及属性调整信息对应的向量。其中,第二真实人脸图像对应的向量用于表示第 二真实人脸图像的面部特征信息;将第二真实人脸图像对应的向量和属性调整信息对应的向 量输入第六神经网络,输出包含属性调整信息的合成人脸图像。将第二真实人脸图像和第二 真实人脸图像对应的合成人脸图像输入第七神经网络和第八神经网络;其中,第七神经网络 用于判别输入的人脸图像为真实人脸图像的第三概率;第八神经网络用于判别第二真实人脸 图像和第二真实人脸图像对应的合成人脸图像的分割图一致的第四概率。根据第七神经网络 输出的第三概率和第八神经网络的输出的第四概率对第六神经网络进行迭代训练。在迭代训 练过程中,调整第六神经网络的参数的权重。若第七神经网络输出的第三概率大于第三阈值 和第八神经网络输出的第四概率大于第四阈值则停止训练,得到可用于合成人脸图像的第六 神经网络。
示例性的,可以利用GAN的方法训练第六神经网络。利用第七神经网络判别第六神经网 络输出的合成人脸图像为真实人脸图像的概率,利用第八神经网络识别第六神经网络输出的 合成人脸图像与对应的真实人脸图像的分割图的一致的概率。根据第七神经网络输出的第三 概率和第八神经网络输出的第四概率,调整第六神经网络的参数的权重,进而使得第六神经 网络合成人脸图像,与对应的真实人脸图像的差别尽可能的小,更加的真实,具有相似的分 割图。
在一种可能的实现方式中,属性信息包括如下任一项或几项:年龄信息、性别信息、种 族信息、肤色信息、脸型信息、五官信息、皮肤情况信息、佩戴饰品信息、发型信息、妆容 信息。
其中,脸型信息可以包括人脸的形状,颧骨高低等信息。皮肤情况信息可以包括皮肤上 的皱纹,长斑,胡子,疤痕等信息。佩戴饰品信息可以包括佩戴眼镜,口罩,帽子等信息。
如此,可以从多个维度查找与待合成人脸图像相似的真实人脸图像,实现基于真实人脸 图像更改较少属性信息即可合成人脸图像,使得合成人脸图像更加的真实。
在一种可能的实现方式中,在获取第一属性信息之前,方法还包括:建立真实人脸图像 库,真实人脸图像库中包含真实人脸图像以及真实人脸图像包含的属性信息。
示例性的,真实人脸图像库包括真实人脸图像包含的属性信息。进而在查找第一人脸图 像过程中,根据属性信息的重复率可以直接确定对应的真实人脸图像。
第二方面,本申请提供一种人脸图像合成装置,该装置可以包括:获取单元以及处理单元。获取单元,用于获取第一属性信息;第一属性信息为待合成人脸图像包含的属性信息。处理单元,用于根据第一属性信息,在真实人脸图像库中查找第一人脸图像;第一人脸图像包含第二属性信息,第二属性信息与第一属性信息的重复率满足阈值要求。处理单元,还用于根据第一属性信息以及第二属性信息,获得属性差异信息;属性差异信息用于表示第 一人脸图像与待合成人脸图像之间的属性差异。处理单元,还用于对第一人脸图像进行面部 特征提取,获得第一人脸图像的第一面部特征信息。处理单元,还用于根据第一面部特征信 息以及属性差异信息合成第二人脸图像。
在一种可能的实现方式中,处理单元,具体用于根据第一属性信息获得第一属性向量。 根据第二属性信息获得第二属性向量;第一属性向量和第二属性向量的长度相同,每一位对 应一种属性信息。根据第一属性向量和第二属性向量的差异获得第一向量;第一向量用于表 示属性差异信息。
在一种可能的实现方式中,处理单元,具体用于将第一人脸图像输入第一神经网络,获 得第二向量;其中,第一神经网络用于提取输入的人脸图像的面部特征信息;第二向量用于 表示第一人脸图像的第一面部特征信息。
在一种可能的实现方式中,处理单元,具体用于获取第一向量以及第二向量;其中,第 一向量用于表示属性差异信息;第二向量用于表示第一人脸图像的第一面部特征信息。将第 一向量和第二向量进行拼接后输入第二神经网络,获得第二人脸图像;其中,第二神经网络 用于根据属性差异信息修正第一人脸图像的第一面部特征信息。
在一种可能的实现方式中,处理单元,还用于初始化第二神经网络。获取第一真实人脸 图像,第一真实人脸图像对应的向量以及属性差异信息对应的向量。其中,第一真实人脸图 像对应的向量用于表示第一真实人脸图像的面部特征信息;将第一真实人脸图像对应的向量 和属性差异信息对应的向量输入第二神经网络,输出包含属性差异信息的第一真实人脸图像 对应的合成人脸图像。将第一真实人脸图像和第一真实人脸图像对应的合成人脸图像输入第 三神经网络和第四神经网络;其中,第三神经网络用于判别输入的人脸图像为真实人脸图像 的第一概率;第四神经网络用于判别输入的人脸图像包含属性差异信息的第二概率。根据第 三神经网络输出的第一概率和第四神经网络输出的第二概率对第二神经网络进行迭代训练。 在迭代训练过程中,调整第二神经网络的参数的权重。若第三神经网络输出的第一概率大于 第一阈值和第四神经网络输出的第二概率大于第二阈值则停止训练第二神经网络,得到可用 于合成人脸图像的第二神经网络。
在一种可能的实现方式中,获取单元,还用于获取用户反馈的属性调整信息。处理单元, 还用于对第二人脸图像进行面部特征提取,获得第二人脸图像的第二面部特征信息。处理单 元,还用于根据第二面部特征信息以及属性调整信息合成第三人脸图像。
在一种可能的实现方式中,处理单元,具体用于根据用户反馈的属性调整信息,获得第 三向量;其中,第三向量用于表示第二人脸图像中需要调整的属性信息。将第二人脸图像输 入第五神经网络,获得第四向量;其中,第五神经网络用于提取输入的人脸图像的面部特征 信息;第四向量用于表示第二人脸图像的第二面部特征信息。将第三向量和第四向量拼接后 输入第六神经网络,获得第三人脸图像;其中,第六神经网络用于根据属性调整信息修正第 二人脸图像的第二面部特征信息。
在一种可能的实现方式中,处理单元,还用于初始化第六神经网络。获取第二真实人脸 图像,第二真实人脸图像对应的向量,以及属性调整信息对应的向量。其中,第二真实人脸 图像对应的向量用于表示第二真实人脸图像的面部特征信息;将第二真实人脸图像对应的向 量和属性调整信息对应的向量输入第六神经网络,输出包含属性调整信息的第二真实人脸图 像对应的合成人脸图像。将第二真实人脸图像和第二真实人脸图像对应的合成人脸图像输入 第七神经网络和第八神经网络;其中,第七神经网络用于判别输入的人脸图像为真实人脸图 像的第三概率;第八神经网络用于判别第二真实人脸图像和第二真实人脸图像对应的合成人 脸图像的分割图一致的第四概率。根据第七神经网络输出的第三概率和第八神经网络的输出 的第四概率对第六神经网络进行迭代训练。在迭代训练过程中,调整第六神经网络的参数的 权重。若第七神经网络输出的第三概率大于第三阈值和第八神经网络输出的第四概率大于第 四阈值则停止训练,得到可用于合成人脸图像的第六神经网络。
在一种可能的实现方式中,属性信息包括如下任一项或几项:年龄信息、性别信息、种 族信息、肤色信息、脸型信息、五官信息、皮肤情况信息、佩戴饰品信息、发型信息、妆容 信息。
在一种可能的实现方式中,处理单元,还用于建立真实人脸图像库,真实人脸图像库中 包含真实人脸图像以及真实人脸图像包含的属性信息。
第三方面,本申请提供一种人脸图像合成装置,该人脸图像合成装置可以包括:一个或多个处理器,存储器,以及一个或多个指令。其中一个或多个指令被存储在存储器中。当指令一个或多个处理器执行时,使得人脸图像合成装置执行如上述第一方面及其中任一种 可能的实现方式中所述的人脸图像合成方法。
第四方面,本申请提供一种装置,该装置具有实现如上述第一方面及其中任一种可能的 实现方式中所述的人脸图像合成方法的功能。该功能可以通过硬件实现,也可以通过硬件执 行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第五方面,本申请提供一种计算机可读存储介质,包括计算机指令,当计算机指令在计 算机运行时,使得处理器执行如上述第一方面及其中任一种可能的实现方式中所述的人脸图 像合成方法。
第六方面,本申请提供一种计算机程序产品,当计算机程序产品在服务器上运行时,使 得人脸图像合成装置执行如上述第一方面及其中任一种可能的实现方式中所述的人脸图像合 成方法。
第七方面,提供一种电路系统,电路系统包括处理电路,处理电路被配置为执行如上述 第一方面及其中任一种可能的实现方式中所述的人脸图像合成方法。
附图说明
图1是本申请实施例提供的一种人脸图像合成方法的应用场景示意图;
图2是本申请实施例提供的一种系统架构的示意图;
图3是本申请实施例提供的一种芯片的硬件结构的示意图;
图4是本申请实施例提供的一种人脸图像合成方法的流程示意图一;
图5是本申请实施例提供的一种人脸图像合成方法的流程示意图二;
图6为本申请实施例提供的一种人脸图像合成神经网络的训练流程示意图一;
图7为本申请实施例提供的一种人脸图像合成方法的流程示意图三;
图8为本申请实施例提供的一种人脸图像合成方法的流程示意图四;
图9为本申请实施例提供的一种人脸图像合成神经网络的训练流程示意图二;
图10为本申请实施例提供的人脸图像合成装置的结构示意图;
图11为本申请实施例提供的人脸图像合成装置的硬件结构示意图。
具体实施方式
下面结合附图对本申请实施例提供的人脸图像合成方法及装置进行详细地描述。
图1示出了一种人脸图像合成系统,该人脸图像合成系统包括人脸图像合成设备110和 终端设备120。人脸图像合成设备110与终端设备120之间可以通过有线网络或者无线网络 连接。本申请实施例对设备之间的连接方式不做具体限定。
上述终端设备120提供相关的人机交互界面,以便用户输入合成人脸图像过程中所需要 的相关参数,例如待合成人脸图像的属性信息,属性调整信息等。示例性的,待合成人脸图 像的属性信息可以包括性别信息,年龄信息、脸型信息等可以用于描述人脸特征的属性信息。 示例性的,终端设备可以是可移动电话(mobile phone)、平板电脑(pad)、带无线收发功能 的电脑、个人数字助理(personal digital assistant,PDA)、上网本、桌面型、膝上型、 手持计算机、笔记本电脑、人工智能(artificial intelligence,AI)终端等的终端设备。 本申请实施例对终端设备120的具体形态不作特殊限制。
上述人脸图像合成设备110可以是云服务器或者网络服务器等具有图像搜索及图像合成 功能的设备或服务器。人脸图像合成设备110通过交互接口接收来自终端设备120发送的属 性信息,属性调整信息等信息,再基于存储器中存储的真实人脸图像库,通过处理器进行真 实人脸图像搜索。之后,由处理器利用搜索到的真实人脸图像以及获得的属性信息进行人脸 图像合成,并且处理器可以利用获得的属性调成信息对合成人脸图像的属性进行进一步的调 整。将最终合成人脸图像发送至对应的终端设备120。人脸图像合成设备110中的存储器可 以是一个统称,包括本地存储以及存储历史人脸图像的数据库,数据库可以在人脸图像合成 设备上,也可以在其它云服务器上。
需要说明的是,人脸图像合成设备110可以是一台服务器,也可以是由多台服务器组成 的服务器集群,或者是一个云计算服务中心。
比如,在图1中,服务器作为人脸图像合成设备110可以执行本申请实施例的人脸图像 合成方法。
又比如,在图1中,终端设备120直接作为人脸图像合成设备,接收用户的输入的待合 成人脸图像的属性信息和/或属性调整信息,由终端设备120自身执行人脸图像合成任务,合 成需要的人脸图像。即,终端设备120自身就可以执行本申请实施例的人脸图像合成方法。
图2示例性的给出了本申请实施例提供的一种系统架构。
如图2中的系统架构所示,人脸图像合成设备110配置收发接口211,用于与外部设备 进行数据交互,人脸图像合成设备110通过收发接口211接收终端设备120传输的输入数据, 该输入数据在本申请实施例中可以包括:待合成人脸图像的属性信息,属性调整信息。
人脸图像采集模块240,用于采集真实人脸图像。例如,本申请实施例中真实人脸图像 可以是采集到的当地常驻人口的人脸图像。在采集到真实人脸图像之后,人脸图像采集模块 240将这些真实人脸图像存入数据库230。数据库230中还可以包括真实人脸图像库231,真 实人脸图像库231用于存储人脸图像采集模块240搜索到的真实人脸图像。数据库230中还 可以存储有用于训练人脸图像合成设备110的人脸图像。
需要说明的是,在实际的应用中,所述数据库230中维护的真实人脸图像不一定都来自 于人脸图像采集模块240的采集,也有可能是从其他设备接收得到的。例如接收由终端设备 120发送的用于扩充真实人脸图库231的信息。
属性信息采集模块212,用于采集属性信息201。属性信息201例如可以包括待合成人脸 图像的属性信息和属性调整信息。具体的,属性信息采集模块212通过收发接口211采集到 合成人脸图像需要的待合成人脸图像的属性信息。以及在合成人脸图像过程中,采集到用户 通过终端设备120输入的属性调整信息。
搜索模块213,用于基于属性信息201在真实人脸图像库231中搜索到与待合成人脸图 像属性信息重复率满足阈值要求的真实人脸图像202,即搜索到更加接近待合成人脸图像的 真实人脸图像。
生成模块214,用于基于属性信息201训练真实人脸图像202,进而获得合成人脸图像 203。例如,基于待合成人脸图像的属性信息在真实人脸图像中增加/减少/修正某些属性信息。 比如,将真实人脸图像202中的发型属性信息由短头发修正为长头发。并通过收发接口211 向终端设备120输出合成人脸图像203。
人脸图像属性调整模块215,用于基于生成模块214生成的人脸图像,以及属性信息采 集模块212采集到的属性调整信息,对合成人脸图像中的属性进行细节调整,进而获得更加 符合用户需求的人脸图像。
还需要说明的是,图2仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、 器件、模块等之间的位置关系不构成任何限制。例如,在图2中,数据库230相对人脸图像 合成设备110是外部存储器,在其它情况下,也可以将数据库230置于人脸图像合成设备110 中。
由于本申请实施例涉及大量神经网络的应用,为了便于理解,下面先对本申请实施例可 能涉及的神经网络的相关术语和概念进行介绍。
(1)神经网络
神经网络可以是由神经单元组成的,神经单元可以是指以xs和截距1为输入的运算单元, 该运算单元的输出可以为:
Figure BDA0002396199020000071
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f 为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输 入,激活函数可以是sigmoid函数。神经网络是将多个上述单一的神经单元联结在一起形成 的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与 前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元 组成的区域。
(2)深度神经网络
深度神经网络(deep neural network,DNN),也称多层神经网络,可以理解为具有多层 隐含层的神经网络。按照不同层的位置对DNN进行划分,DNN内部的神经网络可以分为三类: 输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是 隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任 意一个神经元相连。
虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下 线性关系表达式:
Figure BDA0002396199020000081
其中,
Figure BDA0002396199020000082
是输入向量,
Figure BDA0002396199020000083
是输出向量,
Figure BDA0002396199020000084
是偏移向量,W 是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量x经过如此简单的操作 得到输出向量
Figure BDA0002396199020000085
由于DNN层数多,系数W和偏移向量
Figure BDA0002396199020000086
的数量也比较多。这些参数在DNN 中的定义如下所述:以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第 三层的第2个神经元的线性系数定义为
Figure BDA0002396199020000087
上标3代表系数W所在的层数,而下标对应的 是输出的第三层索引2和输入的第二层索引4。
综上,第L-1层的第k个神经元到第L层的第j个神经元的系数定义为
Figure BDA0002396199020000088
需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能 够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越 大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的也就是学习权重矩阵的过 程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成 的权重矩阵)。
(3)损失函数
在训练深度神经网络的过程中,因为需要深度神经网络的输出尽可能的接近真正想要预 测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异 情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程, 即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向 量让它预测低一些,不断地调整,直到深度神经网络能够预测出真正想要的目标值或与真正 想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差 异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于 衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss) 越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(4)反向传播算法
神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始 的神经网络模型中参数的大小,使得神经网络模型的重建误差损失越来越小。具体地,前向 传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的神经网络 模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨 在得到更优的神经网络模型的参数,例如,权重矩阵。
图3为本申请实施例提供的一种芯片的硬件结构,该芯片包括神经网络处理器(neural-network processing units,NPU)300。该芯片可以被设置在如图2所示的人脸图像合成设备110中,用以完成图2中属性信息采集模块212的全部或部分工作(例如采集属性信息201),也可以用于完成搜索模块213的全部或部分工作(例如搜索真实人脸图像202), 还可以用于完成生成模块214中的全部或部分工作(例如生成合成人脸图像203),还可以用 于完成人脸图像属性调整模块215的全部或部分工作(例如调整生成模块214生成的合成人 脸图像203的属性信息)。
神经网络处理器NPU 300作为协处理器挂载到主中央处理器(centralprocessing unit, CPU)(host CPU)320上,由主CPU 320分配任务。NPU 300的核心部分为运算电路303,控 制器304控制运算电路303提取存储器(权重存储器或输入存储器)中的数据并进行运算。
在一些实现中,运算电路303内部包括多个处理单元(process engine,PE)。在一些实 现中,运算电路303是二维脉动阵列。运算电路303还可以是一维脉动阵列或者能够执行例 如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路303是通用的矩阵 处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路303从权重存储器302 中取矩阵B相应的数据,并缓存在运算电路303中每一个PE上。运算电路303从输入存储器 301中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累 加器308(accumulator)中。
向量计算单元307可以对运算电路303的输出做进一步处理,如向量乘,向量加,指数 运算,对数运算,大小比较等等。例如,向量计算单元307可以用于神经网络中非卷积/非FC层的网络计算,如池化(pooling),批归一化(batch normalization),局部响应归一化(local response normalization)等。
在一些实现中,向量计算单元能307将经处理的输出的向量存储到统一存储器306。例 如,向量计算单元307可以将非线性函数应用到运算电路303的输出,例如累加值的向量, 用以生成激活值。
在一些实现中,向量计算单元307生成归一化的值、合并值,或二者均有。
在一些实现中,处理过的输出的向量能够用作到运算电路303的激活输入,例如,用于 在神经网络中的后续层中的使用。
统一存储器306用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制 器305(direct memory access controller,DMAC)将外部存储器330中的输入数据存入至 输入存储器301和/或统一存储器306、将外部存储器330中的权重数据存入权重存储器302, 以及将统一存储器306中的数据存入外部存储器330。
总线接口单元310(bus interface unit,BIU),用于通过总线实现主CPU320、DMAC和 取指存储器309之间进行交互。
与控制器304连接的取指存储器309(instruction fetch buffer)用于存储控制器304 使用的指令。控制器304用于调用取指存储器309中缓存的指令,实现控制该运算加速器的 工作过程。
一般地,统一存储器306,输入存储器301,权重存储器302以及取指存储器309均为片 上(On-Chip)存储器,外部存储器330为该NPU300外部的存储器,该外部存储器330可以为双倍数据率同步动态随机存储器(double data rate synchronous dynamic randomaccess memory,DDR SDRAM)、高带宽存储器(high bandwidth memory,HBM)或其他可读可写的存 储器。
下面结合图4对本申请实施例的人脸图像合成方法进行详细介绍。本申请实施例的人脸 图像合成方法可以由图1中的人脸图像合成设备110、图2中的人脸图像合成设备110等设 备执行。
如图4所示,为本申请实施例提供一种人脸图像合成方法的流程示意图,该方法可以包 括S101-S105:
S101、获取第一属性信息。
其中,第一属性信息为待合成人脸图像包含的属性信息。该属性信息包括如下任一项或 几项:年龄信息、性别信息、种族信息、肤色信息、脸型信息、五官信息、皮肤情况信息、 佩戴饰品信息、发型信息、妆容信息。比如,脸型信息可以包括人脸的形状,颧骨高低等信 息。皮肤情况信息可以包括皮肤上的皱纹,长斑,胡子,疤痕等信息。佩戴饰品信息可以包 括佩戴眼镜,口罩,帽子等信息。
若需要合成人脸图像,需要先采集待合成人脸图像的属性信息,进而合成人脸图像需要 包含这些属性信息。
示例性的,采集属性信息的方式包括:人脸图像合成设备根据合成人脸图像需要的全部 属性信息创建人脸图像属性信息调查表,将该人脸图像属性信息调查表发送至终端设备,由 目击证人在终端设备上填写后返回人脸图像合成设备,进而人脸图像合成设备获得属性信息。 如此,人脸图像合成设备可以从多维度采集待合成人脸图像的属性信息,使得最后合成人脸 图像更加接近需要的人脸图像。
如下表1所示,示例性的给出了一种人脸图像属性信息调查表内容,如确认此次需要合 成人脸图像的第一属性信息包括30~40岁男性,尖下巴,大眼睛,高鼻梁,薄嘴唇,短发, 斜刘海。
表1
序号 属性 详细信息
1 年龄 30~40
2 性别
3 种族 -
4 肤色 -
5 脸型 尖下巴
6 五官 大眼睛、高鼻梁、薄嘴唇
7 皮肤情况 -
8 佩戴饰品 -
9 发型 短发、斜刘海
10 妆容 -
需要说明的是,上述表1只是一种人脸图像属性信息调查表可能的实现方式,还可以通 过其他表现形式的人脸图像属性信息调查表实现人脸图像属性信息的获取。比如,在人脸图 像属性信息调查表内列举所有可能的属性信息,通过采集用户的勾选结果确定属性信息。又 比如,在人脸图像属性信息调查表内建立各种属性信息对应的表示程度的可调节的进度条, 通过用户调节进度条的程度获得该项属性信息的具体情况。如发型属性信息,进度条在20% 表示短发,80%表示长发。
S102、根据第一属性信息,在真实人脸图像库中查找第一人脸图像,第一人脸图像包含 第二属性信息,第二属性信息与第一属性信息的重复率满足阈值要求。
其中,真实人脸图像库,用于存储真实人脸图像。示例性的,通过采集当地常驻人口的 真实人脸图像建立真实人脸图像库。可选的,真实人脸图像库中还包括真实人脸图像包含的 属性信息。进而在查找第一人脸图像过程中,根据属性信息的重复率可以直接确定对应的真 实人脸图像。可选的,可以预先采集大量的真实人脸图像建立真实人脸图像库,并且周期性 更新扩充真实人脸图像库。
第一人脸图像为在真实人脸图像库中查找到的某一人脸图像,因此,该第一人脸图像为 真实人脸图像。第一人脸图像包含的第二属性信息与第一属性信息的重复率还需要满足一定 的阈值要求。如此,可以查找到更加接近待合成人脸图像的真实人脸图像。其中,可以根据 经验值设定阈值的取值,如第一属性信息和第二属性信息的重复率大于等于80%。进一步的, 若查找到多个满足阈值要求的第一人脸图像,则可以将其中重复率最高的一张人脸图像作为 第一人脸图像,用于后续合成人脸图像。
示例性的,如下表2所示,为基于上表1中所示的第一属性信息查找到的第一人脸图像 包含的第二属性信息。如确认第一人脸图像包含的第二属性信息包括35岁男性,尖下巴,大 眼睛,高鼻梁,薄嘴唇,短发。
表2
序号 属性 详细信息
1 年龄 35
2 性别
3 种族 -
4 肤色 -
5 脸型 尖下巴
6 五官 大眼睛、高鼻梁、薄嘴唇
7 皮肤情况 -
8 佩戴饰品 -
9 发型 短发
10 妆容 -
如此,在查找到的真实的第一人脸图像的基础上合成人脸图像,合成后的人脸图像也能 够更加接近真实人脸图像。
S103、根据第一属性信息以及第二属性信息,获得属性差异信息。
其中,属性差异信息用于表示第一人脸图像与待合成人脸图像之间的属性差异。即需要 在第一人脸图像上增加/删除/修正的属性信息。
可选的,根据第一属性信息获得第一属性向量。根据第二属性信息获得第二属性向量。 其中,第一属性向量和第二属性向量的长度相同,每一位对应一种属性信息。根据第一属性 向量和第二属性向量的差异获得第一向量。第一向量用于表示属性差异信息。
比如,可以预先配置属性信息与属性向量每一位的对应关系。比如,根据上述步骤S101 的人脸图像属性信息调查表,将属性向量的每一位按序对应为一种属性信息。如人脸图像属 性信息调查表包含3种属性信息,分别为性别,发型,肤色,则用于表示属性信息的第一属 性向量和第二属性向量的长度均为3,其中的每一位对应一种属性信息。其中,对于性别属 性信息,可以预设0表示女性,1表示男性。对于发型属性信息,可以将头发长度由短到长 划分9个区间,分别对应1-9九个数字,并且用0表示未采集到该属性信息。对于肤色属性 信息,可以将肤色深浅由浅到深划分9个区间,分别对应1-9九个数字,并且用0表示未采集到该属性信息。并且,第一向量中可以用不具备含义的字符表示在该位置对应的第一属性 信息和第二属性信息相同,如X。进而在后续利用第一向量表示的属性差异信息对第一人脸 图像进行属性信息修改时,则不必对无意义字符位置对应的第一人脸图像的属性信息进行修 改。示例性的,如下表3所示,采集到第一属性信息为男性,短发。根据第一属性信息获得 第一属性向量表示为
Figure BDA0002396199020000121
如下表4所示,查找到的第一人脸图像包含的第二属性信息为男 性,中长发,肤色偏白。根据第二属性信息对应的第二属性向量表示为
Figure BDA0002396199020000122
第一属性向量和 第二属性向量中的第2位和第3位属性向量不同,如此,可以根据两个属性向量的差异获得 属性差异信息,第一向量可以表示为
Figure BDA0002396199020000123
表3
序号 属性 详细信息
1 性别 1
2 发型 2
3 肤色 0
表4
序号 属性 详细信息
1 性别 1
2 发型 7
3 肤色 3
示例性的,参见图5所示,根据获取到的第一属性信息51获得第一属性向量511,根据 获取到的第二属性信息52获得第二属性向量521。进而根据第一属性向量511和第二属性向 量522获得第一向量53。比如,获得上述表1中包含的第一属性信息以及上述表2中包含的 第二属性信息,根据第一属性信息和第二属性信息分别获得第一属性向量和第二属性向量, 进而通过按位减法的方式比较第一属性向量和第二属性向量获得第一向量,该第一向量表示 属性差异信息为斜刘海。
如此,可以根据第一人脸图像包含的第二属性信息与采集到的第一属性信息进行比对, 进而确定需要在第一人脸图像上增加/删除/修正的属性信息。之后,执行S104,也即根据该 属性差异信息调整第一人脸图像,得到更接近待合成人脸图像的第二人脸图像。
S104、对第一人脸图像进行面部特征提取,获得第一人脸图像的第一面部特征信息。
其中,人脸图像可以包括无法穷举的多项面部特征信息,该面部特征信息可以用于表示 对应的人脸图像。上述的第一人脸图像包含的属性信息可以为第一人脸图像面部特征信息的 部分内容,该部分内容容易被用户观察、记忆,以及描述。每个人的面部特征信息不相同, 可以利用面部特征信息的相似度区分不同的人。如张三的面部特征信息不同于李四的面部特 征信息,可以利用张三的面部特征信息迅速确定谁是张三。进一步的,面部特征提取就是为 了获得可以表示该人脸图像的面部特征信息。
可选的,利用神经网络实现第一人脸图像的面部特征提取,将第一人脸图像转换为表示 第一面部特征信息的第二向量。其中,第二向量中包含表示属性信息的内容。如将第一人脸 图像输入神经网络的输入层,输入层的算子对第一人脸图像包含的面部特征信息进行提取, 构成表示面部特征信息的高维矩阵。将该高维矩阵输入神经网络隐含层,通过隐含层中每一 层算子的运算,对高维矩阵进行降维处理。最后,该神经网络输出层输出第二向量。
示例性的,如图5所示,将第一人脸图像54输入第一神经网络55,获得第二向量56。其中,第一神经网络55用于提取输入的人脸图像的面部特征信息,第二向量56用于表示第一人脸图像54的第一面部特征信息。
S105、根据第一面部特征信息以及属性差异信息合成第二人脸图像。
可选的,通过上述步骤S103和步骤S104获得第一人脸图像与待合成人脸图像之间的属 性差异信息,以及第一人脸图像的面部特征信息,进而根据属性差异信息修正第一人脸图像 的面部特征信息,合成包含属性差异信息的更接近需求的人脸图像。
比如,参见图5所示,将表示属性差异信息的第一向量53以及表示第一人脸图像的第一 面部特征信息的第二向量56进行拼接后,拼接后输入第二神经网络57,获得第二人脸图像 58。其中,第二神经网络57用于根据属性差异信息修正第一人脸图像54的第一面部特征信 息。比如,根据上述表1和表2获得的属性差异信息为斜刘海,则第二神经网络57可以在第 一人脸图像54中合成斜刘海,得到图5中的第二人脸图像58,第二人脸图像58包含属性差 异信息(如斜刘海)。
其中,第一向量和第二向量的拼接可以包括将第一向量直接拼接在第二向量之后,第二 神经网络根据第一向量修正第二向量。
示例性的,在第一向量中,可以将第一属性信息与第二属性信息相同的属性信息对应的 位置设置为无意义符号如X,则第二神经网络可以直接根据第一向量中部分有意义位置的内 容修正第二向量。如第二向量表示为
Figure BDA0002396199020000131
第一向量表示为
Figure BDA0002396199020000132
拼接后的向量表示为
Figure BDA0002396199020000133
如此,第二神经网络可以直接根据第一向量中部分有意义位置的内容修正第二向量。比如, 第二神经网络读取到拼接后的向量中表示属性信息部分的中有一位向量的取值有意义,获得 该向量位取值对应的属性信息,如斜刘海属性信息。则根据获得的属性信息,修正表示面部 特征信息的向量,再将修正后的表示面部特征信息的向量进行升维处理,获得包含斜刘海的 合成人脸图像。如此,第二神经网络合成人脸图像可以实现基于属性差异信息修正查找到的 真实人脸图像中包含的属性信息,进而获得包含特定属性信息的更接近真实人脸图像的合成 人脸图像。
由此,本申请实施例提供的人脸图像合成方法,可以通过采集到的人脸图像属性信息获 得更接近待合成人脸图像的真实人脸图像,并根据该真实人脸图像包含的属性信息与采集到 的人脸图像属性信息获得属性差异信息,进而根据属性差异信息基于真实人脸图像进行人脸 图像合成,获得更加真实且满足需求的人脸图像。相对于现有技术中,通过画师作画,再进 行调整的人脸图像合成方法。本申请实施例提供的人脸图像合成方法,可以不需要专业人员 参与,效率较高,便于推广。并且基于真实人脸图像进行人脸图像合成,能够获得更加真实 的人脸图像。
在一些实施例中,在用于合成人脸图像的第二神经网络在应用之前,需要先对第二神经 网络进行训练,使其合成人脸图像更加真实可靠。本申请实施例采用基于对抗式生成网络 (generative adversarial networks,GAN)的方法训练第二神经网络。其中,用于训练第 二神经网络(也可以称之为生成网络)的对抗网络可以包括第三神经网络和第四神经网络。 第三神经网络用于判别输入的人脸图像为真实人脸图像的第一概率。第四神经网络用于判别 输入的人脸图像包含属性差异信息的第二概率。具体的训练过程如下。
步骤一、初始化第二神经网络。
可选的,构建能够用于人脸图像合成的第二神经网络,其中包含的各个参数对应的权重 矩阵设置为初始值,需要执行训练过程,在训练的过程中学习各个参数对应的权重矩阵。如 上文对深度神经网络的介绍,训练第二神经网络的也就是学习权重矩阵的过程,其最终目的 是得到训练好的第二神经网络的所有层的权重矩阵。
步骤二、获取第一真实人脸图像,第一真实人脸图像对应的向量以及属性差异信息对应 的向量。
可选的,首先获取真实人脸图像数据集和属性差异信息数据集。其中,真实人脸图像数 据集包含一个或多个第一真实人脸图像,属性差异信息数据集包含一个或多个属性差异信息。 之后,根据上述步骤S103和步骤S104中介绍的方法,通过第一神经网络获得第一真实人脸 图像对应的向量,该向量表示第一人脸图像的第一面部特征信息。并且,可以直接构建属性 差异信息对应的向量。进一步的,可以通过第一真实人脸图像和属性差异信息的搭配获得包 含多组训练数据的训练数据集。
步骤三、将第一真实人脸图像对应的向量和属性差异信息对应的向量输入第二神经网络, 输出包含属性差异信息的合成人脸图像。
可选的,在训练第二神经网络的过程中,输入一个第一真实人脸图像的向量可以搭配输 入一个属性差异信息的向量,进而根据上述步骤S105中的人脸图像合成方法输出该第一真实 人脸图像对应的合成人脸图像。
示例性的,如图6所示,将第一真实人脸图像对应的向量62和属性差异信息对应的向量 63输入第二神经网络64,由第二神经网络64合成人脸图像,输出包含属性差异信息的合成 人脸图像65。
步骤四、将第一真实人脸图像和第一真实人脸图像对应的合成人脸图像输入第三神经网 络和第四神经网络。
可选的,将第一真实人脸图像和其对应的合成人脸图像作为一组数据分别输入第三神经 网络和第四神经网络。其中,第三神经网络可以实现真假判别的作用,判别第二神经网络输 出的合成人脸图像为真实人脸图像的概率。如概率越高,则其为真实人脸图像的概率越高, 表明第二神经网络合成真实人脸图像的能力越高。第四神经网络可以实现判别输入的人脸图 像包含的某些特定属性信息的概率,如判别包含属性差异信息的概率。概率越高表明第二神 经网络合成特定属性信息的能力越高,实现第二神经网络在第一人脸图像中修正属性差异信 息。并且,可以根据输入的人脸图像为真实人脸图像概率的大小以及包含特定属性信息的概 率的大小,判断合成人脸图像与对应的第一真实人脸图像的差异大小,保证合成人脸图像与 对应的第一人脸图像除属性差异信息以外的差异尽可能的小。
示例性的,参见图6所示,将第一真实人脸图像61和合成人脸图像65输入第三神经网 络66和第四神经网络67。
步骤五、根据第三神经网络输出的第一概率和第四神经网络输出的第二概率对第二神经 网络进行迭代训练。在迭代训练过程中,调整第二神经网络的参数的权重。
可选的,第三神经网络的输出结果为判别输入人脸图像为真实人脸图像的第一概率,第 四神经网络的输出结果为判别输入人脸图像包含属性差异信息的第二概率。也就是说,第三 神经网络和第四神经网络的输出结果用于衡量第二神经网络输出的合成人脸图像与输入的真 实人脸图像之间的差异,利用损失函数(loss function)或目标函数(objective function) 表示,损失函数的输出值(loss)越高表示差异越大,那么第二神经网络的训练就变成了尽 可能缩小这个loss的过程。
其中,目标函数包含3部分约束条件。第一、要求第二神经网络输出的合成人脸图像与 对应的真实人脸图像的差异尽可能的小。差异越小,目标函数值越小。第二、要求第二神经 网络输出的合成人脸图像能够尽可能的瞒过第三神经网络,即使得第三神经网络将合成人脸 图像判定为真实的人脸图像。判定为真实图像的概率越高,目标函数值越小。第三、第二神 经网络输出的合成人脸图像需要包含的特定的属性信息(属性差异信息)。包含特定的属性信 息的概率越大,目标函数值越小。如此,通过最小化目标函数的方法可以实现对第二神经网 络的训练。
比如,将第三神经网络和第四神经网络的输出结果作为运算条件输入损失(loss)函数, 将loss函数的结果输入第二神经网络进行反向传播运算,在反向传播运算的过程中,进行梯 度更新,修正第二神经网络各个参数的权重,最终得到更优的参数权重矩阵。
示例性的,如图6所示,第一真实人脸图像61和与其对应的合成人脸图像65输入第三 神经网络66和第四神经网络67后,将第三神经网络66输出的第一概率和第四神经网络67 后输出的第二概率输入目标函数,利用最小化目标函数的方法训练第二神经网络64。
步骤六、若第三神经网络输出的第一概率大于第一阈值和第四神经网络输出的第二概率 大于第二阈值则停止训练,得到可用于合成人脸图像的第二神经网络。
可选的,第一阈值和第二阈值可以根据经验值确定,第三神经网络输出的第一概率大于 第一阈值和第四神经网络输出的第二概率大于第二阈值则停止训练。示例性的,在具体训练 过程中,可以根据loss函数的输出结果确定停止时机,如loss函数的输出结果变化较为平 缓时停止训练。或者达到预设的迭代训练次数则可以停止训练。以损失函数举例,损失函数 的输出值(loss)越高表示差异越大,那么loss函数输出结果平缓不再下降后,则表示第二 神经网络训练完成,可以满足实现人脸图像合成的目标要求。
在一些实施例中,在应用第三神经网络和第四神经网络训练第二神经网络之前,同样需 要对第三神经网络和第四神经网络进行训练,调整第三神经网络和第四神经网络的权重矩阵。 在已知输入的人脸图像为真实人脸图像或合成人脸图像的前提下,通过最小化目标函数的方 法训练第三神经网络和第四神经网络。其中,目标函数包含代表分类误差的部分内容。比如, 第三神经网络对应的目标函数包含一个代表分类误差的部分,判别输入的人脸图像为真实人 脸图像则输出的概率越大,对应的目标函数值越小。反之,如果判别输入的人脸图像为合成 人脸图像则输出的概率越小,对应的目标函数值越大。通过不断的输入真实人脸图像和合成 人脸图像,并最小化目标函数值,完成对第三神经网络的训练过程。又比如,第四神经网络 对应的目标函数包含多个代表分类误差的部分,其中,每一部分分别表示属性信息中的一种 属性的分类误差。如输入一张人脸图像,输出的属性向量的每一位代表输入的人脸图像包含 的属性信息的概率。判别输入的人脸图像包含特定属性信息则输出的概率越大,对应的目标 函数值越小。反之,如果判别输入的人脸图像不包含特定属性信息则输出的概率越小,对应 的目标函数值越大。通过不断的输入真实人脸图像和合成人脸图像,并最小化目标函数值, 完成对第四神经网络的训练过程。
在又一些实施例中,将第一神经网络和第二神经网络构成生成网络,将三神经网络和第 四神经网络构成判别网络。同样利用GAN的方式,根据上文可知第一神经网络,第二神经网 络,第三神经网络和第四神经网络的输入和输出,通过目标函数训练第一神经网络,第二神 经网络,第三神经网络和第四神经网络。在生成网络和判别网络的对抗过程中,调整参数的 权重。
由此,本申请实施例提供的人脸图像合成方法,可以通过对第二神经网络的训练,使得 第二神经网络合成的第二人脸图像与对应的第一人脸图像除需要修正的属性差异信息以外的 差异尽可能的小;第二人脸图像尽可能的真实;第二人脸图像包含特定的属性信息,如属性 差异信息。如此,相对于现有技术需要专业画师参与或无法合成包含特定属性信息的人脸图 像合成方法,本申请实施例提供的人脸图像合成方法,只需要基于真实人脸图像进行少量的 属性修正(也称之为属性迁移),即可以合成包含特定属性信息的人脸图像,方法更为便捷, 合成人脸图像更加的真实。
本申请实施例提供的人脸图像合成方法,用户还可以对合成人脸图像进行修改,人脸图 像合成设备通过与用户的交互,对人脸图像包含的属性信息进行调整。比如一些难以完整描 述的人脸图像的细节特征。或者,一些初次采集用户属性信息未采集到的属性信息,可以通 过下述方法进行调整。若修改的属性信息变动较大,如用户填表时性别填写错误,则需要重 新执行上述步骤S101-步骤S105。若需要修改的属性信息变动后不大,则在步骤S105之后, 可以直接通过下述步骤S106-步骤S108对第二人脸图像进行修改,获得更加符合要求的人脸 图像。如图7所示,在上述步骤S105之后,本申请实施例的人脸图像合成方法还可以包括 S106-S108:
S106、获取用户反馈的属性调整信息。
其中,用户获得通过上述步骤S105合成的第二人脸图像后,可以直观的回忆出第二人脸 图像包含的属性信息还有哪些需要进行调整,则可以在第二人脸图像的基础上提出需要调整 的属性信息。人脸图像合成设备可以仍通过表格的方式采集该属性调整信息,也可以由用户 直接在第二人脸图像上进行的简单绘画图像,更改其中的属性信息。比如,用户判断第二人 脸图像上缺少一个伤疤,则可以直接在第二人脸图像面部画出一个伤疤的大概形状。之后, 由人脸图像合成设备对更改的部分内容进行信息提取,获得属性调整信息。如此,用户可以 通过较为简便的方式实现合成人脸图像的属性信息的调整。其中,人脸图像合成设备对用户 反馈的人脸图像上更改的部分内容进行信息提取的工作,可以通过神经网络完成。比如,将 包含属性调整信息的人脸图像输入神经网络进行数据读取,获得表示属性调整信息的向量。
示例性的,如图8所示,根据用户反馈的属性调整信息81,获得第三向量82。其中,第 三向量82用于表示第二人脸图像83中需要调整的属性信息。如图8中,第三向量82可以表 示用户需要在第二人脸图像上添加的疤痕信息。
S107、对第二人脸图像进行面部特征提取,获得第二人脸图像的第二面部特征信息。
其中,对第二人脸图像的面部特征提取过程可以参见参考步骤S104中对第一人脸图像进 行面部特征提取的过程相关描述,在此不再赘述。其中,第五神经网络实现的功能与第一神 经网络的功能相同,用于对人脸面部特征进行面部特征信息提取,获得第二面部特征信息。 第五神经网络与第一神经网络可以相同,也可以不相同,对此本申请实施例不做具体限定。
示例性的,参见图8所示,将第二人脸图像83输入第五神经网络84,获得第四向量85。 其中,第五神经网络84用于提取输入的人脸图像的面部特征信息。第四向量85用于表示第 二人脸图像83的第二面部特征信息。
S108、根据第二面部特征信息以及属性调整信息合成第三人脸图像。
示例性的,如图8所示,获得通过上述步骤S106获得表示属性调整信息的第三向量82, 以及通过上述步骤S107获得表示第二人脸图像面部特征信息的第四向量85。将第三向量82 和第四向量85拼接后输入第六神经网络86,获得第三人脸图像87。其中,第六神经网络86 用于根据属性调整信息修正第二人脸图像的第二面部特征信息。
其中,具体的向量拼接以及属性信息修正过程可以参见上述步骤S105中相关内容,在此 不再进行赘述。
由此,本申请实施例提供的人脸图像合成方法,可以实现与用户的交互,在交互过程中, 通过更为简单的方法即可实现属性信息的修改。如此,相对于现有技术需要专业画师参与或 无法与用户交互的人脸图像合成方法,本申请实施例提供的人脸图像合成方法,能够通过与 用户的简单交互过程,实现人脸图像的属性信息的修正,使得最终的人脸图像更加的接近需 要的人脸图像。
同样的,在一些实施例中,在用于合成人脸图像的第六神经网络在应用之前,需要先对 第六神经网络进行训练,使其合成人脸图像更加真实。本申请实施例采用基于GAN的方式训 练第六神经网络。其中,用于训练生成网络(第六神经网络)的对抗网络可以包括第七神经 网络和第八神经网络。第七神经网络用于判别输入的人脸图像为真实人脸图像的第三概率。 第八神经网络用于判别第二真实人脸图像和第二真实人脸图像对应的合成人脸图像的分割图 一致的第四概率。具体的训练过程如下。
步骤1、初始化第六神经网络。
可选的,构建能够用于人脸图像合成的第六神经网络,其中包含的各个参数对应的权重 矩阵设置为初始值,需要执行训练过程,在训练的过程中学习各个参数对应的权重矩阵。如 上文对深度神经网络的介绍,训练第六神经网络的也就是学习权重矩阵的过程,其最终目的 是得到训练好的第六神经网络的所有层的权重矩阵。
步骤2、获取第二真实人脸图像,第二真实人脸图像对应的向量,以及属性调整信息对 应的向量。
可选的,首先获取真实人脸图像数据集和属性调整信息数据集。其中,真实人脸图像数 据集包含一个或多个第二真实人脸图像,属性调整信息数据集包含一个或多个属性调整信息。 之后,通过上述步骤S106和步骤S107中介绍的方法,通过第五神经网络获得第二真实人脸 图像对应的向量,该向量表示第二人脸图像的第二面部特征信息。并且,可以直接构建属性 调整信息对应的向量。进一步的,可以通过第二真实人脸图像和属性差异信息的搭配获得包 含多组训练数据的训练数据集。
步骤3、将第二真实人脸图像对应的向量和属性调整信息对应的向量输入第六神经网络, 输出包含属性调整信息的第二真实人脸图像对应的合成人脸图像。
可选的,在训练第六神经网络的过程中,输入一个第二真实人脸图像对应的向量可以搭 配输入一个属性调整信息对应的向量,进而根据上述步骤S107和步骤S108中的人脸图像合 成方法输出该第二真实人脸图像对应的合成人脸图像。
示例性的,如图9所示,将第二真实人脸图像对应的向量92和属性调整信息对应的向量 93输入第六神经网络94,由第六神经网络94合成人脸图像,输出包含属性调整信息的合成 人脸图像95。
步骤4、将第二真实人脸图像和第二真实人脸图像对应的合成人脸图像输入第七神经网 络和第八神经网络。
可选的,将第二真实人脸图像和其对应的合成人脸图像作为一组数据分别输入第七神经 网络和第八神经网络。其中,第七神经网络可以实现真假判别的作用,以判别第六神经网络 输出的合成人脸图像为真实人脸图像的概率。如概率越高,则其为真实人脸图像的概率越高, 表明第六神经网络合成真实人脸图像的能力越高。第八神经网络可以实现判别第二真实人脸 图像和第二真实人脸图像对应的合成人脸图像的分割图一致的概率。概率越高表明第二真实 人脸图像和其对应的合成人脸图像的分割图越一致,则表明第六神经网络合成人脸图像的能 力越高,实现第六神经网络在第二人脸图像中根据属性调整信息修正较为细节的属性信息。 并且,可以根据输入的人脸图像为真实人脸图像概率的大小以及分割图一致的概率,判断合 成人脸图像与对应的第二真实人脸图像的差异大小,保证合成人脸图像与对应的第二人脸图 像除属性调整信息以外的差异尽可能的小。
其中,基于边缘的分割方法为图像分割方法之一,分割后的人脸图像可以用分割图表示。 分割图包括沿人脸图像外围轮廓将人脸图像与背景图像分割开后,只保留人脸图像部分,进 而可以忽略背景信息对判别人脸图像过程的干扰。利用真实人脸图像与对应的合成人脸图像 分割图的一致性,可以判别第六神经网络的人脸图像合成能力,合成的人脸图像不会造成人 脸图像出现较大异常变动,第六神经网络只会对需要进行细节调整的属性信息进行修正。
示例性的,参见图9所示,将第二真实人脸图像91和合成人脸图像95输入第七神经网 络96和第八神经网络97。
需要说明的是,第七神经网络和上述训练第二神经网络过程中应用的第四神经网络的功 能相同,都是用于判别输入的人脸图像为真实人脸图像的概率。第七神经网络和第四神经网 络可以相同,也可以不相同。
步骤5、根据第七神经网络输出的第三概率和第八神经网络输出的第四概率对第六神经 网络进行迭代训练;在迭代训练过程中,调整第六神经网络的参数的权重。
可选的,第七神经网络的输出结果为判别输入人脸图像为真实人脸图像的第三概率,第 八神经网络的输出结果为判别第二真实人脸图像和第二真实人脸图像对应的合成人脸图像分 割图一致的第四概率。也就是说,第七神经网络和第八神经网络的输出结果用于衡量第六神 经网络输出的合成人脸图像与输入的真实人脸图像之间的差异,利用损失函数(loss function)或目标函数(objective function)表示,损失函数的输出值(loss)越高表示 差异越大,那么第六神经网络的训练就变成了尽可能缩小这个loss的过程。
其中,目标函数包含3部分约束条件。第一、要求第六神经网络输出的合成人脸图像尽 可能的与对应的真实人脸图像的差别尽可能的小。差异越小,目标函数值越小。第二、要求 第六神经网络输出的合成人脸图像能够尽可能的瞒过第七神经网络,即使得第七神经网络将 合成人脸图像判定为真实的人脸图像。判定为真实图像的概率越高,目标函数值越小。第三、 第六神经网络输出的合成人脸图像与对应的真实人脸图像的分割图尽可能的相同。分割图越 相似,目标函数值越小。如此,通过最小化目标函数的方法可以实现对第六神经网络的训练。
比如,将第七神经网络和第八神经网络的输出结果作为运算条件输入损失(loss)函数, 将loss函数的结果输入第六神经网络进行反向传播运算,在反向传播运算的过程中,进行梯 度更新,修正第六神经网络各个参数的权重,最终得到更优的参数权重矩阵。
其中,第七神经网络输出合成人脸图像为真实人脸图像的概率越大,则loss函数值越小。 第七神经网络判断合成人脸图像与第二真实人脸图像之间除需要修改的属性信息以外的差异 越小,loss函数越小。第八神经网络判断合成人脸图像与第二真实人脸图像的分割图之间的 差别越小,loss函数值越小。如此,通过最小化目标函数的方法可以实现对第六神经网络的 训练。
示例性的,如图9所示,第二真实人脸图像91和与其对应的合成人脸图像95输入第七 神经网络96和第八神经网络97后,将第七神经网络96输出的第三概率和第八神经网络97 后输出的第四概率输入目标函数,利用最小化目标函数的方法训练第六神经网络94。
步骤6、若第七神经网络输出的第三概率大于第三阈值和第八神经网络输出的第四概率 大于第四阈值则停止训练,得到可用于合成人脸图像的第六神经网络。
其中,第三阈值和第四阈值可以根据经验值确定,第七神经网络输出的第三概率大于第 三阈值和第八神经网络输出的第四概率大于第四阈值则停止训练。示例性的,在具体训练过 程中,可以根据loss函数的输出结果确定停止时机,如loss函数的输出结果变化较为平缓 时停止训练。或者达到预设的迭代训练次数则可以停止训练。以损失函数举例,损失函数的 输出值(loss)越高表示差异越大,那么loss函数输出结果平缓不再下降后,则表示第六神 经网络训练完成,可以满足实现人脸图像合成的目标要求。
此外,在应用第七神经网络和第八神经网络训练第六神经网络之前,同样需要对第七神 经网络和第八神经网络进行训练,调整第七神经网络和第八神经网络的权重矩阵。在已知输 入的人脸图像为真实人脸图像或合成人脸图像的前提下,通过最小化目标函数训练第七神经 网络和第八神经网络。其中,目标函数包含代表分类误差的部分内容。比如,第七神经网络 对应的目标函数包含一个代表分类误差的部分,判别输入的人脸图像为真实人脸图像则输出 的概率越大,对应的目标函数值越小。反之,如果判别输入的人脸图像为合成人脸图像则输 出的概率越小,对应的目标函数值越大。通过不断的输入真实人脸图像和合成人脸图像,并 最小化目标函数值,完成对第七神经网络的训练过程。第八神经网络的训练过程与第七神经 网络的训练过程类似,目标函数包含代表分类误差的部分内容,则第八神经网络判断真实人 脸图像和合成人脸图像的分割图的差异越小,则目标函数值越小。反之,分割图的差异越大, 则目标函数值越大。如此,通过不断的输入真实人脸图像和合成人脸图像,并最小化目标函 数值,完成第七神经网络和第八神经网络的训练过程。
由此,本申请实施例提供的人脸图像合成方法,可以通过对第六神经网络的训练,使得 第六神经网络合成的第三人脸图像与对应的第二人脸图像,除需要修正的属性调整信息以外 的差别尽可能的小;第三人脸图像尽可能的真实;第三人脸图像的分割图与对应的第二人脸 图像的分割图尽可能的相同。如此,相对于现有技术需要专业画师参与或无法与用户交互的 人脸图像合成方法,本申请实施例提供的人脸图像合成方法,可以通过与用户的交互,对难 以描述的人脸图像属性信息通过简单的输入识别进行调整,从而更加全面的合成用户需要的 人脸图像。
图10示出了上述实施例中所涉及的人脸图像合成装置1000的一种可能的结构示意图。 该人脸图像合成装置1000包括:获取单元1001,以及处理单元1002。
其中,获取单元1001,用于支持人脸图像合成装置1000执行图4中的步骤S101,图7中的步骤S101和步骤S106,和/或用于本文所描述的技术的其它过程。
处理单元1002,用于支持人脸图像合成装置1000执行图4中的步骤S102-步骤S105, 图7中的步骤S102-步骤S105和步骤S107-步骤S108,和/或用于本文所描述的技术的其它 过程。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能单元的功能 描述,在此不再赘述。
图11所示为本申请实施例提供的装置的硬件结构示意图。该装置包括至少一个处理器 1101,通信线路1102,存储器1103以及至少一个通信接口1104。其中,存储器1103还可以 包括于处理器1101中。
处理器1101可以是一个通用中央处理器(central processing unit,CPU),微处理器, 特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用 于控制本申请方案程序执行的集成电路。
通信线路1102可包括一通路,在上述组件之间传送信息。
通信接口1104,用于与其他设备通信。在本申请实施例中,通信接口可以是模块、电路、 总线、接口、收发器或者其它能实现通信功能的装置,用于与其他设备通信。可选的,当通 信接口是收发器时,该收发器可以为独立设置的发送器,该发送器可用于向其他设备发送信 息,该收发器也可以为独立设置的接收器,用于从其他设备接收信息。该收发器也可以是将 发送、接收信息功能集成在一起的部件,本申请实施例对收发器的具体实现不做限制。
存储器1103可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其 他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和 指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光 碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或 数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器 可以是独立存在,通过通信线路1102与处理器1101相连接。存储器1103也可以和处理器 1101集成在一起。
其中,存储器1103用于存储用于实现本申请方案的计算机执行指令,并由处理器1101 来控制执行。处理器1101用于执行存储器1103中存储的计算机执行指令,从而实现本申请 下述实施例提供的神经网络自适应的搜索方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码、指令、计算机 程序或者其它名称,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器1101可以包括一个或多个CPU,例如图11中 的CPU0和CPU1。
在具体实现中,作为一种实施例,该装置可以包括多个处理器,例如图11中的处理器 1101和处理器1105。这些处理器中的每一个可以是一个单核(single-core)处理器,也可 以是一个多核(multi-core)处理器。这里的处理器可以指一个或多个设备、电路、和/或用 于处理数据(例如计算机程序指令)的处理核。
需要说明的是,上述的装置可以是一个通用设备或者是一个专用设备,本申请实施例不 限定该装置的类型。本申请实施例示意的结构并不构成对该装置的具体限定。在本申请另一 些实施例中,该装置可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些 部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机 指令,当该计算机指令在服务器上运行时,使得服务器执行上述相关方法步骤实现上述实施 例中的人脸图像合成方法。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使 得计算机执行上述相关步骤,以实现上述实施例中的人脸图像合成方法。
另外,本申请的实施例还提供一种装置,该装置具体可以是组件或模块,该装置可包括 相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可 执行存储器存储的计算机执行指令,以使装置执行上述各方法实施例中的人脸图像合成方法。
其中,本申请实施例提供的装置、计算机可读存储介质、计算机程序产品或芯片均用于 执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方 法中的有益效果,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和 简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能 分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述 的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实 施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法,可以通过其它的方式实 现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅 为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或 者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互 之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接, 可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部 件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元 上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个 单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以 采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以 存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对 现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该 计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个 人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部 分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、 磁碟或者光盘等各种可以存储程序指令的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本 申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的 保护范围应以所述权利要求的保护范围为准。

Claims (23)

1.一种人脸图像合成方法,其特征在于,所述方法包括:
获取第一属性信息;所述第一属性信息为待合成人脸图像包含的属性信息;
根据所述第一属性信息,在真实人脸图像库中查找第一人脸图像;所述第一人脸图像包含第二属性信息,所述第二属性信息与所述第一属性信息的重复率满足阈值要求;
根据所述第一属性信息以及所述第二属性信息,获得属性差异信息;所述属性差异信息用于表示所述第一人脸图像与所述待合成人脸图像之间的属性差异;
对所述第一人脸图像进行面部特征提取,获得所述第一人脸图像的第一面部特征信息;
根据所述第一面部特征信息以及所述属性差异信息合成第二人脸图像。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一属性信息以及所述第二属性信息,获得属性差异信息,包括:
根据所述第一属性信息获得第一属性向量;
根据所述第二属性信息获得第二属性向量;所述第一属性向量和所述第二属性向量的长度相同,每一位对应一种属性信息;
根据所述第一属性向量和所述第二属性向量的差异获得第一向量;所述第一向量用于表示所述属性差异信息。
3.根据权利要求1所述的方法,其特征在于,所述对所述第一人脸图像进行面部特征提取,获得所述第一人脸图像的第一面部特征信息,包括:
将所述第一人脸图像输入第一神经网络,获得第二向量;其中,所述第一神经网络用于提取输入的人脸图像的面部特征信息;所述第二向量用于表示所述第一人脸图像的第一面部特征信息。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述第一面部特征信息以及所述属性差异信息,合成第二人脸图像,包括:
获取第一向量以及第二向量;其中,所述第一向量用于表示所述属性差异信息;所述第二向量用于表示第一人脸图像的第一面部特征信息;
将所述第一向量和所述第二向量进行拼接后输入第二神经网络,获得所述第二人脸图像;其中,所述第二神经网络用于根据所述属性差异信息修正所述第一人脸图像的第一面部特征信息。
5.根据权利要求4所述的方法,其特征在于,在所述对所述第一人脸图像进行面部特征提取,获得所述第一人脸图像的第一面部特征信息之前,所述方法还包括:
初始化所述第二神经网络;
获取第一真实人脸图像,所述第一真实人脸图像对应的向量以及属性差异信息对应的向量;其中,所述第一真实人脸图像对应的向量用于表示所述第一真实人脸图像的面部特征信息;
将所述第一真实人脸图像对应的向量和所述属性差异信息对应的向量输入所述第二神经网络,输出包含所述属性差异信息的合成人脸图像;
将所述第一真实人脸图像和所述第一真实人脸图像对应的合成人脸图像输入第三神经网络和第四神经网络;其中,所述第三神经网络用于判别输入的人脸图像为真实人脸图像的第一概率;所述第四神经网络用于判别输入的人脸图像包含所述属性差异信息的第二概率;
根据所述第三神经网络输出的第一概率和所述第四神经网络输出的第二概率对所述第二神经网络进行迭代训练;
在迭代训练过程中,调整所述第二神经网络的参数的权重;
若所述第三神经网络输出的第一概率大于第一阈值和所述第四神经网络输出的第二概率大于第二阈值则停止训练所述第二神经网络,得到可用于合成人脸图像的第二神经网络。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
获取用户反馈的属性调整信息;
对所述第二人脸图像进行面部特征提取,获得所述第二人脸图像的第二面部特征信息;
根据所述第二面部特征信息以及所述属性调整信息合成第三人脸图像。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第二面部特征信息以及所述属性调整信息合成第三人脸图像,包括:
根据所述用户反馈的属性调整信息,获得第三向量;其中,所述第三向量用于表示所述第二人脸图像中需要调整的属性信息;
将所述第二人脸图像输入第五神经网络,获得第四向量;其中,所述第五神经网络用于提取输入的人脸图像的面部特征信息;所述第四向量用于表示所述第二人脸图像的第二面部特征信息;
将所述第三向量和所述第四向量拼接后输入第六神经网络,获得所述第三人脸图像;其中,所述第六神经网络用于根据所述属性调整信息修正所述第二人脸图像的第二面部特征信息。
8.根据权利要求7所述的方法,其特征在于,在所述根据所述第二面部特征信息以及所述属性调整信息合成第三人脸图像之前,所述方法还包括:
初始化所述第六神经网络;
获取第二真实人脸图像,所述第二真实人脸图像对应的向量,以及属性调整信息对应的向量;其中,所述第二真实人脸图像对应的向量用于表示所述第二真实人脸图像的面部特征信息;
将所述第二真实人脸图像对应的向量和所述属性调整信息对应的向量输入所述第六神经网络,输出包含所述属性调整信息的合成人脸图像;
将所述第二真实人脸图像和所述第二真实人脸图像对应的合成人脸图像输入第七神经网络和第八神经网络;其中,所述第七神经网络用于判别输入的人脸图像为真实人脸图像的第三概率;所述第八神经网络用于判别所述第二真实人脸图像和所述第二真实人脸图像对应的合成人脸图像的分割图一致的第四概率;
根据所述第七神经网络输出的第三概率和所述第八神经网络的输出的第四概率对所述第六神经网络进行迭代训练;
在迭代训练过程中,调整所述第六神经网络的参数的权重;
若所述第七神经网络输出的第三概率大于第三阈值和第八神经网络输出的第四概率大于第四阈值则停止训练,得到可用于合成人脸图像的第六神经网络。
9.根据权利要求1-8任一项所述的方法,其特征在于,属性信息包括如下任一项或几项:年龄信息、性别信息、种族信息、肤色信息、脸型信息、五官信息、皮肤情况信息、佩戴饰品信息、发型信息、妆容信息。
10.根据权利要求1-9任一项所述的方法,其特征在于,在所述获取第一属性信息之前,所述方法还包括:
建立真实人脸图像库,所述真实人脸图像库中包含真实人脸图像以及所述真实人脸图像包含的属性信息。
11.一种人脸图像合成装置,其特征在于,所述装置包括:获取单元以及处理单元;
所述获取单元,用于获取第一属性信息;所述第一属性信息为待合成人脸图像包含的属性信息;
所述处理单元,用于根据所述第一属性信息,在真实人脸图像库中查找第一人脸图像;所述第一人脸图像包含第二属性信息,所述第二属性信息与所述第一属性信息的重复率满足阈值要求;
所述处理单元,还用于根据所述第一属性信息以及所述第二属性信息,获得属性差异信息;所述属性差异信息用于表示所述第一人脸图像与所述待合成人脸图像之间的属性差异;
所述处理单元,还用于对所述第一人脸图像进行面部特征提取,获得所述第一人脸图像的第一面部特征信息;
所述处理单元,还用于根据所述第一面部特征信息以及所述属性差异信息合成第二人脸图像。
12.根据权利要求11所述的装置,其特征在于,
所述处理单元,具体用于根据所述第一属性信息获得第一属性向量;根据所述第二属性信息获得第二属性向量;所述第一属性向量和所述第二属性向量的长度相同,每一位对应一种属性信息;根据所述第一属性向量和所述第二属性向量的差异获得第一向量;所述第一向量用于表示所述属性差异信息。
13.根据权利要求11所述的装置,其特征在于,
所述处理单元,具体用于将所述第一人脸图像输入第一神经网络,获得第二向量;其中,所述第一神经网络用于提取输入的人脸图像的面部特征信息;所述第二向量用于表示所述第一人脸图像的第一面部特征信息。
14.根据权利要求12或13所述的装置,其特征在于,
所述处理单元具体于获取第一向量以及第二向量;其中,所述第一向量用于表示所述属性差异信息;所述第二向量用于表示第一人脸图像的第一面部特征信息;将所述第一向量和所述第二向量进行拼接后输入第二神经网络,获得所述第二人脸图像;其中,所述第二神经网络用于根据所述属性差异信息修正所述第一人脸图像的第一面部特征信息。
15.根据权利要求14所述的装置,其特征在于,
所述处理单元,还用于初始化所述第二神经网络;获取第一真实人脸图像,所述第一真实人脸图像对应的向量以及属性差异信息对应的向量;其中,所述第一真实人脸图像对应的向量用于表示所述第一真实人脸图像的面部特征信息;将所述第一真实人脸图像对应的向量和所述属性差异信息对应的向量输入所述第二神经网络,输出包含所述属性差异信息的合成人脸图像;将所述第一真实人脸图像和所述第一真实人脸图像对应的合成人脸图像输入第三神经网络和第四神经网络;其中,所述第三神经网络用于判别输入的人脸图像为真实人脸图像的第一概率;所述第四神经网络用于判别输入的人脸图像包含所述属性差异信息的第二概率;根据所述第三神经网络输出的第一概率和所述第四神经网络输出的第二概率对所述第二神经网络进行迭代训练;在迭代训练过程中,调整所述第二神经网络的参数的权重;若所述第三神经网络输出的第一概率大于第一阈值和所述第四神经网络输出的第二概率大于第二阈值则停止训练所述第二神经网络,得到可用于合成人脸图像的第二神经网络。
16.根据权利要求11-15任一项所述的装置,其特征在于,
所述获取单元,还用于获取用户反馈的属性调整信息;
所述处理单元,还用于对所述第二人脸图像进行面部特征提取,获得所述第二人脸图像的第二面部特征信息;
所述处理单元,还用于根据所述第二面部特征信息以及所述属性调整信息合成第三人脸图像。
17.根据权利要求16所述的装置,其特征在于,
所述处理单元,具体用于根据所述用户反馈的属性调整信息,获得第三向量;其中,所述第三向量用于表示所述第二人脸图像中需要调整的属性信息;将所述第二人脸图像输入第五神经网络,获得第四向量;其中,所述第五神经网络用于提取输入的人脸图像的面部特征信息;所述第四向量用于表示所述第二人脸图像的第二面部特征信息;将所述第三向量和所述第四向量拼接后输入第六神经网络,获得所述第三人脸图像;其中,所述第六神经网络用于根据所述属性调整信息修正所述第二人脸图像的第二面部特征信息。
18.根据权利要求17所述的装置,其特征在于,
所述处理单元,还用于初始化所述第六神经网络;获取第二真实人脸图像,所述第二真实人脸图像对应的向量,以及属性调整信息对应的向量;其中,所述第二真实人脸图像对应的向量用于表示第二真实人脸图像的面部特征信息;将所述第二真实人脸图像对应的向量和所述属性调整信息对应的向量输入所述第六神经网络,输出包含所述属性调整信息的合成人脸图像;将所述第二真实人脸图像和所述第二真实人脸图像对应的合成人脸图像输入第七神经网络和第八神经网络;其中,所述第七神经网络用于判别输入的人脸图像为真实人脸图像的第三概率;所述第八神经网络用于判别所述第二真实人脸图像和所述第二真实人脸图像对应的合成人脸图像的分割图一致的第四概率;根据所述第七神经网络输出的第三概率和所述第八神经网络的输出的第四概率对所述第六神经网络进行迭代训练;在迭代训练过程中,调整所述第六神经网络的参数的权重;若所述第七神经网络输出的第三概率大于第三阈值和第八神经网络输出的第四概率大于第四阈值则停止训练,得到可用于合成人脸图像的第六神经网络。
19.根据权利要求11-18任一项所述的装置,其特征在于,属性信息包括如下任一项或几项:年龄信息、性别信息、种族信息、肤色信息、脸型信息、五官信息、皮肤情况信息、佩戴饰品信息、发型信息、妆容信息。
20.根据权利要求11-19任一项所述的装置,其特征在于,
所述处理单元,还用于建立真实人脸图像库,所述真实人脸图像库中包含真实人脸图像以及所述真实人脸图像包含的属性信息。
21.一种人脸图像合成装置,其特征在于,包括:
一个或多个处理器;
存储器;
以及一个或多个指令,其中所述一个或多个指令被存储在所述存储器中;当所述指令被所述一个或多个处理器执行时,使得所述人脸图像合成装置执行如权利要求1-10中任一项所述的人脸图像合成方法。
22.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在计算机上运行时,使得处理器执行如权利要求1-10中任一项所述的人脸图像合成方法。
23.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-10中任一项所述的人脸图像合成方法。
CN202010132570.1A 2020-02-29 2020-02-29 人脸图像合成方法及装置 Active CN113327191B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010132570.1A CN113327191B (zh) 2020-02-29 2020-02-29 人脸图像合成方法及装置
PCT/CN2020/140440 WO2021169556A1 (zh) 2020-02-29 2020-12-28 人脸图像合成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010132570.1A CN113327191B (zh) 2020-02-29 2020-02-29 人脸图像合成方法及装置

Publications (2)

Publication Number Publication Date
CN113327191A true CN113327191A (zh) 2021-08-31
CN113327191B CN113327191B (zh) 2024-06-21

Family

ID=77413045

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010132570.1A Active CN113327191B (zh) 2020-02-29 2020-02-29 人脸图像合成方法及装置

Country Status (2)

Country Link
CN (1) CN113327191B (zh)
WO (1) WO2021169556A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113850890A (zh) * 2021-09-29 2021-12-28 北京字跳网络技术有限公司 动物形象的生成方法、装置、设备及存储介质
CN117078974A (zh) * 2023-09-22 2023-11-17 腾讯科技(深圳)有限公司 图像处理方法及装置、电子设备、存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114283051A (zh) * 2021-12-09 2022-04-05 湖南大学 人脸图像处理方法、装置、计算机设备、存储介质
CN114373033B (zh) * 2022-01-10 2024-08-20 腾讯科技(深圳)有限公司 图像处理方法、装置、设备、存储介质及计算机程序
CN115065863B (zh) * 2022-06-14 2024-04-12 北京达佳互联信息技术有限公司 视频生成方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715447A (zh) * 2015-03-02 2015-06-17 百度在线网络技术(北京)有限公司 图像合成方法和装置
US20170116498A1 (en) * 2013-12-04 2017-04-27 J Tech Solutions, Inc. Computer device and method executed by the computer device
CN108537790A (zh) * 2018-04-13 2018-09-14 西安电子科技大学 基于耦合翻译网络的异源图像变化检测方法
CN110097606A (zh) * 2018-01-29 2019-08-06 微软技术许可有限责任公司 面部合成
CN110532871A (zh) * 2019-07-24 2019-12-03 华为技术有限公司 图像处理的方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070229498A1 (en) * 2006-03-29 2007-10-04 Wojciech Matusik Statistical modeling for synthesis of detailed facial geometry
CN107967463B (zh) * 2017-12-12 2021-04-02 武汉科技大学 一种基于合成图像和深度学习的虚拟人脸识别方法
CN108319932B (zh) * 2018-03-12 2021-12-07 中山大学 一种基于生成式对抗网络的多图像人脸对齐的方法及装置
CN109376582B (zh) * 2018-09-04 2022-07-29 电子科技大学 一种基于生成对抗网络的交互式人脸卡通方法
CN110322394A (zh) * 2019-06-18 2019-10-11 中国科学院自动化研究所 基于属性引导的人脸年龄老化图像对抗生成方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170116498A1 (en) * 2013-12-04 2017-04-27 J Tech Solutions, Inc. Computer device and method executed by the computer device
CN104715447A (zh) * 2015-03-02 2015-06-17 百度在线网络技术(北京)有限公司 图像合成方法和装置
CN110097606A (zh) * 2018-01-29 2019-08-06 微软技术许可有限责任公司 面部合成
CN108537790A (zh) * 2018-04-13 2018-09-14 西安电子科技大学 基于耦合翻译网络的异源图像变化检测方法
CN110532871A (zh) * 2019-07-24 2019-12-03 华为技术有限公司 图像处理的方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113850890A (zh) * 2021-09-29 2021-12-28 北京字跳网络技术有限公司 动物形象的生成方法、装置、设备及存储介质
CN117078974A (zh) * 2023-09-22 2023-11-17 腾讯科技(深圳)有限公司 图像处理方法及装置、电子设备、存储介质
CN117078974B (zh) * 2023-09-22 2024-01-05 腾讯科技(深圳)有限公司 图像处理方法及装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN113327191B (zh) 2024-06-21
WO2021169556A1 (zh) 2021-09-02

Similar Documents

Publication Publication Date Title
US12039454B2 (en) Microexpression-based image recognition method and apparatus, and related device
CN113327191B (zh) 人脸图像合成方法及装置
KR102648770B1 (ko) 홍채 식별을 위한 딥 뉴럴 네트워크
EP3953859B1 (en) Method and system for estimating eye-related geometric parameters of a user
CN110555896B (zh) 一种图像生成方法、装置以及存储介质
KR102400609B1 (ko) 딥러닝 네트워크를 이용한 배경 및 얼굴 합성 방법 및 장치
CN110298319B (zh) 图像合成方法和装置
CN111108508B (zh) 脸部情感识别方法、智能装置和计算机可读存储介质
CN105096353B (zh) 一种图像处理方法及装置
CN111680550B (zh) 情感信息识别方法、装置、存储介质及计算机设备
CN113570684A (zh) 图像处理方法、装置、计算机设备和存储介质
US20210158593A1 (en) Pose selection and animation of characters using video data and training techniques
CN112446322B (zh) 眼球特征检测方法、装置、设备及计算机可读存储介质
CN113591763B (zh) 人脸脸型的分类识别方法、装置、存储介质及计算机设备
CN111311733A (zh) 三维模型处理方法及装置、处理器、电子设备及存储介质
KR20210147507A (ko) 이미지 생성 시스템 및 이를 이용한 이미지 생성 방법
CN109087240B (zh) 图像处理方法、图像处理装置及存储介质
CN114049290A (zh) 图像处理方法、装置、设备及存储介质
CN111325252B (zh) 图像处理方法、装置、设备、介质
CN117056786A (zh) 非接触式应激状态识别方法与系统
WO2024059374A1 (en) User authentication based on three-dimensional face modeling using partial face images
CN117315736A (zh) 一种基于数据增广结构的端到端3d人脸识别系统
CN115688075A (zh) 一种基于人脸识别的身份验证方法及装置
CN111222448B (zh) 图像转换方法及相关产品
CN114219704A (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
GR01 Patent grant
GR01 Patent grant