【新智元导读】照片里面有不想要的东西,抠起来又太麻烦?神器来了!三星研究员最近提出一个图像修复模型:LaMa,在高分辨率图像输入下也无需太多计算量,并且效果十分惊人!
拍照的时候,想必大家都有过一种经历:背景永远有一大堆其他游客,拍完照还得找半天哪个是自己。除了其他游客外,如果照片里有一个垃圾桶,或者跟画面无关的元素过多也会破坏整张照片的美感。对于PS图片技术不过关的小伙伴来说,想把这些元素从画面里抠出去,那可真是太难了。但人工智能技术发展的目的就是让这种工作变得简单!只需一键,就可以把画面中不想要的元素统统抠掉,而且「毫无PS痕迹」!
图像修复
长期以来,大量的研究人员一直在研究如何更好地移除画面中的元素,并将其正确地替换背景,这个任务也称为图像修复(image inpainting)。这个任务看起来简单,但实现起来却相当难,因为被遮挡掉的背景信息对于AI来说是完全未知的,生成背景全靠脑补。并且一些遮挡掉的元素也并非是规则的背景图,也可能是相当复杂的元素。但从2016年Image Inpainting的开山之作发布以来,目前图像修复的效果已经相当惊人了,在人脸修复上尚有「想象」的成分存在,但对于抠背景来说简直小菜一碟。人类在进行图像脑补的时候,会很自然而然地利用上人类对三维世界的信息理解,但对于AI来说,他所能接收到的信息只有二维图像中的像素点。这种信息接收上的差异也是AI图像修复的难点之一。并且人类也能根据视觉常识,从物体的一部分来推测出物体的全貌。所以想让AI学会图像修复,我们首先需要教会机器一件事:世界究竟是什么样子?ImageNet数据集提供了大量二维图片,所以让机器了解世界这点很容易做到。另一个问题是,通常需要修复的真实照片分辨率都很高,所以需要的计算成本也更高。但目前大多数图像修复方法都聚焦于低质量的图像。虽然可以用各种方法来讲图像降低分辨率为小图像,然后把修复的结果放大应用于原图像,但最终结果肯定不如在原始图像上进行修复的效果好。
高分辨率图像带来的是更真实的图像修复,但也需要更多的时间来进行训练和图像处理,难道真的没有两全之法?
LaMa模型
针对上面提到的问题,三星的研究人员提出了一个新模型LaMa(LArge MAsk inpainting),能够在高分辨率图像的情况下,随意删除图像中的各种元素。LaMa的主要创新点为:提出一种新的修复网络结构,使用快速傅立叶卷积,具有图像宽接收域,高感受野感知损失,较大的训练掩码(mask),可以有效提升前两个组件的性能潜力。
该模型还可以很好地泛化到比训练时更高的分辨率图像,以较低的参数量和计算成本实现与基准相媲美的性能。论文地址:https://arxiv.org/abs/2109.07161代码地址:https://github.com/saic-mdal/lama例如下面图片中的各种树、窗台,路灯、汽车都可以一键P掉。模型的主要架构如下图所示。包含一个mask的黑白图,一张原始图像。将掩码图覆盖图像后输入Inpainting网络中,先是降采样到低分辨率,再经过几个快速傅里叶卷积FFC残差块,最后输出上采样,生成了一张高分辨的修复图像。和一般的图像修复网络一样,LaMa也必须理解图像并尝试填充它认为最适合的像素。因此,在这种情况下,为了减少计算,它也需要在网络的开始阶段缩小图像。但不一样的是,LaMa在处理图像时采用了一些特别的技术来保证降采样后的图像质量和原始高分辨率图像相同。网络主要分为两步。首先,模型会进行图像压缩并尝试仅保存重要的相关信息。网络最后将主要保留有关图像的通用信息,如颜色、整体风格或出现的常见的物体,但不会保留精确的细节。然后,模型会尝试使用相同的原理但向后重建图像。研究人员使用了一些技巧,例如跳过连接(skipt-connections)可以保存来自网络前几层的信息,并将其传递到第二步,以便模型可以将其定向到正确的对象。简单来说,模型能够知道图片里有一个塔,蓝天和树木,这种就叫全局信息(global information),但仍然需要一些skip connections来让模型识别到埃菲尔铁塔在图片的中央。对于更细粒度的信息,例如这里或那里有云,树有哪些颜色等细节,研究人员称之为局部信息(local information)。但还存在一个问题,就是在这种情况下,模型正在处理的是质量较低的图像,这会降低图像修复的质量。所以特殊之处在于,LaMa不是像在常规卷积网络中那样使用卷积并跳过连接来保持局部知识,而是使用快速傅里叶卷积,也就是说网络将在空间域和频域中同时工作,并且不需要回到前面的层来理解图像的上下文。每一层都将与空间域中的卷积一起处理局部特征,并在频域中使用傅里叶卷积来分析全局特征。频域有点特殊,基本上就是将输入图像转换为所有可能的频率,所以这个新创建的图像的每个像素都将代表一个覆盖整个空间图像的频率以及它的存在量,而不是颜色。当然,这里的频率并非是声音频率,而是代表不同尺度的重复模式。因此,对新的傅里叶图像进行卷积可以让模型在卷积过程的每个步骤中处理整个图像,因此即使在前几层也可以更好地理解图像,而无需太多计算成本,这种效果通过常规的卷积是无法实现的。然后,全局和局部的结果都被保存并发送到下一层,下一层将重复这些步骤,最终将获得可以放大回来的最终图像。傅立叶域的使用使其可以扩展到更大的图像,因为图像分辨率不会影响傅立叶域,它使用整个图像的频率而非颜色作为特征,并且寻找的重复模式需要是相同的图像的大小,这意味着即使在用小图像训练这个网络时,也能取得相同的效果。研究人员在CelebA-HQ数据集上的图像修复进行了实验,采用可学习感知图像斑块相似性(LPIP)和FID作为定量评估指标。与LaMa傅立叶模型相比,几乎所有的模型的性能都更弱(红色上箭头)。表中还包括了不同的测试掩码生成的不同策略的度量,即窄掩码(narrow)、宽掩码(wide)和分段掩码(segmentation),LaMa傅里叶的性能仍然更强,表明了实验方法更有效地利用了可训练参数。下面是一些模型的图像修复样例。也有一些修复的不是很好的样例。虽然结果有好有坏,但LaMa模型仍然性能出众,向现实应用迈出了重要一步。
参考资料:
https://www.louisbouchard.ai/lama/