AI也能「形象派」作画,圆形+方块组合,可微2D渲染下天生形象人脸

有人将一张方块图、圆形图的组合天生了形象的人脸!还有人将帆布油画《阿尼埃尔的浴场》还原为直线。

绘画,尤其是草图可以说是传达概念、对象和故事的一种方式。计算机视觉和人机交互方面的草图研究历史悠久,可追溯到 1960 年代。近年来,由于深度学习技术的快速发展,草图应用越来越多,这些技术可以成功地处理草图识别、天生、基于草图的检索、语义分割、分组、解析和形象等任务。关于草图的研究也不时的被网友顶上热搜,近日新闻网站 reddit 上就有一篇帖子热度爆表,短短十几个小时热度就达到 800+,原贴内容为:从外形到「脸」- 使用神经网络进行外形形象的可微 2D 渲染。

图片

它的结果是这样的:从动图展现结果来看,一开始输入为 4×4 不同外形的图象,最后天生了人脸轮廓(尽管天生的人脸轮廓有些形象,但我们还是可以看出是人脸):

图片

针对这一展现结果,网友纷纷表示惊艳,但可惜的是,原贴作家并没有给出更多的技术细节,但在评论区中,我们可以从原贴作家的回答中得出一些信息:原贴作家即项目作家表示:「这是我用于神经渲染的 POC。该模型只是试图最小化输出与真值图象(在本例中为 celeb 数据集)之间的 L2 间隔。动图中展现的是训练运行期间验证历程,遵循单一外形收敛。输入外形可以以任何形式开始,但 4×4 网格输入应该是最有趣的, 这一实现结果可扩展到很多应用。我正在考虑写一篇简短的文章,把自己的想法表达出来。」

图片

上面的回复中,项目作家提到了自己并没有写技术文档,不过,也有网友分享了一篇今年 7 月的文章《 Differentiable Drawing and Sketching 》。项目作家表示:「这真的很酷!其实我一直在找类似的东西,但找不到,所以做了这个。」

图片

具体而言:这篇文章是来自南安普敦大学的研究者提出了一种自底向上的可微紧张(relaxation)历程:即将点、线和曲线绘制到一个像素光栅(pixel raster)。这种紧张历程允许模型学习和优化端到端的可微程序和深度网络,此外,紧张历程还为网络提供了几个构建块,以控制如何对组合画图历程建模。值得注意的是,该研究所提要领是自底向上的,这一特性允许画图操作以能够模拟画图的物理现实而不是被束缚的方式组成,例如,现代计算机图形学的要领。

图片

论文地址:https://arxiv.org/pdf/2103.16194.pdf

GitHub 地址:https://github.com/jonhare/DifferentiableSketching

论文展现了如何通过直接优化照片天生草图,以及在没有监督的状况下如何构建自动编码器将栅格化手写数字转换为矢量。

图片

虽然论文与reddit项目作家的最终实现结果不同,论文是将图象形象为点或线段的草图,项目则是将方块和圆形最终天生形象人脸,但论文采用的要领对项目具有借鉴意义。因此,机器之心对论文《 Differentiable Drawing and Sketching 》中的技术细节进行了介绍。技术解读:可微光栅化紧张在这部分内容中,研究者讨论了如何将连续世界空间(continuous world space) W 中界说的点、线和曲线绘制或光栅化到图象空间图片中。 他们的目标是提出一种形式化要领(formalisation),使得最终可以界说相对于世界空间参数(如点坐标或线段起点和终点的坐标)可微的光栅化函数。一维光栅化研究者首先考虑了对一维点 p ϵ W 进行光栅化的问题,其中 W = R。具体来讲,点 p 的光栅化历程可以由函数 f(n; p) 来界说,该函数为图象空间图片中的每个像素计算一个值(通常为 [0 , 1])。这个图象空间的位置又由图片给出。先来看看简单的近来像素(closest-pixel)光栅化函数。如果假设第 0 个像素覆盖点 p 的世界空间中的域 [0, 1),第一个像素覆盖 [1, 2) ,如此类推。然后,近来邻光栅化将真值点 p 映射到一个图象,以下等式(1)所示:

图片

这一历程以下图 2a 所示。2b 则是另一种光栅化方案,其中在两个近来的像素上进行插值。

图片

假设当被光栅化的点位于中点(midpoint)时,像素具有最大值,则以下等式(2)所示:

图片

实际上,这些可以扩展至 2D 的函数在很多计算机图形系统中得到隐式地使用,但很少以我们编写它们的形式出现。接下来是可微紧张。理想状况下,研究者希望能够界说一个相对于点 p 可微的光栅化函数,这允许 p 优化。等式(1)给出的光栅化函数对于 p 是分段可微的,但梯度几乎在所有地方都为零,这是没有用的。等式 (2) 在最邻近 p 的两个像素中具有一定的梯度,但总体而言它的梯度也几乎处处为零。因此,研究者想界说一个光栅化函数,它对所有(或至少大部分)可能的 n 值都具有梯度。这个函数几乎在任何地方都应该是连续的和可微的。抗锯齿光栅化要领对如何实现这一点给出了一些提示:该函数可以根据 n 和 p 之间的间隔为每个 n 计算一个值。N 维中的紧张光栅化以往界说的所有一维光栅化函数都可以简单地扩展为「在二维或更多维度上对一个点进行光栅化」。线段可以通过其起始坐标 s = [s_x, s_y] 和结束坐标 e = [e_x, e_y] 来界说。为了开发一组通用、潜在可微的光栅化函数,研究者需要考虑光栅的形式化,就像在一维状况下所做的那样:找到一个函数,该函数在给定线段 f (n; s, e) 的状况下,能够在图象中所有像素位置集合 n 上界说一个标量场。光栅化线段需要考虑像素与线段的接近程度。研究者高效地计算了任意像素 n 到线段上近来点的平方欧几里德间隔,以下所示:

图片

在近来邻光栅化的状况下,有人会问「这条线段是否穿过谈论中的像素」。只有在以下这种状况下才填充:

图片

为了以相对于参数可微的方式光栅化曲线(与参数化无关),研究者遵循了与线段相同的通用要领:计算每个坐标图片与曲线之间的最小平方欧几里德间隔 :与线段的状况一样,接下来这一间隔变换(distance transform)能够与「根据间隔运行的光栅化函数」相结合:

图片

扩展至多条线段为了光栅化多条线段,研究者考虑论了将不同线段的光栅化组合成单个图象。具体而言,他们将光栅化不同线段 {s_1, e_1}, {s_2, e_2}, . . . , {s_i, e_i} 天生的图象表示为在相同图象空间图片上界说的矩阵 I ^(1) , I^ (2) , . . . , I^ (n)。在最简单的二进制光栅化状况下,研究者认为相应像素的逻辑或(logical-or)可能会产生所需的结果,即将单个光栅化中着色的任何像素作为最终输出中的着色,以下等式(9)所示:

图片

研究者还将这种 composition 紧张为可微的,并允许像素值为非二进制(但限于 [0, 1]),以下等式(10)所示:

图片

最终,研究者得到了点或线段构图所需要的全部组件。  图象优化示例为了证明针对真实图象优化原语(primitives)要领的有效性,该研究提供了许多示例。例如图 4 和图 5 利用图 3a 中大小为 200 × 266 输入图象作为目标图象进行优化。图 4 显示了使用模糊 MSE 损失优化 1000 个点和 1000 条线的结果,并展现了可以实现的整体结果。图 5 显示了使用一系列不同损失从同一起点优化 500 条线段的结果。此外,该研究还将自动天生的草图与人类绘制的图象进行了比较。图 3b 是用笔(pen and ink)绘制的草图,用于天生图 4 和 5。很明显,草图广泛地捕捉了场景的整体结构和明暗区域。

图片

原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/25958

(0)
上一篇 2021年11月27日 下午5:08
下一篇 2021年11月28日 下午1:16

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注