面部图像生成方法和设备与流程

专利查询3月前  34


面部图像生成方法和设备
1.本技术要求于2020年8月18日在韩国知识产权局提交的第10-2020-0103447号韩国专利申请的权益,所述韩国专利申请的全部公开出于所有目的通过引用包含于此,并且本技术要求于2020年11月26日在韩国知识产权局提交的第10-2020-0161545号韩国专利申请的权益,所述韩国专利申请的全部公开出于所有目的通过引用包含于此。
技术领域
2.下面的描述涉及面部图像生成方法和设备。


背景技术:

3.面部识别是计算机视觉中的一种技术,计算机视觉对实际世界进行建模并帮助理解实际世界。大量数据集可用于应用了深度学习的面部识别。应用了深度学习的普通面部识别系统可包括编码器和解码器,编码器被配置为从输入图像提取特征,解码器被配置为从特征向量生成输出图像。通过深度学习的应用,面部识别的准确度可被提高。然而,由于包括外部环境因素(诸如,照度)和与图像合成相关联的其它因素(诸如,图像中的面部姿态)的各种因素,面部识别的识别率仍然可能是低的。


技术实现要素:

4.提供本发明内容以便以简化的形式介绍以下在具体实施方式中进一步描述的构思的选择。本发明内容不意在确定要求权利的主题的关键特征或必要特征,也不意在用于帮助确定要求权利的主题的范围。
5.在一个总体方面,一种处理器实现的面部图像生成方法包括:通过对包括面部的输入图像进行编码,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;基于翻转的第一特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和通过基于旋转信息对最终特征向量和第二特征向量进行解码,生成包括旋转的面部的输出图像。
6.确定辅助特征向量的步骤可包括:通过将翻转的第一特征向量、与翻转的第一特征向量的大小对应的输入图像中的面部的主要特征的位置信息、以及与翻转的第一特征向量的大小对应的旋转信息应用于卷积神经网络(cnn),确定辅助特征向量。
7.确定第一特征向量和第二特征向量的步骤可包括:从输入图像确定输入图像中的面部的主要特征的位置信息;和通过对位置信息和输入图像进行编码,确定第一特征向量和第二特征向量,并且确定辅助特征向量的步骤可包括:通过相对于对应空间中的所述轴翻转位置信息,变换位置信息;和基于翻转的第一特征向量、与输入图像对应的旋转信息以及变换后的位置信息,确定辅助特征向量。
8.变换位置信息的步骤可包括:将位置信息的大小调整为与翻转的第一特征向量的大小对应的大小。
9.位置信息可包括与输入图像中的面部对应的关键点热图。
10.位置信息可包括:针对每个输入图像中的每个像素,表示输入图像中的面部的主要特征的概率的0与1之间的值。
11.旋转信息可包括指示用于从输入图像生成输出图像的旋转方向的信息,并且旋转信息的大小可对应于翻转的第一特征向量的大小。
12.基于旋转信息确定辅助特征向量的步骤可包括:变换旋转信息以指示相反的旋转方向;和基于变换后的旋转信息来确定辅助特征向量。
13.旋转信息还可包括:指示用于从输入图像生成输出图像的旋转度的信息。
14.旋转信息可通过比较输入图像中的面部的主要特征的位置信息和输出图像的预设面部姿态而被确定。
15.生成输出图像的步骤还可包括:将输出图像传送为用于后续迭代的输入图像;和基于包括在旋转信息中的旋转度,执行包括确定第一特征向量和第二特征向量、确定翻转的第一特征向量、确定辅助特征向量、确定最终特征向量以及生成输出图像的后续迭代。
16.对输入图像进行编码的步骤可包括:使用编码器对输入图像进行编码,并且编码器的神经网络可包括:输入层,与输入图像对应;和输出层,与第一特征向量和第二特征向量对应。
17.对最终特征向量和第二特征向量进行解码的步骤可包括:使用解码器基于旋转信息对最终特征向量和第二特征向量进行解码,并且解码器的神经网络可包括:输入层,与最终特征向量、第二特征向量和旋转信息对应;和输出层,与输出图像对应。
18.确定翻转的第一特征向量的步骤可包括:通过相对于对应空间中的所述轴翻转输入图像,确定翻转的输入图像;和通过对翻转的输入图像进行编码,确定与姿态相关的翻转的第一特征向量。
19.所述方法可包括:基于输出图像提取用于面部识别的特征;和基于提取的特征来识别面部。
20.所述方法可包括:通过改变包括在旋转信息中的旋转度,生成与输入图像对应的多个输出图像;和基于生成的多个输出图像来识别面部。
21.所述方法可包括:基于输出图像和与输入图像对应的目标图像,训练用于编码的编码器的神经网络、用于解码的解码器的神经网络以及用于确定辅助特征向量的神经网络。
22.一种非暂时性计算机可读存储介质可存储指令,所述指令在由一个或多个处理器执行时,配置所述一个或多个处理器执行所述方法。
23.在另一总体方面,一种处理器实现的面部图像生成方法包括:通过将包括面部的输入图像应用于编码器,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;通过将翻转的第一特征向量和与输入图像对应的旋转信息应用于第一神经网络,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;通过将最终特征向量、第二特征向量和旋转信息应用于解码器,生成包括旋转的面部的输出图像;和基于输出图像和与输入图像对应的目标图像,训练编码器的神经网络、解码器的神经网络和第一神经网络。
24.训练的步骤可包括:基于损失进行训练,损失包括以下损失中的任何一个或任何
组合:通过比较从输出图像提取的特征和从目标图像提取的特征而生成的损失;通过逐像素地比较输出图像和目标图像而生成的损失;通过比较输出图像的身份和目标图像的身份而生成的损失;基于输出图像的像素之间的像素值的差的损失;和基于输出图像和目标图像的生成对抗网络(gan)损失。
25.在另一总体方面,一种面部图像生成设备包括:一个或多个处理器,被配置为:通过对包括面部的输入图像进行编码,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;基于翻转的第一特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和通过基于旋转信息对最终特征向量和第二特征向量进行解码,生成包括旋转的面部的输出图像。
26.为了确定辅助特征向量,所述一个或多个处理器可被配置为:通过将翻转的第一特征向量、与翻转的第一特征向量的大小对应的输入图像中的面部的主要特征的位置信息、以及与翻转的第一特征向量的大小对应的旋转信息应用于卷积神经网络(cnn),确定辅助特征向量。
27.所述一个或多个处理器可被配置为:为了确定第一特征向量和第二特征向量,从输入图像确定输入图像中的面部的主要特征的位置信息,并且通过对位置信息和输入图像进行编码来确定第一特征向量和第二特征向量;并且为了确定辅助特征向量,通过相对于对应空间中的所述轴翻转位置信息并将位置信息的大小调整为与翻转的第一特征向量的大小对应的大小来变换位置信息,并且基于翻转的第一特征向量、与输入图像对应的旋转信息和变换后的位置信息来确定辅助特征向量。
28.旋转信息可包括指示用于从输入图像生成输出图像的旋转方向和旋转度的信息,并且旋转信息的大小可对应于翻转的第一特征向量的大小。
29.为了生成输出图像,所述一个或多个处理器可被配置为:传送输出图像作为用于后续迭代的输入图像;和基于包括在旋转信息中的旋转度,执行确定第一特征向量和第二特征向量、确定翻转的第一特征向量、确定辅助特征向量、确定最终特征向量以及生成输出图像的后续迭代。
30.为了对输入图像进行编码,所述一个或多个处理器可被配置为:使用编码器对输入图像进行编码,并且编码器的神经网络可包括:输入层,与输入图像对应;和输出层,与第一特征向量和第二特征向量对应。
31.为了对最终特征向量和第二特征向量进行解码,所述一个或多个处理器可被配置为:使用解码器基于旋转信息对最终特征向量和第二特征向量进行解码,并且解码器的神经网络可包括:输入层,与最终特征向量、第二特征向量和旋转信息对应;和输出层,与输出图像对应。
32.为了确定翻转的第一特征向量,所述一个或多个处理器可被配置为:通过相对于对应空间中的所述轴翻转输入图像,确定翻转的输入图像;和通过对翻转的输入图像进行编码,确定与姿态相关的翻转的第一特征向量。
33.所述一个或多个处理器可被配置为:基于输出图像提取用于面部识别的特征;和基于提取的特征来识别面部。
34.在另一总体方面,一种处理器实现的面部图像生成方法包括:基于包括面部的输
入图像,确定与姿态相关的第一特征向量;将翻转的特征向量确定为第一特征向量的对称变换;基于翻转的特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和基于最终特征向量和旋转信息,生成包括旋转的面部的输出图像。
35.从下面的具体实施方式、附图以及权利要求,其它特征和方面将是清楚的。
附图说明
36.图1示出面部图像生成方法的示例。
37.图2示出面部图像生成模型的示例。
38.图3示出重复执行面部图像生成方法的模型的示例。
39.图4示出面部图像生成模型的翻转模块的示例。
40.图5示出面部图像生成模型的辅助特征提取模块的示例。
41.图6a和图6b示出翻转模块的翻转操作的示例。
42.图7示出辅助特征提取模块的示例。
43.图8示出将对称变换应用于输入图像的示例。
44.图9示出面部图像生成模型的训练方法的示例。
45.图10示出使用通过比较输出图像的身份和目标图像的身份而生成的损失来训练模型的示例。
46.图11示出使用基于输出图像和目标图像的生成对抗网络(gan)损失来训练模型的示例。
47.图12a至图12c示出使用图像生成模型的示例。
48.图13示出面部图像生成设备的示例。
49.贯穿附图和具体实施方式,除非另外描述或提供,否则相同的附图参考标号将被理解为表示相同的元件、特征和结构。附图可不按比例,并且为了清楚、说明和方便,附图中的元件的相对尺寸、比例和描绘可被夸大。
具体实施方式
50.提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本技术的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,并且不限于在此阐述的那些顺序,而是除了必须以特定的顺序发生的操作之外,可如在理解本技术的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,可省略已知的特征的描述。
51.在此描述的特征可以以不同的形式来实现,而不应被解释为限于在此描述的示例。相反,在此描述的示例已仅被提供,以示出在理解本技术的公开之后将是清楚的实现在此描述的方法、设备和/或系统的许多可行方式中的一些可行方式。
52.在此使用的术语仅用于描述特定示例的目的,而不用于限制公开。如在此使用的,除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。如在此使用的,术语“和/或”包括相关联的所列项中的任何一个和任何两个或更多个的任何组合。如在此使用的,术语“包括”、“包含”和“具有”说明存在叙述的特征、数量、操作、元件、组件和/或它们的组合,
但不排除存在或添加一个或多个其它特征、数量、操作、元件、组件和/或它们的组合。在此针对示例或实施例的术语“可”的使用(例如,关于示例或实施例可包括或实现什么)表示存在包括或实现这样的特征的至少一个示例或实施例,而所有示例不限于此。
53.尽管在此使用“第一”或“第二”的术语来描述各种构件、组件、区域、层或部分,但是这些构件、组件、区域、层或部分不应被这些术语限制。相反,这些术语仅用于将一个构件、组件、区域、层或部分与另一构件、组件、区域、层或部分区分开。因此,在不脱离示例的教导的情况下,在此描述的示例中所称的第一构件、第一组件、第一区域、第一层或第一部分也可被称为第二构件、第二组件、第二区域、第二层或第二部分。
54.贯穿说明书,当诸如层、区域或基底的元件被描述为“在”另一元件“上”、“连接到”或“结合到”另一元件时,该元件可直接“在”该另一元件“上”、直接“连接到”或“结合到”该另一元件,或者可存在介于它们之间的一个或多个其它元件。相反,当元件被描述为“直接在”另一元件“上”、“直接连接到”或“直接结合到”另一元件时,可不存在介于它们之间的其它元件。同样地,例如“在
……
之间”和“紧接在
……
之间”以及“与
……
邻近”和“与
……
紧邻”的表述也可如前面的描述的那样来解释。
55.除非另有定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与本公开所属领域的普通技术人员通常理解和在理解本公开之后通常理解的含义相同的含义。除非在此清楚地如此定义,否则术语(诸如,通用词典中定义的术语)应被解释为具有与它们在相关领域的上下文和本公开中的含义一致的含义,并且将不以理想化或过于形式化的含义进行解释。
56.此外,在示例实施例的描述中,当认为在理解本技术的公开之后由此得知的结构或功能的详细描述将导致对示例实施例的模糊解释时,将省略这样的描述。
57.在下文中,将参照附图详细描述示例,并且在附图中相同的参考标号始终表示相同的元件。
58.图1示出面部图像生成方法的示例。
59.参照图1,面部图像生成方法可包括对输入图像进行编码的操作110、对通过编码获得的特征向量执行对称变换的操作120、以及通过对经由编码获得的特征向量和经由对称变换获得的特征向量进行解码来生成输出图像的操作130。一个或多个实施例的面部图像生成方法可提高面部识别的准确性,而不管这样的不利因素包括外部环境因素(诸如,照度)和与图像合成相关的其它因素(诸如,图像中的面部姿态)。
60.例如,编码的操作110可包括通过对包括面部的输入图像进行编码来获得与姿态相关的第一特征向量和与身份相关的第二特征向量。操作110可由包括神经网络的编码模块(例如,编码器)执行。在一个示例中,编码器的神经网络可包括与输入图像对应的输入层和与第一特征向量和第二特征向量对应的输出层。编码模块可通过以解耦方式(disentangled manner)从输入图像学习或训练姿态相关的特征和身份相关的特征来可区分地输出姿态相关的特征向量和身份相关的特征向量。姿态相关的特征向量可对应于根据面部的姿态(例如,输入图像中面部的角度和/或面部的方向)的特征向量。身份相关的特征向量可对应于与面部的姿态无关的特征向量。在编码模块的输出中,姿态相关的特征向量在此被称为第一特征向量,与面部的姿态无关的身份相关的特征向量在此被称为第二特征向量。
61.编码模块可以是被配置为接收输入图像和输入图像中的面部的主要特征的位置信息作为输入、并且输出第一特征向量和第二特征向量的模块。在下文中,面部的主要特征的位置信息还将被称为输入图像的位置信息。输入图像的位置信息可以是指示用于验证输入图像中的面部的姿态的面部的主要特征的位置的信息。例如,参照图4和图5,输入图像401的位置信息402和输入图像501的位置信息502中的每个可包括关键点热图(landmark heatmap),该关键点热图将输入图像401和输入图像501中的每个中的每个像素的主要面部特征的概率表示为0与1之间的值。这里,作为非限制性示例,面部的主要特征或主要面部特征可包括任何面部特征(诸如,眼睛、鼻子和嘴唇中的任何一个)。
62.在操作110之前,面部图像生成方法可包括从输入图像获得输入图像的位置信息。输入图像的位置信息可与输入图像一起被输入到编码模块,第一特征向量和第二特征向量随后可被输出。输入图像的位置信息可用于确定用于生成输出图像的旋转信息,并且用于获得辅助特征向量。在下文中,将详细描述旋转信息和辅助特征向量的非限制性示例。
63.对称变换的操作120可包括通过相对于对应空间中的轴翻转第一特征向量来获得翻转的第一特征向量、基于翻转的第一特征向量和与输入图像对应的旋转信息来获得辅助特征向量、以及基于第一特征向量和辅助特征向量来获得最终特征向量。操作120可由对称变换模块执行。在下文中,将详细描述对称变换模块的非限制性示例。
64.解码的操作130可包括通过基于与输入图像对应的旋转信息对在操作120中获得的最终特征向量和在操作110中获得的第二特征向量进行解码来生成包括旋转的面部的输出图像。操作130可由包括神经网络的解码模块(例如,解码器)执行。在一个示例中,解码器的神经网络可包括与最终特征向量、第二特征向量和旋转信息对应的输入层和与输出图像对应的输出层。解码模块可生成输入图像中的面部基于输出图像中的预设面部姿态而被旋转的输出图像。预设面部姿态可包括正面面部、侧面面部等。例如,预设面部姿态可包括从正面面部向左或向右旋转预设角度的姿态。与输入图像对应的旋转信息可根据预设的面部姿态基于输入图像中的面部的位置信息而被确定。也就是说,旋转信息可通过对输入图像的位置信息和预设面部姿态进行比较而被确定。旋转信息可包括关于是否基于输入图像中的面部被旋转的方向和输入图像中的面部被旋转的程度来生成与预设面部姿态对应的输出图像的信息。也就是说,旋转信息可包括用于从输入图像生成输出图像的指示旋转方向的信息和指示旋转度的信息。在一个示例中,旋转信息的大小可对应于翻转的第一特征向量的大小。
65.解码模块可生成输入图像中的面部被旋转预设旋转角度的输出图像。因此,解码模块可基于指示旋转度的信息生成输入图像中的面部被旋转的输出图像。例如,为了生成输入图像中的面部被旋转预设旋转角度的输出图像,解码模块可通过基于指示旋转度的信息重复面部图像生成方法来生成输入图像中的面部被旋转以对应于预设面部姿态的输出图像。
66.也就是说,在面部图像生成方法中,生成输出图像的操作可包括将生成的输出图像传送为用于后续迭代的输入图像,并基于包括在旋转信息中的旋转度来执行迭代。这里,迭代表示重复面部图像生成方法,并且包括获得第一特征向量和第二特征向量、获得翻转的第一特征向量、获得辅助特征向量、获得最终特征向量、以及生成输出图像。
67.图2示出面部图像生成模型的示例。
68.面部图像生成模型可包括执行在此描述的面部图像生成方法的一个或多个模块,并且包括一个或多个处理器和/或一个或多个存储器。为了便于描述,在下文中将基于其功能通过每个模块可区分地描述面部图像生成模型。然而,面部图像生成模型不限于这样的示出的结构。面部图像生成模型还可包括存储器。在下文中,面部图像生成模型也将被简称为模型。
69.参照图2,模型可包括执行在此描述的面部图像生成方法的各个操作的模块。例如,模型可包括编码模块210、解码模块230和对称变换模块220,编码模块210被配置为对输入图像进行编码并提取特征向量,解码模块230被配置为对特征向量进行解码并生成输出图像,对称变换模块220被配置为将从编码模块210输出的特征向量变换为将被输入到解码模块230的特征向量。
70.如上所述,编码模块210可对包括面部的输入图像进行编码,并且输出姿态相关的第一特征向量和身份相关的第二特征向量。编码模块210可接收输入图像的位置信息和输入图像作为输入,以对输入图像进行编码。
71.如上所述,解码模块230可基于与输入图像对应的旋转信息对最终特征向量和第二特征向量进行解码,并且生成包括旋转的面部的输出图像。例如,通过解码,解码模块230可生成输入图像中的面部被旋转预设旋转角度的输出图像,或者基于包括在旋转信息中的指示旋转度的信息来生成输入图像中的面部被旋转的输出图像。
72.如图3中所示,在解码模块230生成输入图像中的面部被旋转预设旋转角度的输出图像的情况下,模型可生成输入图像中的面部被旋转以对应于预设面部姿态的输出图像。图3示出重复执行面部图像生成方法的模型的示例。参照图3,基于指示旋转度的信息,由模型执行的面部图像生成方法可被重复两次,随后与预设面部姿态对应的输出图像可被生成。在这种情况下,面部图像生成方法可使用解码模块310的输出作为编码模块320的输入由模型重复执行,并且输出图像可被生成。例如,在基于输入图像的位置信息和输出图像中的预设面部姿态信息生成输入图像中的面部旋转30度(
°
)的输出图像的情况下,面部被旋转30
°
的输出图像可通过由模型执行两次面部图像生成方法以每次生成面部被旋转15
°
的图像而被生成。在一个示例中,指示旋转方向的信息也可被包括在旋转信息中,并且解码模块可基于指示旋转方向的信息对输出图像进行解码。
73.尽管模型在图3中被示出为包括多个物理上相同的模块,但是在另一示例中,由模型执行的操作可通过将解码模块的输出输入到编码模块而被重复。例如,在图2的示例中,面部图像生成方法可由模型使用解码模块230的输出作为编码模块210的新的输入而被重复执行,并且输出图像可被生成。
74.返回参照图2,对称变换模块220可接收编码模块210的输出中的姿态相关的第一特征向量,并且输出将被输入到解码模块230的最终特征向量。对称变换模块220可通过相对于与第一特征向量对应的空间中的轴翻转输入的第一特征向量来生成翻转的第一特征向量,基于翻转的第一特征向量和旋转信息生成辅助特征向量,并且基于辅助特征向量和第一特征向量生成最终特征向量。最终特征向量可通过计算辅助特征向量和第一特征向量而被获得。最终特征向量的计算可包括将辅助特征向量和第一特征向量逐元素相加。
75.对称变换模块220可包括翻转模块240,翻转模块240被配置为相对于对应空间中的轴翻转输入的第一特征向量以输出翻转的第一特征向量。模型中的翻转模块240的非限
制性示例可如图4中所示进行操作。图4示出面部图像生成模型的翻转模块的示例。参照图4,翻转模块420可接收编码模块410的输出中的第一特征向量421作为输入,并且通过翻转第一特征向量421来输出翻转的第一特征向量422。在下文中,将参照图6a和图6b详细描述翻转的非限制性示例。
76.返回参照图2,对称变换模块220可包括辅助特征提取(fe)模块250,辅助fe模块250被配置为基于翻转的第一特征向量和旋转信息来生成辅助特征向量。模型中的辅助fe模块250的非限制性示例可如图5中所示进行操作。图5示出面部图像生成模型的辅助特征提取模块的示例。参照图5,辅助fe模块530可通过接收翻转的第一特征向量522、输入图像的变换后的位置信息503和旋转信息504作为输入并且通过将输入应用于神经网络531来输出辅助特征向量。在下文中,将参照图7描述辅助fe模块530的详细结构的非限制性示例。
77.变换后的位置信息503可以是通过变换从输入图像获得的位置信息而获得的将被应用于神经网络531的信息。变换后的位置信息503可包括通过执行用于相对于对应空间中的轴翻转从输入图像获得的位置信息的变换和/或用于将位置信息的大小调整为与翻转的第一特征向量的大小对应的大小的变换而获得的信息。也就是说,变换后的位置信息503可对应于从输入图像提取的位置信息被翻转或调整大小的信息。
78.另外,将被应用于神经网络531的旋转信息504可包括指示与输入到解码模块540的旋转信息相反的旋转方向的信息。例如,在输入到解码模块540的旋转信息504指示输入图像中的面部需要向左旋转以生成输出图像的情况下,旋转信息可被变换以包括指示向右旋转的信息,然后变换后的旋转信息可被输入到辅助fe模块530的神经网络531。也就是说,在输入到神经网络531之前,旋转信息504可通过模型的处理器被变换为具有指示相反旋转方向的信息。
79.图6a和图6b示出翻转模块的翻转操作的示例。
80.参照图6a,第一特征向量601可包括特定数量和大小的通道。例如,第一特征向量601可包括大小为w
×
h的c个通道,w
×
h的c个通道可由w
×h×
c表示。作为翻转模块的输出的翻转的第一特征向量602可包括与第一特征向量601相同大小和数量的通道,并且可通过相对于对应空间中的垂直轴翻转第一特征向量601的每个通道而被获得。
81.参照图6b,第一特征向量可包括具有大小为w
×
h的c个通道610、620和630。包括具有大小为w
×
h的c个通道640、650和660的翻转的第一特征向量可通过相对于空间中的特定轴翻转第一特征向量的每个通道而被获得。例如,翻转的第一特征向量的通道640可通过相对于穿过二维(2d)空间的中心的高度轴603翻转第一特征向量的通道610而被获得。在该示例中,作为相对于轴603的翻转的结果,第一特征向量的通道610中的元素611可被移动到翻转的第一特征向量的通道640中的元素641。例如,在第一特征向量的每个通道对应于图像的情况下,翻转的第一特征向量的每个通道可对应于第一特征向量的每个通道被左右反转的图像。
82.图7示出辅助fe模块的示例。参照图7,辅助fe模块可包括被配置为输出辅助特征向量的神经网络720,并且可从输入数据710输出辅助特征的输出数据730,输入数据710包括翻转的第一特征向量711、输入图像的位置信息712(例如,变换后的位置信息)和旋转信息713(例如,变换后的旋转信息)中的任何一个或任何组合。辅助fe模块的神经网络720可以是卷积神经网络(cnn)。尽管神经网络720在图7中被示出为具有包括卷积层(conv)的cnn
架构,但是辅助fe模块的神经网络720的结构不限于示出的示例。例如,被配置为输出辅助特征向量的神经网络720可由具有各种结构的各种神经网络(例如,cnn和深度神经网络(dnn))来实现。
83.在神经网络720是cnn的情况下,每个输入通道可由相同的维度和相同的大小来实现。例如,神经网络720的输入可包括具有大小为w
×
h的c个通道的翻转的第一特征向量711、大小为w
×
h的一个通道的输入图像的位置信息712、以及大小为w
×
h的一个通道的旋转信息713。
84.如上所述,从输入图像获得的输入图像的位置信息可被变换以输入到神经网络720。也就是说,将被输入到神经网络720的输入图像的位置信息可对应于通过由模型的处理器执行的操作变换的位置信息。这里,输入图像的位置信息的变换可包括相对于空间中的特定轴的对称变换。另外,位置信息的变换可包括调整大小。例如,在第一特征向量的每个通道的大小为w
×
h的情况下,输入图像的位置信息可被调整大小以具有w
×
h的大小。也就是说,位置信息712可对应于输入图像的位置信息被翻转和/或调整大小的信息。
85.旋转信息713可以是具有w
×
h的大小并且包括指示旋转方向的信息的信息。旋转信息713可对应于基于旋转方向将大小为w
×
h的2d矩阵中的每个元素的值设置为第一值或第二值的数据。例如,第一值可以是指示旋转方向为左的1,第二值可以是指示旋转方向为右的-1。另外,旋转信息713可被设置为指示旋转方向和旋转度的值。例如,在旋转方向为左且旋转度是15
°
的情况下,旋转信息713的值可被设置为1。例如,在旋转方向为左且旋转度为30
°
的情况下,旋转信息713的值可被设置为2。例如,在旋转方向为右且旋转度为30
°
的情况下,旋转信息713的值可被设置为-2。
86.如上所述,将被输入到辅助fe模块的神经网络720的旋转信息713可包括指示与输入图像需要被旋转以具有预设面部姿态的方向相反的方向的信息。例如,在输入图像需要被向左旋转30
°
以具有预设面部姿态的情况下,将被输入到辅助fe模块的神经网络720的旋转信息713可包括指示向右旋转30
°
的信息。
87.图8示出将对称变换应用于输入图像的示例。
88.参照图8,翻转模块820可相对于空间中的轴翻转输入图像801以输出翻转的输入图像802。输入图像801和翻转的输入图像802可被分别输入到编码模块810和编码模块811,并且与分别对应于输入图像801和翻转的输入图像802的姿态相关的第一特征向量可被输出。在一个示例中,与翻转的输入图像802对应的第一特征向量(例如,翻转的第一特征向量)可被输入到辅助fe模块830,并且辅助特征向量可被输出。辅助fe模块830可接收旋转信息803和/或翻转的输入图像802的位置信息以及与翻转的输入图像802对应的第一特征向量作为输入。这里,翻转的输入图像802的位置信息的大小可被调整为具有与翻转的输入图像802的第一特征向量的大小对应的大小。也就是说,翻转的输入图像802的位置信息可对应于通过翻转输入图像801的位置信息和调整输入图像801的位置信息的大小而获得的变换后的位置信息。在一个示例中,将被输入到解码模块840的最终特征向量可基于从辅助fe模块830输出的辅助特征向量和从编码模块810输出的与输入图像801对应的第一特征向量而被获得。解码模块840可基于旋转信息803对最终特征向量和与对应于输入图像801的姿态无关的第二特征向量进行解码,以生成输出图像。
89.也就是说,在此描述的一个或多个实施例的面部图像生成方法可包括:通过对包
括面部的输入图像进行编码来获得姿态相关的第一特征向量和与姿态无关的身份相关的第二特征向量的操作、通过相对于对应空间中的轴翻转输入图像来获得翻转的输入图像的操作、通过对翻转的输入图像进行编码来获得姿态相关的翻转的第一特征向量的操作、基于翻转的第一特征向量和与输入图像对应的旋转信息获得辅助特征向量的操作、基于第一特征向量和辅助特征向量获得最终特征向量的操作、以及通过基于旋转信息对最终特征向量和第二特征向量进行解码来生成包括旋转的面部的输出图像的操作。
90.图9示出面部图像生成模型的训练方法的示例。
91.参照图9,模型910可基于输入图像901和与输入图像901对应的目标图像902而被训练。也就是说,模型910中的神经网络可被训练为生成与目标图像902相似的输出图像903,并且可使用各种训练或学习算法进行训练。模型910中的神经网络可包括用于从输入图像提取第一特征向量和第二特征向量的编码模块920的神经网络、用于生成输出图像的解码模块940的神经网络以及辅助fe模块930的神经网络。模型910的训练可由包括处理器和/或存储器的训练模块执行。
92.在一个示例中,面部图像生成模型可基于各种损失函数而被训练。损失函数可基于单个损失或多个损失的组合而被确定。面部图像生成模型可通过基于这样的损失函数优化面部图像生成模型中的神经网络的参数而被训练。
93.这里,用于生成损失函数的损失可包括例如输出图像与目标图像之间的感知损失、通过逐像素地比较输出图像和目标图像而生成的逐像素损失、通过比较输出图像的身份和目标图像的身份而生成的身份保留损失、基于输出图像的像素之间的像素值的差的损失、基于输出图像和目标图像的生成对抗网络(gan)损失等。
94.输出图像与目标图像之间的感知损失以及通过逐像素地比较输出图像和目标图像而生成的逐像素损失可对应于通过比较输出图像和目标图像而确定的损失。输出图像与目标图像之间的感知损失可通过比较从输出图像提取的特征和从目标图像提取的特征而被生成。通过逐像素地比较输出图像和目标图像而生成的逐像素损失可对应于基于输出图像的像素值和与输出图像的像素值对应的目标图像的像素值之间的差而生成的损失。面部图像生成模型可通过使用通过比较输出图像和目标图像确定的损失进行训练,而被训练为生成与目标图像相似的输出图像。
95.基于输出图像的像素之间的像素值的差的损失可对应于基于输出图像中的像素的像素值和与该像素相邻的相邻像素的像素值之间的差的损失。面部图像生成模型可通过使用基于输出图像中的像素的像素值确定的损失进行训练,而被训练为生成其中相邻像素自然连接的输出图像。
96.通过比较输出图像的身份和目标图像的身份而生成的身份保留损失可基于从输入图像获得的身份相关的第二特征向量和从目标图像获得的第二特征向量而被确定。身份保留损失可对应于在输出图像中合成或生成面部同时保留输入图像中的面部的相同身份的损失。在一个示例中,在下文中将参照图10详细描述用于使用通过比较输出图像的身份和目标图像的身份而生成的损失来训练模型的模块。图10示出使用通过比较输出图像的身份和目标图像的身份而生成的损失来训练模型的示例。参照图10,身份保留模块1020可基于通过比较输出图像1003的身份和目标图像1002的身份而生成的损失来执行模型的训练。身份保留模块1020可基于通过比较从编码模块1010输出的目标图像1002的第二特征向量
和从编码模块1011输出的输入图像1001的第二特征向量而确定的损失来训练模型中的神经网络。也就是说,训练面部图像训练模型的神经网络,以从输入图像1001生成保持输入图像1001或目标图像1002的相同身份的输出图像1003。
97.图11示出使用基于输出图像和目标图像的gan损失(例如,gan损失1104)来训练模型的示例。参照图11,鉴别器1120可被训练为确定输出图像1103是假的以及确定目标图像1102是真的,并且面部图像生成模型1110(或,在下文中的生成器1110)可被训练为通过使用gan损失1104生成由鉴别器1120确定为真的输出图像1103。生成器1110可通过使用gan损失1104被训练为生成与目标图像1102相似的输出图像1103。
98.图12a至图12c示出使用图像生成模型(例如,生成器)的示例。
99.参照图12a至图12c,面部图像生成模型(或,在下文中的生成器)可用于匹配用户的先前存储的图库图像(gallery img)和新输入的测试图像(probe img)的用户验证。
100.图12a示出将先前存储的图像(gallery img)和目标图像(probe img)输入到生成器、基于其分别生成包括具有相同面部姿态的面部的输出图像1201和1202、以及基于生成的输出图像1201和1202执行用户验证的处理。这里,将被包括在输出图像中的面部姿态可被预先设置,并且模型可基于预设的面部姿态获得用于生成输出图像的旋转信息。
101.图12b示出将先前存储的图像(gallery img)输入到模型、生成包括具有与目标图像(probe img)中的面部姿态相同的面部姿态的面部的输出图像1211、以及基于生成的输出图像1211和目标图像执行用户验证的处理。这里,将用于模型以生成输出图像的旋转信息可通过检测目标图像中的面部姿态的信息并将其与先前存储的图像的位置信息进行比较而被获得。通过检测先前存储的图像中的面部姿态的信息并将目标图像输入到模型,输出图像可被生成为包括旋转的面部,使得目标图像中的面部具有与先前存储的图像中的面部姿态相同的面部姿态。
102.图12c示出将先前存储的图像(gallery img)输入到模型、生成包括具有各种面部姿态的面部的输出图像1220、以及基于生成的输出图像1220和目标图像(probe img)执行用户验证的处理。这里,模型中使用的旋转信息可基于各种预设的面部姿态而被确定。用户验证可基于生成的输出图像1220和目标图像而被执行。参照图12c,用户验证可通过从生成的输出图像1220之中选择与相似于目标图像中的面部姿态的面部姿态对应的输出图像而被执行。
103.在一个示例中,从图像生成模型或生成器输出的包括具有各种面部姿态的面部的图像可用作面部识别模型的训练数据。例如,在训练数据主要包括包含正面面部的图像的情况下,通过使用生成器,训练数据可通过输出包括具有各种角度的面部的图像同时保留来自包括正面面部的图像的面部的身份而被增加。通过增加训练数据以具有包括各种角度的面部的面部图像,面部识别模型的性能可被提高,使得即使当包括具有各种角度的面部的图像被输入时,面部识别模型也识别面部。在一个示例中,面部图像生成方法可基于输出图像提取用于面部识别的特征,并且基于提取的特征来识别面部。
104.另外,一个或多个实施例的辅助特征向量和/或最终特征向量可增加特征空间中观察到的特征,从而提高面部识别模型的准确性。例如,增加的特征可用于将在某些类中观察到的方差传送到另一类的元方差传送(meta variance transfer,mvt)。
105.在用于训练面部识别模型的训练数据中存在各种面部的角度或者训练数据中的
面部的角度之间存在很大视差的情况下,一个或多个实施例的生成器可被应用于有效地训练面部识别模型。例如,对于包括在训练数据中的图像,通过确定与面部的角度相关的位移向量并使用生成器将位移向量拟合到单个可训练或可学习的向量,一个或多个实施例的训练可训练面部识别模型以最小化训练数据中的面部的角度之间的视差。
106.图13示出面部图像生成设备的示例。
107.在此描述的面部图像生成模型(或生成器)或面部图像生成方法中的任何或全部可由面部图像生成设备1300实现。面部图像生成方法的任何或全部操作可由设备的处理器1310执行。面部图像生成设备1300可包括输出装置1340和处理器1310,输出装置1340被配置为输出包括具有与输入图像中的面部姿态不同的面部姿态的面部的图像,处理器1310可被配置为使用输出图像执行用户验证。作为非限制性示例,面部图像生成设备1300可以是智能电话、可穿戴装置、平板计算机、上网本、膝上型计算机、台式计算机,或者可以包括智能电话、可穿戴装置、平板计算机、上网本、膝上型计算机、台式计算机。
108.参照图13,面部图像生成设备1300可包括处理器1310(例如,一个或多个处理器)、存储装置1320(例如,一个或多个存储器)、传感器1330和输出装置1340。处理器1310、存储装置1320、传感器1330和输出装置1340可通过通信总线1350彼此通信。
109.传感器1330可包括至少一个传感器。传感器1330可以是图像传感器(例如,相机),或者可包括图像传感器(例如,相机)。传感器1330可拍摄输入图像。
110.处理器1310可执行面部图像生成设备1300中的功能和指令。例如,处理器1310可处理存储在存储装置1320中的指令。处理器1310可执行以上参照图1至图12c描述的操作中的一个或多个或者全部。处理器1310可包括编码模块、解码模块和对称变换模块,编码模块被配置为对由传感器1330拍摄的输入图像进行编码并提取特征向量,解码模块被配置为对特征向量进行解码并生成输出图像,对称变换模块被配置为将从编码模块输出的特征向量变换为将被输入到解码模块的特征向量。处理器1310可使用输出图像执行用户验证。处理器1310可基于用户验证的结果来解锁面部图像生成设备1300的功能。
111.输出装置1340可通过视觉通道、听觉通道或触觉通道将面部图像生成设备1300的输出提供给用户。输出装置1340可包括例如液晶显示器(lcd)、发光二极管(led)显示器、触摸屏、扬声器、振动发生器以及可将输出提供给用户的其它装置。在一个示例中,作为用户验证的结果,输出装置1340可提供解锁的屏幕。在一个示例中,输出装置1340可提供输出图像。
112.存储装置1320可存储处理器1310的执行所需的信息和数据。存储装置1320可存储将由处理器1310执行的指令。存储装置1320可包括计算机可读存储介质(例如,随机存取存储器(ram)、动态ram(dram)、静态ram(sram)、磁性硬盘、光盘、闪存、可擦除可编程只读存储器(eprom)以及本公开所属技术领域中已知的其它类型的计算机可读存储介质)。
113.根据在此描述的示例实施例,一个或多个实施例的方法和设备可通过使用面部对称性补充从输入图像提取的面部特征的不足信息来生成看起来与实际面部相似的面部图像。
114.在此关于图1至图13描述的面部图像生成设备、编码模块、对称变换模块、解码模块、翻转模块、辅助fe模块、身份保留模块、生成器、鉴别器、存储装置、传感器、输出装置、编码模块210、对称变换模块220、解码模块230、翻转模块240、辅助fe模块250、解码模块310、
编码模块320、编码模块410、翻转模块420、辅助fe模块530、解码模块540、编码模块810、编码模块811、翻转模块820、辅助fe模块830、解码模块840、模型910、编码模块920、辅助fe模块930、解码模块940、编码模块1010、编码模块1011、身份保留模块1020、生成器1110、鉴别器1120、面部图像生成设备1300、存储装置1320、传感器1330、输出装置1340以及其它设备、装置、单元、模块和组件通过硬件组件来实现或表示。可用于执行在本技术中描述的操作的硬件组件的示例适当地包括:控制器、传感器、生成器、驱动器、存储器、比较器、算术逻辑单元、加法器、减法器、乘法器、除法器、积分器和被配置为执行在本技术中描述的操作的任何其它电子组件。在其它示例中,执行在本技术中描述的操作的硬件组件中的一个或多个通过计算硬件(例如,通过一个或多个处理器或计算机)来实现。可通过一个或多个处理元件(诸如,逻辑门阵列、控制器和算术逻辑单元、数字信号处理器、微型计算机、可编程逻辑控制器、现场可编程门阵列、可编程逻辑阵列、微处理器或被配置为以限定的方式响应并执行指令以实现期望的结果的任何其它装置或装置的组合)来实现处理器或计算机。在一个示例中,处理器或计算机包括或连接到存储由处理器或计算机执行的指令或软件的一个或多个存储器。由处理器或计算机实现的硬件组件可执行用于执行在本技术中描述的操作的指令或软件(诸如,操作系统(os)和在os上运行的一个或多个软件应用)。硬件组件还可响应于指令或软件的执行来访问、操控、处理、创建和存储数据。为了简单起见,单数术语“处理器”或“计算机”可在本技术中描述的示例的描述中被使用,但是在其它示例中,多个处理器或计算机可被使用,或者处理器或计算机可包括多个处理元件或多种类型的处理元件或二者。例如,单个硬件组件或者两个或更多个硬件组件可通过单个处理器、或者两个或更多个处理器、或者处理器和控制器来实现。一个或多个硬件组件可通过一个或多个处理器、或者处理器和控制器来实现,并且一个或多个其它硬件组件可通过一个或多个其它处理器,或者另外的处理器和另外的控制器来实现。一个或多个处理器、或者处理器和控制器可实现单个硬件组件或者两个或更多个硬件组件。硬件组件可具有不同的处理配置中的任何一个或多个,不同的处理配置的示例包括:单个处理器、独立处理器、并行处理器、单指令单数据(sisd)多处理、单指令多数据(simd)多处理、多指令单数据(misd)多处理以及多指令多数据(mimd)多处理。
115.图1至图13中示出的执行在本技术中描述的操作的方法通过计算硬件(例如,通过一个或多个处理器或计算机)来执行,计算硬件被如上所述地实现为执行指令或软件,以执行在本技术中描述的由所述方法执行的操作。例如,单个操作或者两个或更多个操作可通过单个处理器、或者两个或更多个处理器、或者处理器和控制器来执行。一个或多个操作可通过一个或多个处理器、或者处理器和控制器来执行,并且一个或多个其它操作可通过一个或多个其它处理器、或者另外的处理器和另外的控制器来执行。一个或多个处理器、或者处理器和控制器可执行单个操作或者两个或更多个操作。
116.用于控制计算硬件(例如,一个或多个处理器或计算机)以实现硬件组件并执行如上所述的方法的指令或软件可被编写为计算机程序、代码段、指令或它们的任何组合,以单独地或共同地指示或配置一个或多个处理器或计算机如机器或专用计算机那样进行操作,以执行由如上所述的硬件组件和方法执行的操作。在一个示例中,指令或软件包括由一个或多个处理器或计算机直接执行的机器代码(诸如,由编译器产生的机器代码)。在另一示例中,指令或软件包括由一个或多个处理器或计算机使用解释器执行的高级代码。可基于
附图中示出的框图和流程图以及在此使用的相应描述,使用任何编程语言编写指令或软件,附图中示出的框图和流程图以及在此使用的相应描述公开了用于执行由如上所述的硬件组件和方法执行的操作的算法。
117.用于控制计算硬件(例如,一个或多个处理器或计算机)以实现硬件组件并执行如上所述的方法的指令或软件以及任何相关联的数据、数据文件和数据结构可被记录、存储或固定在一个或多个非暂时性计算机可读存储介质中或一个或多个非暂时性计算机可读存储介质上。非暂时性计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd+r、cd-rw、cd+rw、dvd-rom、dvd-r、dvd+r、dvd-rw、dvd+rw、dvd-ram、bd-rom、bd-r、bd-r lth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态驱动器(ssd)、卡式存储器(诸如,多媒体卡或者微型卡(例如,安全数字(sd)或者极速数字(xd)))、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘、以及任何其它装置,所述任何其它装置被配置为以非暂时性方式存储指令或软件以及任何相关联的数据、数据文件和数据结构并将指令或软件以及任何相关联的数据、数据文件和数据结构提供给一个或多个处理器或计算机,使得一个或多个处理器和计算机可执行指令。在一个示例中,指令或软件以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得指令和软件以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式的方式被存储、访问和执行。
118.虽然本公开包括特定的示例,但是在理解本技术的公开之后将清楚,在不脱离权利要求及它们的等同物的精神和范围的情况下,可在这些示例中进行形式和细节上的各种改变。在此描述的示例将被认为仅是描述性的,而不是出于限制的目的。每个示例中的特征或方面的描述将被认为可适用于其它示例中的类似特征或方面。如果描述的技术以不同的次序被执行,和/或如果描述的系统、架构、装置或电路中的组件以不同的方式被组合,和/或由其它组件或它们的等同物替换或补充,则可实现合适的结果。

技术特征:
1.一种面部图像生成方法,包括:通过对包括面部的输入图像进行编码,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;基于翻转的第一特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和通过基于旋转信息对最终特征向量和第二特征向量进行解码,生成包括旋转的面部的输出图像。2.根据权利要求1所述的面部图像生成方法,其中,确定辅助特征向量的步骤包括:通过将翻转的第一特征向量、与翻转的第一特征向量的大小对应的输入图像中的面部的主要特征的位置信息、以及与翻转的第一特征向量的大小对应的旋转信息应用于卷积神经网络,确定辅助特征向量。3.根据权利要求1所述的面部图像生成方法,其中,确定第一特征向量和第二特征向量的步骤包括:从输入图像确定输入图像中的面部的主要特征的位置信息;和通过对位置信息和输入图像进行编码,确定第一特征向量和第二特征向量,并且确定辅助特征向量的步骤包括:通过相对于对应空间中的所述轴翻转位置信息,变换位置信息;和基于翻转的第一特征向量、与输入图像对应的旋转信息以及变换后的位置信息,确定辅助特征向量。4.根据权利要求3所述的面部图像生成方法,其中,变换位置信息的步骤包括:将位置信息的大小调整为与翻转的第一特征向量的大小对应的大小。5.根据权利要求3所述的面部图像生成方法,其中,位置信息包括与输入图像中的面部对应的关键点热图。6.根据权利要求3所述的面部图像生成方法,其中,位置信息包括:针对每个输入图像中的每个像素,表示输入图像中的面部的主要特征的概率的0与1之间的值。7.根据权利要求1所述的面部图像生成方法,其中,旋转信息包括指示用于从输入图像生成输出图像的旋转方向的信息,并且旋转信息的大小对应于翻转的第一特征向量的大小。8.根据权利要求7所述的面部图像生成方法,其中,基于旋转信息确定辅助特征向量的步骤包括:变换旋转信息以指示相反的旋转方向;和基于变换后的旋转信息来确定辅助特征向量。9.根据权利要求1所述的面部图像生成方法,其中,旋转信息还包括:指示用于从输入图像生成输出图像的旋转度的信息。10.根据权利要求9所述的面部图像生成方法,其中,旋转信息通过比较输入图像中的面部的主要特征的位置信息和输出图像的预设面部姿态而被确定。11.根据权利要求1所述的面部图像生成方法,其中,生成输出图像的步骤还包括:将输出图像传送为用于后续迭代的输入图像;和
基于包括在旋转信息中的旋转度,执行包括确定第一特征向量和第二特征向量、确定翻转的第一特征向量、确定辅助特征向量、确定最终特征向量以及生成输出图像的后续迭代。12.根据权利要求1所述的面部图像生成方法,其中,对输入图像进行编码的步骤包括:使用编码器对输入图像进行编码,并且编码器的神经网络包括:输入层,与输入图像对应;和输出层,与第一特征向量和第二特征向量对应。13.根据权利要求1所述的面部图像生成方法,其中,对最终特征向量和第二特征向量进行解码的步骤包括:使用解码器基于旋转信息对最终特征向量和第二特征向量进行解码,并且解码器的神经网络包括:输入层,与最终特征向量、第二特征向量和旋转信息对应;和输出层,与输出图像对应。14.根据权利要求1所述的面部图像生成方法,其中,确定翻转的第一特征向量的步骤包括:通过相对于对应空间中的所述轴翻转输入图像,确定翻转的输入图像;和通过对翻转的输入图像进行编码,确定与姿态相关的翻转的第一特征向量。15.根据权利要求1至权利要求14中的任一项所述的面部图像生成方法,还包括:基于输出图像提取用于面部识别的特征;和基于提取的特征来识别面部。16.根据权利要求1至权利要求14中的任一项所述的面部图像生成方法,还包括:通过改变包括在旋转信息中的旋转度,生成与输入图像对应的多个输出图像;和基于生成的多个输出图像来识别面部。17.根据权利要求1至权利要求14中的任一项所述的面部图像生成方法,还包括:基于输出图像和与输入图像对应的目标图像,训练用于编码的编码器的神经网络、用于解码的解码器的神经网络以及用于确定辅助特征向量的神经网络。18.一种面部图像生成方法,包括:通过将包括面部的输入图像应用于编码器,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;通过将翻转的第一特征向量和与输入图像对应的旋转信息应用于第一神经网络,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;通过将最终特征向量、第二特征向量和旋转信息应用于解码器,生成包括旋转的面部的输出图像;和基于输出图像和与输入图像对应的目标图像,训练编码器的神经网络、解码器的神经网络和第一神经网络。19.根据权利要求18所述的面部图像生成方法,其中,训练的步骤包括:
基于损失进行训练,损失包括以下损失中的任何一个或任何组合:通过比较从输出图像提取的特征和从目标图像提取的特征而生成的损失;通过逐像素地比较输出图像和目标图像而生成的损失;通过比较输出图像的身份和目标图像的身份而生成的损失;基于输出图像的像素之间的像素值的差的损失;和基于输出图像和目标图像的生成对抗网络损失。20.一种面部图像生成设备,包括:一个或多个处理器,被配置为:通过对包括面部的输入图像进行编码,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;基于翻转的第一特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和通过基于旋转信息对最终特征向量和第二特征向量进行解码,生成包括旋转的面部的输出图像。21.根据权利要求20所述的面部图像生成设备,其中,为了确定辅助特征向量,所述一个或多个处理器被配置为:通过将翻转的第一特征向量、与翻转的第一特征向量的大小对应的输入图像中的面部的主要特征的位置信息、以及与翻转的第一特征向量的大小对应的旋转信息应用于卷积神经网络,确定辅助特征向量。22.根据权利要求20所述的面部图像生成设备,其中,所述一个或多个处理器被配置为:为了确定第一特征向量和第二特征向量,从输入图像确定输入图像中的面部的主要特征的位置信息,并且通过对位置信息和输入图像进行编码来确定第一特征向量和第二特征向量;并且为了确定辅助特征向量,通过相对于对应空间中的所述轴翻转位置信息并将位置信息的大小调整为与翻转的第一特征向量的大小对应的大小来变换位置信息,并且基于翻转的第一特征向量、与输入图像对应的旋转信息和变换后的位置信息来确定辅助特征向量。23.根据权利要求20所述的面部图像生成设备,其中,旋转信息包括指示用于从输入图像生成输出图像的旋转方向和旋转度的信息,并且旋转信息的大小对应于翻转的第一特征向量的大小。24.根据权利要求20所述的面部图像生成设备,其中,为了生成输出图像,所述一个或多个处理器被配置为:传送输出图像作为用于后续迭代的输入图像;和基于包括在旋转信息中的旋转度,执行确定第一特征向量和第二特征向量、确定翻转的第一特征向量、确定辅助特征向量、确定最终特征向量以及生成输出图像的后续迭代。25.根据权利要求20所述的面部图像生成设备,其中,为了对输入图像进行编码,所述一个或多个处理器被配置为:使用编码器对输入图像进行编码,并且
编码器的神经网络包括:输入层,与输入图像对应;和输出层,与第一特征向量和第二特征向量对应。26.根据权利要求20所述的面部图像生成设备,其中,为了对最终特征向量和第二特征向量进行解码,所述一个或多个处理器被配置为:使用解码器基于旋转信息对最终特征向量和第二特征向量进行解码,并且解码器的神经网络包括:输入层,与最终特征向量、第二特征向量和旋转信息对应;和输出层,与输出图像对应。27.根据权利要求20所述的面部图像生成设备,其中,为了确定翻转的第一特征向量,所述一个或多个处理器被配置为:通过相对于对应空间中的所述轴翻转输入图像,确定翻转的输入图像;和通过对翻转的输入图像进行编码,确定与姿态相关的翻转的第一特征向量。28.根据权利要求20至权利要求27中的任一项所述的面部图像生成设备,其中,所述一个或多个处理器被配置为:基于输出图像提取用于面部识别的特征;和基于提取的特征来识别面部。29.一种面部图像生成方法,包括:基于包括面部的输入图像,确定与姿态相关的第一特征向量;将第一特征向量的对称变换确定为翻转的特征向量;基于翻转的特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和基于最终特征向量和旋转信息,生成包括旋转的面部的输出图像。30.一种存储指令的非暂时性计算机可读存储介质,所述指令在由一个或多个处理器执行时,配置所述一个或多个处理器执行根据权利要求1至权利要求19和权利要求29中的任一项所述的面部图像生成方法。

技术总结
提供了一种面部图像生成方法和设备。所述面部图像生成方法包括:通过对包括面部的输入图像进行编码,确定与姿态相关的第一特征向量和与身份相关的第二特征向量;通过相对于对应空间中的轴翻转第一特征向量,确定翻转的第一特征向量;基于翻转的第一特征向量和与输入图像对应的旋转信息,确定辅助特征向量;基于第一特征向量和辅助特征向量,确定最终特征向量;和通过基于旋转信息对最终特征向量和第二特征向量进行解码,生成包括旋转的面部的输出图像。图像。图像。


技术研发人员:白智原 朴圣真 韩承周 金仁洙 韩在濬
受保护的技术使用者:三星电子株式会社
技术研发日:2021.04.01
技术公布日:2022/3/8

最新回复(0)