图像的视觉风格变换的制作方法

文档序号:15804348发布日期:2018-11-02 21:41阅读:289来源:国知局
图像的视觉风格变换的制作方法

图像的视觉风格可以由该图像呈现的一个或多个维度的视觉属性来体现,这样的视觉属性包括但不限于图像中的颜色、纹理、亮度、线条等等。例如,由图像采集设备等获得的真实图像可以被认为是一种视觉风格,而诸如油画、素描、水彩画等艺术作品也可以被认为是其他不同视觉风格。图像的视觉风格变换指的是将一幅图像的视觉风格变换为另一图像的视觉风格。在变换一幅图像的视觉风格时,该图像中呈现的内容应当基本保持不变。例如,如果该图像中原先包含建筑、人物、天空或植被等内容,那么在视觉风格变换之后,这些内容基本上被保留,但是内容的一个或多个维度的视觉属性会发生改变,使得图像的总体视觉风格改变,例如从照片风格变为油画风格,等等。高效、有效的图像视觉风格变换目前仍然是亟待应对的挑战。



技术实现要素:

根据本公开的实现,提出了一种用于图像的视觉风格转换的方案。在该方案中,给定第一和第二源图像,并且期望变换第一源图像的视觉风格以至少部分地具有第二源图像的视觉风格。具体地,第一源图像的第一组特征图和第二源图像的第二组特征图被提取。第一组特征图中的特征图表征第一源图像的第一视觉风格的相应维度的至少一部分,并且第二组特征图中的特征表征第二源图像的第二视觉风格的相应维度的至少一部分。基于第一组特征图和第二组特征图,确定从第一源图像到第二源图像的第一映射。基于第一映射和第二源图像来变换第一源图像以生成至少部分地具有第二视觉风格的第一目标图像。通过该方案,实现了在特征空间中有效地将一个源图像的视觉风格施加到另一个源图像。

提供发明内容部分是为了简化的形式来介绍对概念的选择,其在下文的具体实施方式中将被进一步描述。发明内容部分无意标识要求保护的主题的关键特征或主要特征,也无意限制要求保护的主题的范围。

附图说明

图1示出了能够实施本公开的多个实现的计算设备的框图;

图2示出了图像的视觉风格变换过程涉及的示例图像;

图3示出了根据本公开的一个实现的用于图像的视觉风格变换的系统的框图;

图4示出了根据本公开的一个实现的由学习网络提取的示例特征图的示意图;

图5示出了根据本公开的一个实现的源图像与目标图像之间的区块映射关系;

图6a和图6b示出了根据本公开的一个实现的图3所示模块中的映射确定部分的结构框图;

图7示出了根据本公开的一个实现的特征图与变换特征图的融合的示意图;以及

图8示出了根据本公开的一个实现的用于图像的视觉风格变换的过程的示意图。

这些附图中,相同或相似参考符号用于表示相同或相似元素。

具体实施方式

现在将参照若干示例实现来论述本公开。应当理解,论述了这些实现仅是为了使得本领域普通技术人员能够更好地理解且因此实现本公开,而不是暗示对本主题的范围的任何限制。

如本文所使用的,术语“包括”及其变体要被解读为意味着“包括但不限于”的开放式术语。术语“基于”要被解读为“至少部分地基于”。术语“一个实现”和“一种实现”要被解读为“至少一个实现”。术语“另一个实现”要被解读为“至少一个其他实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。

示例环境

以下参考附图来说明本公开的基本原理和若干示例实现。图1示出了能够实施本公开的多个实现的计算设备100的框图。应当理解,图1所示出的计算设备100仅仅是示例性的,而不应当构成对本公开所描述的实现的功能和范围的任何限制。如图1所示,计算设备100包括通用计算设备形式的计算设备100。计算设备100的组件可以包括但不限于一个或多个处理器或处理单元110、存储器120、存储设备130、一个或多个通信单元140、一个或多个输入设备150以及一个或多个输出设备160。

在一些实现中,计算设备100可以被实现为具有计算能力的各种用户终端或服务终端。服务终端可以是各种服务提供方提供的服务器、大型计算设备等。用户终端诸如是任意类型的移动终端、固定终端或便携式终端,包括移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统(pcs)设备、个人导航设备、个人数字助理(pda)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,计算设备100能够支持任意类型的针对用户的接口(诸如“可佩戴”电路等)。

处理单元110可以是实际或虚拟处理器并且能够根据存储器120中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备100的并行处理能力。处理单元110也可以被称为中央处理单元(cpu)、微处理器、控制器、微控制器。

计算设备100通常包括多个计算机存储介质。这样的介质可以是计算设备100可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器120可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(ram))、非易失性存储器(例如,只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、闪存)或其某种组合。存储器120可以包括图像处理模块122,这些程序模块被配置为执行本文所描述的各种实现的功能。图像处理模块122可以由处理单元110访问和运行,以实现相应功能。

存储设备130可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,其能够用于存储信息和/或数据并且可以在计算设备100内被访问。计算设备100可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图1中示出,可以提供用于从可拆卸、非易失性磁盘进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。

通信单元140实现通过通信介质与另外的计算设备进行通信。附加地,计算设备100的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备100可以使用与一个或多个其他服务器、个人计算机(pc)或者另一个一般网络节点的逻辑连接来在联网环境中进行操作。

输入设备150可以是一个或多个各种输入设备,例如鼠标、键盘、追踪球、语音输入设备等。输出设备160可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备100还可以根据需要通过通信单元140与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备100交互的设备进行通信,或者与使得计算设备100与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(i/o)接口(未示出)来执行。

计算设备100可以用于实施本公开的多种实现中的图像的视觉风格变换。因此,在下文中,计算设备100有时也被称为“图像处理设备100”。在执行图像风格化时,图像处理设备100能够通过输入设备150接收源图像170。图像处理设备100可以处理该源图像170以将该源图像170的原始视觉风格改变为其他视觉风格,并且通过输出设备160输出经风格化的图像180。在本文中,图像的视觉风格可以由该图像呈现的一个或多个维度的视觉属性来体现,这样的视觉属性包括但不限于图像中的颜色、纹理、亮度、线条等等。因此,图像的视觉风格可以涉及该图像中的色彩搭配、明暗过渡、纹理特点、线条粗细和弯曲特点等一个或多个方面。在一些实现中,不同类型的图像可以被认为具有不同的视觉风格,例如由成像设备拍摄的图像,由艺术家创作的各种素描、油画、水彩画等。

图像的视觉风格变换指的是将一幅图像的视觉风格变换为另一图像的视觉风格。存在一些能够实现图像的视觉风格变换的方案。在一些常规方案中,为了将输入图像的第一视觉风格变换为第二风格,需要已知具有第一视觉风格的参考图像和具有第二视觉风格的参考图像。也就是说,事先已知在不同视觉风格下的参考图像的呈现。然后,确定从具有第一视觉风格的参考图像到具有第二视觉风格的参考图像的风格映射。使用所确定的映射变换具有第一视觉风格的输入图像以生成具有第二视觉风格的输出图像。

例如,如图2所示,在常规方案中,需要已知具有第一视觉风格的参考图像212(被表示为a)和具有第二视觉风格的参考图像214(被表示为a’)用于确定从第一视觉风格到第二视觉风格的风格映射。参考图像212和214在视觉上呈现的风格不同,但是包含的图像内容基本相同。在图2的示例中,第一视觉风格指示参考图像212是真实图像,而第二视觉风格指示参考图像214是包含相同图像内容的水彩画。通过确定的风格映射,可以变换具有第一视觉风格(即真实图像)的源图像222(被表示为b),以获得具有第二视觉风格(即水彩画)的目标图像224(被表示为b’)。在这种方案中,获得目标图像224的过程是使得从参考图像212与参考图像214的相关性与从源图像222到目标图像224的相关性相同,被表示为a:a′::b:b′。在这个过程中,仅目标图像b’224是要确定的图像。

然而,发明人通过研究发现:上述方案在许多应用场景中不适用,因为往往难以获得对同一图像的不同视觉风格的版本用于估计风格映射。例如,如果期望获得源图像中的风景在不同季节的呈现,可能难以找到多个参考图像分别具有同一风景在不同季节的呈现以用于确定对应的风格映射,并且然后在将该风格映射用于要变换的源图像。发明人已经发现在大多数应用场景中,可能仅仅具有两幅图像,并且期望将其中一幅图像的视觉风格变换成另一幅图像的视觉风格。

作为示例,在图2的示例中,可能仅图像212和图像224是可获得的,并且可能期望将图像212处理为具有图像224的第二视觉风格,和/或将图像224处理为具有图像212的第一视觉风格。此外,大多数视觉风格变换方案直接在图像像素空间上执行变换,这难以将视觉风格的不同方面有效地纳入风格转换的考虑中。

本公开的实施例提出了一种全新的图像风格化变换的方案。在该方案中,给定两个源图像,并且期望变换两个源图像中的一个源图像以至少部分地具有另一源图像的视觉风格。具体地,提取两个源图像的相应特征图,并且基于相应特征图来确定从一个源图像到另一个源图像的映射。然后,利用所确定的映射,将源图像变换为至少部分具有另一源图像的视觉风格的目标图像。通过本公开的实现,在仅已知具有相应视觉风格的两个源图像的基础上,在特征空间中基于两个源图像的相应特征图来确定从一个源图像到另一个源图像的映射,从而实现了视觉风格的有效转换。

以下通过具体示例来进一步描述本公开的各种实现。

系统架构和工作原理

参照图3,其中示出了根据本公开的一个实现的用于图像的视觉风格变换的系统的框图。该系统可以被实现在图1的计算设备100的图像处理模块122处。如所示出的,图像处理模块122包括特征图提取部分310、映射确定部分330和图像变换部分350。在图2的示例中,图像处理模块122获得的输入图像170包括两个源图像171和172,分别被称为第一源图像171和第二源图像172。

第一源图像171和第二源图像172可以具有任何相同或不相同的尺寸和/或格式。在一些实现中,第一源图像171和第二源图像172可以是语义相似的图像。如本文中所使用的,图像的“语义”或“语义结构”指的是图像中涉及可识别对象的图像内容。语义或语义结构上相似的图像可以包含相似的可识别对象,例如在结构或轮廓上相似的对象。例如,第一源图像171和第二源图像172可以都包括面部特写、某类动作、自然风景、具有相似轮廓的物体(例如建筑、桌子、椅子、设备)等等。在其他实现中,第一源图像171和第二源图像172可以是任何期望用于风格变换的图像。

根据本公开的实现,期望输入的两个源图像171和172中的至少一个图像执行视觉风格变换,以使得源图像171和172中的一个源图像的视觉风格被变换为另一个源图像的视觉风格。第一源图像171的视觉风格(被称为第一视觉风格)可以不同于第二源图像172的视觉风格(被称为第二视觉风格),以达到风格变换的目的,当然这不是必须的。具有任何视觉风格的两幅图像都可以经由图像处理模块122来处理。下面首先介绍根据本公开的实现的视觉风格变换的基本原理,并且然后介绍如何通过图3的图像处理模块122来实现视觉风格变换。

在本公开的实现中,确定视觉风格转换的问题可以被表示为:给定第一源图像171(用a表示)和第二源图像172(用b’表示),如何确定第一源图像171的至少部分具有第二视觉风格的第一目标图像(用a’表示,在图3中是输出图像180中的图像181),或者如何确定第二源图像172的至少部分具有第一风格的第二目标图像(用b表示,在图3中是输出图像180中的图像182)。在确定第一目标图像a’181时,期望第一目标图像a’181与第一源图像a171在图像内容上保持相似,因而它们的像素在图像的相同位置上是对应的。此外,还期望第一目标图像a’181与第二源图像b’172在视觉风格(例如颜色、纹理、亮度、线条等等)上相似。如果要变换第二源图像b’172,对第二目标图像b182的确定也可以满足类似原则,即第二目标图像b182与第二源图像b’172在图像内容上保持相似,同时与第一源图像a171在视觉风格上保持相似。

为了实现源图像171或172的视觉风格变换,要找到两幅源图像之间的映射。图像与图像之间的映射指示一个图像中的某些像素位置与另一个图像的某些像素位置之间的对应性(correspondence),因而也可以被称为图像的对应性。映射的确定有助于基于映射来变换图像以用另一图像的像素来替换该图像的对应像素,从而使得被变换的图像可以呈现另一图像的视觉风格,同时保持图像内容上的相似性。

在图3的示例中,如果变换第一源图像a171的第一视觉风格以使得第一目标图像a’181至少部分地具有第二源图像b’172的第二视觉风格,要确定从第一源图像a171到第二源图像b’172的映射被称为第一映射(被表示为φa→b)。第一映射φa→b可以表示从第一源图像的像素到第二源图像b’172的相应像素的映射。类似地,如果要变换第二源图像b’172的第二视觉风格以使得第二目标图像b182至少部分地具有第一源图像a171的第一视觉风格,要确定从第二源图像b’172到第一源图像a171的映射被称为第二映射(被表示为φb→a)。

在下文讨论中首先详细描述在要变换第一源图像a171的视觉风格的情况下对第一映射φa→b的确定。第二映射φb→a是第一映射φa→b的反向映射,并且如果需要的话,也可以以类似的方式被确定。

根据本公开的实现,在特征空间中确定源图像之间的映射。具体地,在图3的示例中,由特征图提取部分310提取第一源图像a171的第一组特征图321,并且提取第二源图像b’172的第二组特征图322。第一组特征图321中的特征图表征第一源图像a171的第一视觉风格的相应维度的至少一部分,并且第二组特征图322中的特征图表征第二源图像b’172的第二视觉风格的相应维度的至少一部分。第一源图像a171的第一视觉风格或第二源图像b’172的第二视觉风格都可以由多个维度来呈现,这些维度可以包括但不限于图像的颜色、纹理、亮度、线条等等视觉属性。对源图像171和172提取特征图可以有效地表示图像的语义结构(用于反映图像内容)并且分离出源图像的图像内容和各个维度的视觉风格。图像的特征图提取将在以下详细描述。

特征图提取部分310提取的第一组特征图321和第二组特征图322被提供给映射确定部分330。映射确定部分330在特征空间中基于第一和第二组特征图321和322来确定从第一源图像a171到第二源图像b’172的第一映射φa→b作为输出341。映射确定部分330确定的第一映射φa→b可以指示第一源图像a171的像素的位置到第二源图像b’172的像素的位置的映射。也就是说,对于第一源图像a171中的任何像素位置p,通过第一映射341φa→b,可以确定与该位置p对应的在第二源图像b’172的映射位置q。关于在特征空间中的映射确定将在下文中更详细的讨论。

第一映射341被提供给图像变换部分350。图像变换部分350基于第一映射341φa→b和第二源图像b’172,变换第一源图像a171以生成第一目标图像a’181,如图3所示。具体地,利用第一映射341φa→b,图像变换部分350可以确定第一源图像a171的每个位置p映射到的第二源图像b’172的像素的位置q,并且因此可以将第一源图像a171中位置p的像素替换为第二源图像b’172中所映射到的位置q的像素。映射像素被替换后的图像即为第一目标图像a’181。因此,第一目标图像a’181具有第二源图像b’172的部分或全部第二视觉风格。这个映射过程可以被表示为如下:

a′(p)=b′(φa→b(p))(1-1)

其中a′(p)表示第一目标图像a’181中位置p处的像素,φa→b(p)表示利用第一映射φa→b从目标图像a’181中位置p映射到的第二源图像b’172的位置q,并且b′(φa→b(p))表示第二源图像b’172中位置φa→b处的像素。

在另外一些实现中,取代按像素替换第一源图像a171的像素,还可以通过区块聚合来变换第一源图像a171。具体地,对于第一源图像a171中位置p,标识包含第一源图像a171中位置p的像素的区块n(p)。n(p)的大小可以被配置,例如根据第一源图像a171的尺寸来配置。第一源图像a171尺寸较大,则区块n(p)的大小也可以越大。通过第一映射确定第一源图像a171的区块n(p)在第二源图像b’172中被映射到的区块。区块之间的映射可以通过区块中的像素映射来确定。然后,第一源图像a171中位置p的像素可以被替换为第二源图像b’172中被映射到的区块中的像素的平均值,这可以被表示为如下:

其中n表示区块n(p)中的像素的数目,φa→b(x)表示从区块n(p)中位置x通过第一映射341被映射到第二源图像b’172中的位置,并且b′(φa→b(x)表示在第二源图像b’172中被映射到的位置φa→b(x)的像素。

备选地或附加地,除了按照以上公式(1-1)和(1-2)来直接变换第一源图像a171之外,还可以对第一映射φa→b、对经由第一映射φa→b直接变换后的目标图像和/或对第一源图像a171的进一步处理来使得所得到的第一目标图像a’181仅具有第二源图像b’172的部分视觉风格。例如,第一目标图像a’181可以仅表现第二源图像b’172在颜色、纹理、亮度、线条等某一个维度的视觉风格,而保留第一源图像a171在其他维度的视觉风格。这方面的变化可以由采用不同手段来实现,本公开的实现在此方面不受限制。

在本公开的实现中,在特征空间中获得源图像之间的像素级映射。这样的映射可以不仅使得变换后的第一目标图像181保持第一源图像171的语义结构(即图像内容),还可以将第二源图像172的第二视觉风格施加到第一目标图像181。因此,第一目标图像181不仅在图像内容上与第一源图像171相似,而且在视觉风格上与第二源图像172相似。

在以下将描述的可选实现中,如果还期望变换第二源图像b’172的视觉风格,映射确定部分330还可以在特征空间中基于第一和第二组特征图321和322来确定从第二源图像b’172到第一源图像a171的第二映射φb→a作为输出342。图像变换部分350基于第二映射φb→a和第一源图像a171来变换第二源图像b’172,以生成第二目标图像b182,如图3所示。因此,第二目标图像b182具有第二源图像b’172的部分或全部第二视觉风格。第二目标图像b182的生成与第一目标图像a’181的生成方式类似,在此不再赘述。

特征图的提取

在提取特征图中,特征图提取部分310可以采用预定义的学习网络。源图像171和172可以被输入到学习网络中,并且从中获得特征图提取的输出。这样的学习网络也可以被称为神经网络、学习模型,或者被简称为网络或模型。为了讨论方便,这些术语在本文中可互换地使用。预定义的学习网络指的是该学习网络已经用训练数据进行训练,因而能够对新输入的图像提取特征图。在一些实现中,可以使用被训练用于对象识别的目的的学习网络来提取源图像171和172的多个特征图。在其他实现中,被训练用于其他目的的学习网络也可以同样被使用,只要学习网络在运行过程中能够提取输入图像的特征图即可。

学习网络可以具有层级结构,包含多个层,每个层可以提取源图像的相应特征图。因而,在图3中,第一组特征图321分别提取自层级学习网络的多个层,并且第二组特征图322也分别提取自层级学习网络的多个层。在层级学习网络中,源图像的特征图从下至上被处理和生成。较低层提取的特征图可以被传递给较高层继续处理,以获得相应的特征图。因此,提取出第一个特征图的层可以是层级学习网络的底层,而提取出最后一个特征图的层可以是层级学习网络的顶层。通过观察和分析大量层级学习网络的特征图可以看出,由较低层提取的特征图可以表征源图像的更丰富细节信息,包括图像的内容和更多维度的视觉风格。随着较低层的特征图被较高层不断处理,先前的特征图中的不同维度的视觉风格可能被分离为由一个或多个层提取的特征图来表征。提取自顶层的特征图可以被认为主要表征源图像的图像内容信息,而可能仅能够表征源图像的较小部分的视觉风格。

学习网络可以由大量的学习单元(也被称为神经元)组成。通过训练过程,这些神经元的相应参数被确定,从而能够完成特征图提取以及后续的任务。各种类型的学习网络均可以被采用。在一些示例中,特征图提取部分310可以采用在图像处理方面表现出色的卷积神经网络(cnn)来实现。cnn网络主要由多个卷积(convolution)层、执行非线性变换的激励层(由非线性激励函数组成,例如relu函数)和池化(pooling)层构成。卷积层和激励层可以交替排列,用于特征图提取。在一些学习网络的构建中,池化层被设计用于将前一特征图进行降采样(例如以2倍或更高速率降采样),然后提供作后续的输入。池化层主要用于构建具有金字塔的特征图,其中从学习网络的底层到顶层,输出的特征图的尺寸不断变小。底层输出的特征图的尺寸与源图像(171或172)的尺寸相同。池化层可以被设置在激励层或卷积层之后。在另外一些学习网络的构建中,卷积层也可以被设计用于将前一层提供的特征图进行降采样,以改变特征图的尺寸。

在一些实现中,由特征图提取部分310采用的基于cnn的学习网络在各个层之间可以不对特征图进行降采样,因而输出的第一组特征图321的尺寸均与第一源图像171相同,并且输出的第二组特征图322的尺寸均与第二源图像172相同。在这种情况中,在提取特征图时,可以将基于cnn的学习网络中的激励层中的多个激励层或多个卷积层的输出作为相应层的特征图。当然,基于cnn的学习网络中的激励层或卷积层的数目可以大于为每个源图像提取的特征图的数目。

在另外一些实现中,由特征图提取部分310采用的基于cnn的学习网络可以包含一个或多个池化层,以为源图像171或172提取具有多个不同尺寸的特征图321或322。在这些实现中,可以将池化层、卷积层或激励层中任一层的输出作为所提取的特征图。每当经过一个池化层,特征图相比于从该池化层之前提取的特征图而言,尺寸将被降低。在包含池化层的一些实现中,提取自学习网络的多个层的第一组特征图321均具有不同的尺寸,以组成金字塔结构,并且第二组特征图322也可以组成金字塔架构。这样的不同尺寸的特征图有助于在确定源图像之间的映射时提供从粗到细的映射估计,如以下将讨论的。

在一些实现中,从第一源图像171和第二源图像172提取的特征图的数目可以是任意大于1的值,其可以等于由从学习网络获得特征图的层数(被表示为l)。由基于cnn的学习网络提取的每个特征图可以被表示为三维(3d)张量(tensor),该张量具有在宽度、高度和通道三个维度上的分量。

图4示出了由学习网络提取的第一组特征图321(被表示为fa)和第二组特征图样322(被表示为fb’)的示例。在图4的示例中,从学习网络提取的特征图321和322的每个特征图都由3个分量组成的3d张量表示。第一组特征图321和第二组特征图322分别组成金字塔结构,该金字塔结构中的每一层的特征图对应于由学习网络的相应特征提取层。在图3的示例中,层的数目为l。第一组特征图321中提取自学习网络的第1层的特征图的尺寸最大,并且与源图像171的尺寸相似,而第l层的特征图的尺寸最小。第二组特征图322的相应尺寸也类似。

应当理解,以上仅给出了用于特征图提取的学习网络的示例。在其他实现中,可以采用其他学习网络或者可以采用不同组成的其他cnn网络来提取源图像171和172的特征图。此外,在一些实现中,特征图提取部分310还可以采用不同的学习网络来分别提取源图像171和172的特征图,只要提取出的特征图的数目相同即可。

图像间映射的确定

映射确定由图3的映射确定部分330基于第一源图像a171和第二源图像b’172的特征图321和322来确定。首先描述对从第一源图像a171到第二源图像b’172的第一映射341φa→b的确定。在确定第一映射341φa→b的过程中,映射确定部分330可以基于特征图321和322来找到第一源图像a171的像素的位置与第二源图像b’172的像素的位置之间的对应性。以下讨论在本公开的一些示例实现中如何从特征图来确定映射。

根据上文讨论可知,为了实现视觉风格变换,第一映射341φa→b的确定可以使得第一目标图像a’181在图像内容上与第一源图像a171相似并且在视觉风格上与第二源图像b’172相似。在内容上的相似性使得第一目标图像a’181与第一源图像a171的像素位置可以一一对应。这样才可以使得源图像a171中的图像内容、包括各种物体在变换后能够保持结构上(或语义上)的相似性,从而不至于使得例如源图像a171中的人脸轮廓在目标图像a’181中扭曲成非人脸轮廓。此外,为了呈现第二源图像b’172的视觉风格,第一目标图像a’181的某些像素被替换为映射到的第二源图像b’172的像素值。

基于这样的映射原理,给定第一源图像a171到第二源图像b’172,确定第一映射341φa→b的过程等同于标识第一源图像a171与第一目标图像a’181之间的最接近邻近区域(nearest-neighborfieldnnf)和标识第一目标图像a’181与第二源图像b’172之间的nnf。因而,从第一源图像a171到第二源图像b’172的映射φa→b可以被划分为从第一源图像a171到第一目标图像a’181的原地映射(in-placemapping)(因为这两幅图像的像素位置一一对应)和从第一目标图像a’181到第二源图像b’172的映射。这可以在图5中被图示。

如图5所示,三幅图像a171、a’181与b’172之间的某个区块存在映射。第一源图像a171中的区块502到第二源图像b’172的区块506的映射可以被划分为从区块502到第一目标图像a’181的区块504的映射和从区块504到区块506的映射。由于第一源图像a171到第一目标图像a’181的映射是一对一的原地映射,因而从第一目标图像a’181到第二源图像b’172的映射与从第一源图像a171到第二源图像b’172的映射是等同的,都可以被表示为φa→b。这个关系可以被应用于映射模块330对第一映射φa→b的确定过程,以便简化对从第一源图像a171到第二源图像b’172的映射的直接确定过程。

在从第一目标图像a’181与第二源图像b’172的映射中,期望使得第一目标图像a’181与第二源图像b’172在视觉风格上相似,由于特征空间中的特征图可以表征图像的视觉风格的不同维度。因而,确定的第一映射φa→b还应使得第一目标图像a’181与第二源图像b’172的特征图具有相似性,也即使得第一目标图像a’181与第二源图像b’172之间存在nnf。由于第一目标图像a’181的特征图是未知的,从以下讨论可以看出,确定第一映射φa→b的过程可以涉及对第一目标图像a’181的特征图的重构。

在一些实现中,由于特征图321和322均是从层级学习网络获得的。这样的学习网络、尤其是基于cnn的学习网络提取的特征图可以提供从底层的丰富视觉风格内容到高层的图像内容和少量视觉风格内容的逐渐过渡。映射确定部分330可以基于这样的层级结构,以迭代过程来确定第一映射φa→b。图6a和图6b示出了映射确定部分330的示例结构图。如所示出的,映射确定部分330包括中间特征图重构模块602、中间映射估计模块604和映射确定模块606。中间特征图重构模块602和中间映射估计模块604针对提取自层级学习网络的各个层的第一组特征图321和第二组特征图322迭代地操作。

中间特征图重构模块602用于基于已有的特征图(即第一组特征图321和/或第二组特征图322)重构未知的第一目标图像a’的特征图(被称为中间特征图)。在一些实现中,假设层级学习网络的层数为l,并且因此第一组特征图321或第二组特征图322的特征图的数目也为l。中间特征图重构模块602可以迭代地从层级结构自顶向下确定第一目标图像a’的特征图。

中间特征图和中间映射

针对顶层l,如图6a所示,由于第一组特征图321(被表示为fa)中提取自顶层的特征图321-1(被表示为)由于存在较多图像内容和较少视觉风格信息,因而中间特征图重构模块602可以将第一目标图像a’181在顶层的特征图610(被表示为)估计为等于特征图321-1在顶层的特征图,即所估计的第一目标图像a’181在各个层的特征图、包括特征图610也可以被称为与第一源图像a171相关联的中间特征图。假设第二源图像b’172的第二组特征图322中提取自顶层的特征图322-1被表示为

第一目标图像a’181在顶层的特征图610与第二源图像b’172在顶层的特征图也满足映射关系。假设该映射关系为针对顶层的中间映射,被表示为中间特征图重构模块602将确定的中间特征图610和从特征图映射模块330获得的特征图322-1提供给中间映射估计模块604,用于估计中间映射630在中间映射估计模块604中,中间映射630的确定的目标在于使得中间特征图610与特征图322-1在对应位置处的像素相似,从而可以确保第一目标图像a’181与第二源图像b’在视觉风格上相似。

具体地,这样的相似可以通过使得中间特征图610中各个位置p的像素与该位置映射到特征图322-1中位置q的像素之间的差异较小,而位置p在特征图322-1中映射位置q是通过中间映射630确定。中间映射估计模块604通过不断调整中间映射630可以使得中间特征图610中位置p的像素与特征图322-1中映射位置q之间的差异不断减小。当该差异满足预定条件时,例如差异小于预定阈值时,中间映射估计模块604可以确定输出的中间映射630

在一些实现中,取代于仅考虑单个像素之间的差异最小化,在确定中间映射630时,还可以使得中间特征图610中包含位置p的像素的区块与特征图322-1中包含映射位置q的像素的区块之间的差异较小或最小。也就是说,所确定的中间映射630的目标在于能够标识出中间特征图610与特征图322-1中的最接近邻近区域。这个过程可以被表示如下:

其中n(p)表示中间特征图610中包含位置p处的像素的区块,n(q)表示特征图322-1中包含位置q处的像素的区块。相应区块的大小可以被设置,并且可以取决于特征图的大小。此外,在公式(2)中,表示对在fl(x)的区块中位置x处的特征fl(x)的所有通道的向量归一化后的特征,可以被计算为当然,不执行这样的归一化,而是直接使用特征fl(x)来确定也是可以的。

根据公式(2)可知,应当要使得确定的中间映射630在特征图322-1中找到像素位置q,使得包含位置q处的区块与中间特征图610中的n(p)的差异较小。在确定中间映射的过程中,由中间映射估计模块602确定的中间特征图实际上被用作初始估计值。中间映射的确定过程将导致实际的中间特征图被变换。对于以下讨论的其他层,其他中间特征图也类似地被改变。

针对顶层l的中间映射630可以继续由中间映射估计模块604反馈给中间特征图提取模块602,以继续确定第一目标图像a’181在下层的中间特征图。图6b示出了映射确定部分330在迭代过程中针对顶层l以下的层l-1的中间特征图和中间映射的确定的示意图。在层l-1处,中间映射的确定原理与在层l处类似。因此,映射确定部分330中的中间映射估计模块604还可以以类似于以上公式(2)等示出的原理来确定中间映射,以使得第一目标图像a’181在层l-1处的中间特征图(被表示为)的与第二组特征图322在层l-1的特征图322-2(被表示为)在对应位置处的像素相似。

由于在层级结构中,较低层的特征图中将会包含更多视觉风格上的信息。因此,期望中间特征图构建模块602在构建第一目标图像a’181在层l-1的中间特征图612时,将考虑来自第一源图像a171的第一组特征图321中提取自学习网络的层l-1的特征图321-2(被表示为)以确保内容上的相似性。此外,还考虑来自第二源图像b’172的第二组特征图322中提取自层l-1的特征图322-2(被表示为)以确保视觉风格上的相似性。由于特征图322-2与特征图321-2在像素级别上不存在一对一的对应性,因而需要将特征图322-2变换(或扭曲(warp))到与特征图321-2一致,所得到的结果可以被称为变换特征图(被表示为)。变换特征图将具有与特征图321-2完全对应的像素。如以下将讨论的,从特征图322-2变换得到的变换特征图可以基于层l-1之上的层(即层l)的中间映射来确定。

中间特征图构建模块602可以通过融合(或组合)变换特征图和特征图321-2来确定第一目标图像a’181在层l-1的中间特征图612在一些实现中,中间特征图构建模块602可以基于相应权重来融合变换特征图和特征图321-2,这可以被表示为如下:

其中ο表示在特征图的每个通道上按元素相乘,表示特征图321-2的权重,而表示变换特征图的权重。可以是2d权重图,其中的每个元素可以取从0至1的值。在一些实现中,可以对3d特征图的每个通道都是用同一权重图用于权衡图像结构内容与视觉风格的细节在中间特征图612中的比例。通过将特征图321-2与权重相乘,并且将变换特征图与权重相乘,可以将特征图321-2中的图像内容信息与变换特征图中的视觉风格信息结合到中间特征图612中。的确定将在以下详细讨论。

当中间特征图构建模块602生成中间特征图612之后,可以将中间特征图612连同第二组特征图322中提取自层l-1的特征图322-2提供给中间映射估计模块604。中间映射模块604基于这些信息确定针对层l-1的中间映射632对中间映射632的估计方法可以类似于以上描述的针对层l的中间映射630的确定方式。例如,确定中间映射632的目标在于使得中间特征图612中位置p的像素与特征图322-2中利用中间映射632将位置p映射到的位置q的像素之间的差异被减小到满足预定条件(例如小于预定阈值)。这可以例如与通过上述公式(2)类似的方式来确定。为了简洁,在此不再赘述。

以上讨论了如何针对层l和层l-1层估计第一目标图像a’181针对相应层的中间特征图,并且由中间特征图确定针对该层的中间映射。在一些实现中,中间特征图重构模块602和中间映射估计模块604可以继续针对层l-1以下的层迭代地确定相应的中间特征图和中间映射。在一些实现中,中间特征图重构模块602和中间映射估计模块604中的计算可以迭代直至计算出针对学习网络的底层(即层1)的中间映射在一些实现中,也可以仅计算出针对若干较高层的中间映射。

第一映射的确定

由中间映射估计模块604针对学习网络的顶层l之下的各个层确定的中间映射可以被提供给映射确定模块608用于确定第一映射341φa→b。在一些实现中,如果中间映射估计模块604估计出针对层1的中间映射可以将该中间映射提供映射确定模块608。映射确定模块608可以将针对层1的中间映射直接确定为第一映射341φa→b。

在其他实现中,中间映射估计模块604可能并未计算出针对学习网络的全部层的中间映射,并且可以针对层1以上的层确定中间映射提供给映射确定模块608用于确定第一映射341。如果第一组特征图321的尺寸相同(即等于第一源图像a171的尺寸),由中间映射估计模块604提供的中间映射与第一映射341的尺寸也相同(其也等于第一源图像a171的尺寸),因而也可以被直接确定为第一映射341。如果从学习网络的较高层提取的特征图相比于第一源图像a171的尺寸减小,那么映射确定模块608可以进一步处理获得的针对层1以上的中间映射、例如可以将获得的中间映射上采样到与第一映射341要求的尺寸相同。

变换特征图的确定

接下来讨论在上述迭代过程中中间特征图重构模块602如何针对每个层确定变换特征图。在下文中,以对层l-1的变换特征图为例来讨论。当迭代到其他层时,中间特征图重构模块602也可以以类似的方式来确定相应的变换特征图,以用于重构中间特征图。

理想而言,希望变换特征图等于对第二组特征图322中在层l-1处的特征图322-2的扭曲或变换结果,即然而,由于当前针对层l-1的中间映射是未知的,因此无法直接确定变换特征图在一些实现中,由中间映射估计模块604反馈的针对上层l的中间映射可以用于帮助中间特征图重构模块602确定变换特征图

在一个实现中,中间特征图重构模块602可以基于针对上层l的中间映射来确定针对当前层l-1的中间映射的初始映射。在一个实现中,如果在学习网络中从层l-1到层l对特征图进行降采样(例如经过池化层),那么为了满足层l-1处要被变换的特征图322-2的尺寸,可以将针对上层l的中间映射上采样,并且然后将经过上采样后的映射作为中间映射的初始映射。如果在学习网络中从层l-1到层l,特征图的尺寸不变,则可以直接将中间映射确定为中间映射的初始映射。然后,中间特征图重构模块602可以利用对中间映射的初始映射来变换特征图322-2即类似于即只不过其中的被替换为其估计的初始映射。

通过基于中间映射对中间映射进行初始估计可能导致来自上层l的特征图的映射结构无法被继续保留,会带来对后续第一映射341的估计偏差。在另外一个实现中,中间特征图重构模块602可以首先利用已知的中间映射来变换第二组特征图322中提取自层l的特征图322-1,以获得该特征图的变换特征图,即在提取特征图的学习网络中,虽然经过变换,层l的变换特征图与层l-1的变换特征图也满足学习网络中的处理原则。也就说,期望通过对层l-1的目标变换特征图执行从下层l-1到上层l的特征变换处理过程,可以获得层l的变换特征图

假设在学习网络中层l-1与层l之间的子网络中包括的所有神经网络处理单元或层的特征变换处理被表示为确定层l-1的变换特征图的目标是使得的输出(也可以被认为是另一变换特征图)尽可能接近于层l的变换特征图在一些实现中,可以通过对变换特征图求处理过程的逆过程来获得然而,可能由于涉及较多非线性处理,因而难以直接求逆。在另外一些实现中,可以采用一个迭代过程来确定层l-1的目标变换特征图

在确定的迭代过程中,可以初始对随机化。然而,通过不断更新使得输出的变换特征图与层l的变换特征图之间的差异减小(例如减小到满足预定条件、例如预定阈值)。在一个实现中,在迭代过程中,可以采用可以通过梯度下降法来不断更新从而以更快的速度获取目标这个过程可以被表示为使得如下损失函数较小或最小化:

在使用梯度下降法的情况中,可以确定梯度可以使用各种优化方法来确定梯度并且更新以使得公式(4)中的损失函数减小或最小化。例如,可以l-bfgs(有限记忆bfgs)优化算法来确定目标当然,还可以采用其他方法来使得上述损失函数满足最小化的条件或者使得能够确定出满足要求的变换特征图本公开的范围在此方面不受限制。确定的变换特征图可以用于中间特征图的重构,例如如公式(3)所示的重构。

上述中间特征图构建模块602中基于上一层l的变换特征图来确定当前层l-1的变换特征图,从而对特征图321-2与变换特征图的融合过程可以如图7所示。如所示出的,可以对第二组特征图322中在层l的特征图322-1变换(利用中间映射),获得针对l层的变换特征图702。基于针对l层的变换特征图702(例如通过上述公式(4),可以进一步确定出针对l-1层的变换特征图701利用相应权重图714和权重图712,该变换特征图701可以与第二组特征图321在l-1层的特征图321-2被融合得到中间特征图612。

中间特征图重构中的权重确定

在上述迭代过程中,中间特征图重构模块602还可以基于权重来融合针对每个层确定的变换特征图和第二组特征图322中的相应特征图。在下文中,以在层l-1使用的权重为例来讨论。当迭代到其他层时,中间特征图重构模块602也可以以类似的方式来确定相应的权重。

在层l-1,如上文提及的,中间特征图重构模块602基于特征图321-2和变换特征图701的相应权重(即权重)来融合这两个特征图。权重用于权衡特征图321-2的图像结构内容与变换特征图701包含的视觉风格的细节在中间特征图612中占据的比例。在一些实现中,期望权重可以帮助定义第一源图像a171在特征图321-2中的图像内容的空间适应性权重。因此,可以考虑特征图321-2中相应位置处的量值。如果特征图321-2中位置x属于第一源图像a171中的明显结构,在特征空间中该位置在对应特征通道处的响应非常高,即中对应通道的幅度较大。如果位置x在平坦或没有结构的区域,则较小,例如

在一些实现中,可以将特征图321-2中相应位置处的量值对权重的影响表示为影响分子可以也是与对应的一个2d权重图,并且可以由来确定。在一些实现中,在位置x的取值可以被确定为函数。之间可以用各种函数关系来表示他们之间的相关性。例如,可以应用sigmoid函数来确定其中κ和τ为预定常数。例如,可以设置к=300并且τ=0.05。к和τ的其他取值也是可行的。在一些实现中,在计算中,可以将归一化,例如用的最大取值来归一化。

在一些实现中,权重可以基于影响分子来确定,例如被确定为等于备选地或附加地,权重还可以基于与当前层l-1有关的预定权重(被表示为αl-1)来确定。因为由学习网络的不同层提取的第一源图像a171特征图在表征源图像a171的图像内容上不同,高层呈现的图像内容更多。在一些实现中,可以通过对当前层l-1有关的预定权重αl-1来进一步权衡特征图321-2的图像内容被融合到中间特征图612的量。在一些实现中,可以从高层向底层不断降低与该层对应的预定权重(对顶层无需设置权重)。例如,层l-1的预定权重αl-1可以大于层l-2的预定权重。在一些示例中,权重可以被确定为层l-1的预定权重αl-1的函数,例如等于αl-1

在一些实现中,权重可以基于以上讨论的和αl-1两者来确定,这可以被表示为:

然而,应当理解,公式(5)仅是一个示例。还可以采用其他任何方式结合和αl-1两者来确定权重本公开的示例在此方面不受限制。

中间映射的双向约束

在以上讨论的实现中,确定中间映射时考虑了从第一目标图像a’181的特征图到第二目标图像b182的特征图的映射,这等同于从第一源图像a171到第二源图像b’172的第一映射φa→b。在另外的实现中,在基于第一源图像a171和第二源图像b’172执行视觉风格变换时,除了从第一源图像a171到第二源图像b’172的第一映射φa→b之外,还可能存在从第二源图像b’172到第一源图像a171的第二映射342φb→a(即使不一定要确定第二目标图像b182)。在一些实现中,期望在第一映射φa→b的确定过程中,使得两个方向的映射具有对称性和一致性。这样的约束在同时要对第二源图像b’172执行视觉风格变换的情况中更有助于获得良好的变换结果。

这样的双向映射可以被表示为:φb→a(φa→b(p))=p。也就是说,利用第一映射φa→b,第一源图像a171的位置p(或第一目标图像a’181)被映射到第二源图像b’172(或第二目标图像b182)的位置q=φa→b(p)。继续利用第二映射φb→a对第二源图像b’172(或第二目标图像b182)的位置q=φa→b(p)进行映射,该位置q还能够被映射回到第一源图像a171的位置p。基于这样的双向映射的对称性,φa→b(φb→a(p))=p也成立。

在基于这样的双向约束来确定第一映射φa→b的实现中,从第一源图像a171到第二源图像b’172的前向方向中的约束可以由上述确定中间映射的过程中对中间特征图的估计来体现。例如,在公式(2)和(3)中,针对层l和l-1的中间特征图610和中间特征图612的估计取决于中间映射等前向方向的映射。对于除了层l之外的其他层,中间特征图也都分别取决于针对相应层确定的中间映射。在一些实现中,映射确定部分330在确定第一映射φa→b时也可以以与前向方向的约束类似的方式来对称地考虑从第二源图像b’172到第一源图像a171的反向方向上的约束。这例如可以参照关于图6a和图6b描述的映射确定部分330的示例实现。

具体地,继续参照回图6a和图6b,映射确定部分330的中间特征图重构模块602可以基于已有的特征图(即第一组特征图321和/或第二组特征图322)来重构未知的第二目标图像b182的中间特征图,这样的中间特征图可以被称为与第二源图像b’172相关联的中间特征图。对第二目标图像b182的中间特征图的估计过程可以与以上对第一目标图像a’181的中间特征图的估计过程类似,也依据用于特征提取的学习网络的层级结构从顶层到底层迭代地被确定。

例如,如图6a所示,针对顶层l,第二目标图像b182的中间特征图可以被表示为中间特征图620中间特征图重构模块602可以以与中间特征图610类似的方式确定中间特征图620例如被确定为等于第二组特征图322中提取自顶层l的特征图322-1在这种情况中,除了中间特征图610与特征图322-1之外,中间特征图重构模块602还将确定的中间特征图620和第一组特征图321中提取自层l的特征图321-1提供给中间映射估计模块604。中间映射估计模块604将基于这些特征图来共同确定中间映射630在这种情况下,上述公式(2)可以被进一步修改为:

其中表示对在fl(x)的区块中位置x处的特征fl(x)的所有通道的向量归一化后的特征,可以被计算为在公式(6)中,公式(2)中的项被保留。公式(6)中的项用于体现在从第二源图像b’172到第一源图像a171的反向方向的约束,因为是从中间特征图620计算并且与映射有关。这在对层l以下的层的计算时体现更加明显。

针对层l-1,中间特征图重构模块602除了确定与第一源图像a171相关联的中间特征图612还确定与第二源图像b’172相关联的中间特征图622对中间特征图622的确定与中间特征图612类似的方式,例如与公式(3)给出的方式类似。例如,可以基于上一层l的中间映射来变换(扭曲)特征图321-2获得对应的变换特征图,使得变换特征图居于与特征图322-2一一对应的像素。然后,中间特征图重构模块602还将变换特征图与特征图322-2融合(例如基于权重)。也应当理解,在特征图融合时,变换特征图以及相应的权重的确定也与以上讨论的实现类似。

对于学习网络中层l-1以下的层,均可以类似地迭代地确定中间特征图和中间映射,从而不断地确定出针对各个层的中间映射以用于确定第一映射φa→b。根据公式(6)可以看出,中间映射被确定为使得特征图321-1中包含位置x处的像素的区块n(p)与中间特征图中由位置x映射过来的位置y处的像素之间的差异较小或最小。这样的约束通过中间映射的逐层向下确定,不断被传递到下层。因而,基于这样的中间映射确定的第一映射φa→b满足反向方向的约束。

应当理解,虽然在图3至图7中以源图像171和172为示例进行说明并且还图示了在这两个源图像的基础上处理得到的各种图像,然而这并不对本公开的范围造成任何限制。在实际使用中,可以向图像处理模块122输入任意的两幅源图像以实现在它们之间的风格转换。此外,取决于在图像处理模块122的各个部分以及子模块之中采用的技术不同,这些模块、部分或子模块输出的图像也可能会不同。

视觉风格变换的扩展

如以上关于图3提及的,在一些实现中,也可以由映射确定部分330确定从第二源图像b’172到第一源图像a171的第二映射φb→a。图像变换部分350可以利用第二映射φb→a来变换第二源图像b’172,以生成第二目标图像b182。第二映射φb→a是第一映射φa→b的逆映射,因此也可以以类似的方式确定,例如以上关于图6a和图6b描述的方式。例如,在图6a和图6b中以虚线框示出,中间映射模块604也可以确定针对不同层(例如层l和l-1)确定的中间映射640和中间映射642当然,也可以继续迭代地针对层l-1以下的层继续确定中间映射,并且基于某个层(例如底层1)的中间映射来确定第二映射φb→a。这样的具体确定过程是可以清楚地从上文理解的,因此将不再赘述。

示例过程

图8示出了根据本公开一些实现的用于图像的视觉风格变换的过程800的流程图。过程800可以由计算设备100来实现,例如可以被实现在计算设备100的存储器120中的图像处理模块122处。在810,图像处理模块122提取第一源图像的第一组特征图和第二源图像的第二组特征图。第一组特征图中的特征图表征第一源图像的第一视觉风格的相应维度的至少一部分,并且第二组特征图中的特征表征第二源图像的第二视觉风格的相应维度的至少一部分。在820,图像处理模块122基于第一组特征图和第二组特征图,确定从第一源图像到第二源图像的第一映射。在830,图像处理模块122基于第一映射和第二源图像来变换第一源图像以生成第一目标图像,第一目标图像至少部分地具有第二视觉风格。

在一些实现中,提取第一组特征图和第二组特征图包括:利用具有多个层的层级学习网络来提取第一组特征图和第二组特征图,第一组特征图分别提取自层级学习网络的多个层,并且第二组特征图分别提取自层级学习网络的多个层。

在一些实现中,确定第一映射包括:针对层级学习网络的多个层中的第一层,生成第一中间映射,第一中间映射指示从第一组特征图中从第一层提取的第一特征图到第二组特征图中从第一层提取的第二特征图的映射;以及基于第一中间映射确定第一映射。生成第一中间映射包括:基于针对多个层中的第二层的第二中间映射来变换第二特征图以获得第一变换特征图,第二层在第一层之上,通过融合第一变换特征图和第一特征图,来生成与第一源图像相关联的第一中间特征图,以及确定第一中间映射,使得第一中间特征图中的第一像素与第二特征图中利用第一中间映射从第一像素映射到的第二像素之间的差异减小直到满足第一预定条件。

在一些实现中,确定第一中间映射进一步包括:基于针对第二层的第三中间映射来变换第一特征图以获得第二变换特征图;通过融合第二变换特征图和第二特征图,来生成与第二源图像相关联的第二中间特征图;以及确定第一中间映射,进一步使得第一特征图中对应于第一像素的第三像素与第二中间特征图中对应于第二像素的第四像素之间的差异减小直到满足第二预定条件。

在一些实现中,变换第二特征图以获得第一变换特征图包括:基于第二中间映射确定针对第一中间映射的初始映射;以及利用第一中间映射的初始映射来变换第二特征图以获得第一变换特征图。

在一些实现中,变换第二特征图以获得第一变换特征图包括:利用第二中间映射来变换第二组特征图中提取自第二层的第三特征图,以获得第三变换特征图;以及通过变换第二特征图来获得第一变换特征图,使得对第一变换特征图执行从第一层到第二层的特征变换而得到的第四变换特征图与第三变换特征图之间的差异减小直到满足第三预定条件。

在一些实现中,生成第一中间特征图包括:基于以下至少一项确定第一变换特征图和第一特征图的相应权重:第一特征图中相应位置的量值和与第一层相关联的预定权重;以及通过基于所确定的相应权重融合第一变换特征图和第一特征图,来生成第一中间特征图。

在一些实现中,基于第一中间映射确定第一映射包括:响应于第一层是多个层中的底层,将第一中间映射直接确定为第一映射。

在一些实现中,第一组特征图具有多个不同的第一尺寸,并且第二组特征图具有多个不同的第二尺寸。

在一些实现中,动作进一步包括:基于第一组特征图和第二组特征图,确定从第二源图像到第一源图像的第二映射;以及基于第二映射和第一源图像来变换第二源图像以生成第二目标图像,第二目标图像至少部分地具有第一视觉风格。

示例实现方式

以下列出了本公开的一些示例实现方式。

在一方面,本公开提供了一种设备。该设备包括:处理单元;存储器,耦合至所述处理单元并且包含存储于其上的指令。所述指令在由所述处理单元执行时使所述设备执行动作,动作包括:提取第一源图像的第一组特征图和第二源图像的第二组特征图。第一组特征图中的特征图表征第一源图像的第一视觉风格的相应维度的至少一部分,并且第二组特征图中的特征表征第二源图像的第二视觉风格的相应维度的至少一部分;基于第一组特征图和第二组特征图,确定从第一源图像到第二源图像的第一映射;以及基于第一映射和第二源图像来变换第一源图像以生成第一目标图像,第一目标图像至少部分地具有第二视觉风格。

在一些实现中,提取第一组特征图和第二组特征图包括:利用具有多个层的层级学习网络来提取第一组特征图和第二组特征图,第一组特征图分别提取自层级学习网络的多个层,并且第二组特征图分别提取自层级学习网络的多个层。

在一些实现中,确定第一映射包括:针对层级学习网络的多个层中的第一层,生成第一中间映射,第一中间映射指示从第一组特征图中从第一层提取的第一特征图到第二组特征图中从第一层提取的第二特征图的映射;以及基于第一中间映射确定第一映射。生成第一中间映射包括:基于针对多个层中的第二层的第二中间映射来变换第二特征图以获得第一变换特征图,第二层在第一层之上,通过融合第一变换特征图和第一特征图,来生成与第一源图像相关联的第一中间特征图,以及确定第一中间映射,使得第一中间特征图中的第一像素与第二特征图中利用第一中间映射从第一像素映射到的第二像素之间的差异减小直到满足第一预定条件。

在一些实现中,确定第一中间映射进一步包括:基于针对第二层的第三中间映射来变换第一特征图以获得第二变换特征图;通过融合第二变换特征图和第二特征图,来生成与第二源图像相关联的第二中间特征图;以及确定第一中间映射,进一步使得第一特征图中对应于第一像素的第三像素与第二中间特征图中对应于第二像素的第四像素之间的差异减小直到满足第二预定条件。

在一些实现中,变换第二特征图以获得第一变换特征图包括:基于第二中间映射确定针对第一中间映射的初始映射;以及利用第一中间映射的初始映射来变换第二特征图以获得第一变换特征图。

在一些实现中,变换第二特征图以获得第一变换特征图包括:利用第二中间映射来变换第二组特征图中提取自第二层的第三特征图,以获得第三变换特征图;以及通过变换第二特征图来获得第一变换特征图,使得对第一变换特征图执行从第一层到第二层的特征变换而得到的第四变换特征图与第三变换特征图之间的差异减小直到满足第三预定条件。

在一些实现中,生成第一中间特征图包括:基于以下至少一项确定第一变换特征图和第一特征图的相应权重:第一特征图中相应位置的量值和与第一层相关联的预定权重;以及通过基于所确定的相应权重融合第一变换特征图和第一特征图,来生成第一中间特征图。

在一些实现中,基于第一中间映射确定第一映射包括:响应于第一层是多个层中的底层,将第一中间映射直接确定为第一映射。

在一些实现中,第一组特征图具有多个不同的第一尺寸,并且第二组特征图具有多个不同的第二尺寸。

在一些实现中,动作进一步包括:基于第一组特征图和第二组特征图,确定从第二源图像到第一源图像的第二映射;以及基于第二映射和第一源图像来变换第二源图像以生成第二目标图像,第二目标图像至少部分地具有第一视觉风格。

在另一方面,本公开提供了一种方法。该方法包括:提取第一源图像的第一组特征图和第二源图像的第二组特征图。第一组特征图中的特征图表征第一源图像的第一视觉风格的相应维度的至少一部分,并且第二组特征图中的特征表征第二源图像的第二视觉风格的相应维度的至少一部分;基于第一组特征图和第二组特征图,确定从第一源图像到第二源图像的第一映射;以及基于第一映射和第二源图像来变换第一源图像以生成第一目标图像,第一目标图像至少部分地具有第二视觉风格。

在一些实现中,提取第一组特征图和第二组特征图包括:利用具有多个层的层级学习网络来提取第一组特征图和第二组特征图,第一组特征图分别提取自层级学习网络的多个层,并且第二组特征图分别提取自层级学习网络的多个层。

在一些实现中,确定第一映射包括:针对层级学习网络的多个层中的第一层,生成第一中间映射,第一中间映射指示从第一组特征图中从第一层提取的第一特征图到第二组特征图中从第一层提取的第二特征图的映射;以及基于第一中间映射确定第一映射。生成第一中间映射包括:基于针对多个层中的第二层的第二中间映射来变换第二特征图以获得第一变换特征图,第二层在第一层之上,通过融合第一变换特征图和第一特征图,来生成与第一源图像相关联的第一中间特征图,以及确定第一中间映射,使得第一中间特征图中的第一像素与第二特征图中利用第一中间映射从第一像素映射到的第二像素之间的差异减小直到满足第一预定条件。

在一些实现中,确定第一中间映射进一步包括:基于针对第二层的第三中间映射来变换第一特征图以获得第二变换特征图;通过融合第二变换特征图和第二特征图,来生成与第二源图像相关联的第二中间特征图;以及确定第一中间映射,进一步使得第一特征图中对应于第一像素的第三像素与第二中间特征图中对应于第二像素的第四像素之间的差异减小直到满足第二预定条件。

在一些实现中,变换第二特征图以获得第一变换特征图包括:基于第二中间映射确定针对第一中间映射的初始映射;以及利用第一中间映射的初始映射来变换第二特征图以获得第一变换特征图。

在一些实现中,变换第二特征图以获得第一变换特征图包括:利用第二中间映射来变换第二组特征图中提取自第二层的第三特征图,以获得第三变换特征图;以及通过变换第二特征图来获得第一变换特征图,使得对第一变换特征图执行从第一层到第二层的特征变换而得到的第四变换特征图与第三变换特征图之间的差异减小直到满足第三预定条件。

在一些实现中,生成第一中间特征图包括:基于以下至少一项确定第一变换特征图和第一特征图的相应权重:第一特征图中相应位置的量值和与第一层相关联的预定权重;以及通过基于所确定的相应权重融合第一变换特征图和第一特征图,来生成第一中间特征图。

在一些实现中,基于第一中间映射确定第一映射包括:响应于第一层是多个层中的底层,将第一中间映射直接确定为第一映射。

在一些实现中,第一组特征图具有多个不同的第一尺寸,并且第二组特征图具有多个不同的第二尺寸。

在一些实现中,该方法进一步包括:基于第一组特征图和第二组特征图,确定从第二源图像到第一源图像的第二映射;以及基于第二映射和第一源图像来变换第二源图像以生成第二目标图像,第二目标图像至少部分地具有第一视觉风格。

在又一方面,本公开提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机存储介质中并且包括计算机可执行指令,计算机可执行指令在由设备执行时使设备执行以上方面中的方法。

在又一方面,本公开提供了一种计算机可读介质,其上存储有计算机可执行指令,计算机可执行指令在由设备执行时使设备执行以上方面中的方法。

本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)等等。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实现的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。

尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1