Pix2pix神经网络逼真的给铅笔素描和黑白照片上色


该程序的四个示例,其代码在公共领域发布。源图像显示在左侧,自动处理的结果显示在右侧

,图像处理,计算机图形学和计算机视觉中的许多任务可以简化为将一个图像(输入)转换为另一图像(输出)的任务。就像同一文本可以用英语或俄语表示一样,图像也可以用RGB颜色,渐变表示为对象边界图,语义标签图等。基于自动翻译系统的模型,加州大学伯克利分校的伯克利AI研究实验室(BAIR)的开发人员创建了一个应用程序自动从一个视图向另一个视图广播图像。例如,从黑白草图到全彩图片。

对于一个不了解情况的人来说,这样一个程序的工作似乎是神奇的,但是它是基于条件生成对抗网络(cGAN)的程序模型-已知对抗生成网络(GAN)类型的变体。

科学著作的作者写道,翻译图像时出现的大多数问题与“多对一”翻译(计算机视觉-将照片翻译成语义图,片段,对象边界等)或“一对多”有关。 “(计算机图形学-转换用户在真实图像中的标签或输入数据)。传统上,这些任务中的每一个都是由单独的专用应用程序执行的。在他们的工作中,作者试图为所有此类问题创建一个通用框架。他们做到了。

经过训练使卷积函数最小化卷积神经网络非常适合广播图像。也就是度量估计参数的真实值与参数估计值之间的差异的度量。尽管培训本身是自动进行的,但是仍然需要大量的人工操作才能有效地减少损失功能。换句话说,我们仍然需要解释和显示神经网络,具体需要将哪些内容最小化。如果我们使用低水平的损失函数,例如“最小化预测像素与真实像素之间的欧几里得距离”,那么这里有很多陷阱会对结果产生不利影响,这将导致生成模糊图像。


各种损失函数对结果的影响

将神经网络设置为高级任务(例如“生成与现实无法区分的图像”),然后自动训练神经网络以最大程度地减少最能执行任务的损失函数,将更加简单。这就是生成对抗网络(GAN)的工作方式-当今神经网络发展中最有希望的领域之一。 GAN网络训练损失函数,其任务是将图像分类为“真实”或“伪造”,同时训练生成模型以最小化此函数。在这里,模糊图像无法以任何方式生成,因为它们不会通过分类检查为“真实”。

开发人员将条件生成对抗网络(cGAN)用于任务,即具有条件参数的GAN。就像GAN合并生成数据模型一样,cGAN也会根据特定条件合并生成模型,这使其适合“一对一”地广播图像。


将城市景观布局广播到逼真的照片。左边是标记,中间是原始标记,右边是生成的图像,

在过去的两年中,对GAN的许多应用进行了描述,并对其工作进行了理论研究。但是在所有这些作品中,GAN仅用于特殊任务(例如,生成令人恐惧的图像生成色情图片))尚不清楚GAN如何适用于高效的一对一图像转换。这项工作的主要目的是证明这种神经网络能够执行大量的各种任务,从而显示出令人满意的结果。

例如,黑白铅笔素描的着色(左列)看起来非常好,在此基础上,神经网络会生成逼真的图像(右列)。在某些情况下,神经网络的操作结果似乎比真实照片(用于比较的中心列)更为真实。


将铅笔素描投射到逼真的照片上。左边是铅笔图,中间是原始图,右边是生成的图像




,将铅笔素描翻译成逼真的照片。

像其他生成网络一样,在此GAN中,神经网络之间也相互竞争其中一个(生成器)正试图创建伪造的图像,以欺骗另一个(鉴别器)。随着时间的流逝,生成器将学会更好地欺骗鉴别器,即生成更逼真的图像。与常规GAN不同,在Pix2Pix中,鉴别器和生成器都可以访问原始图像。


训练cGAN从地形图预测航空照片


cGAN在将航空照片转换成地形图(反之亦然)方面的工作示例在公共领域发表

一篇科学文章,Pix2pix的源代码在GitHub上作者提供给所有人体验该程序。

Source: https://habr.com/ru/post/zh-CN399469/


All Articles