AI用50个三角形画出抽象版蒙娜丽莎,有股后现代的感觉了
明敏 发自 凹非寺
量子位 报道 | 公众号 QbitAI
现在,给AI一个短语和50个三角形,它就能创作一幅极简风格的抽象画了。
只需输入“a drawing of cat(一张猫的画像)”,一只棱角分明、散发着冷酷气息的抽象猫就生成了。
不只是这种泛泛的概念,给出特定词汇,这个AI也能指定作画。
比如输入“Walt Disney World(迪士尼乐园)”,50个三角形立刻重新排布,一个风格完全不同的抽象版迪士尼城堡就出现在了眼前。
可以说是完完全全抓住了迪士尼城堡的精髓。
以上这些“大作”,其实都是进化策略 (ES)和CLIP结合后生成的效果,由谷歌大脑团队出品。
他们让两个AI相互配合,根据文字提示及具体图像,用一堆三角形创作出了一幅幅极具特色的抽象画。
抽象后的谷歌大楼,大概长这样:
不能说毫无关系,只能说一模一样啊。
这回,真的有点后现代艺术的feel了。
只用三角形创作的抽象画
从生成的效果可以看到,ES算法 CLIP其实就是把一堆随机的三角形重新排布,通过调整它们的大小、位置、颜色,逐渐将其构建成一个与给出词汇所吻合的图像。
具体来看,在最初始时,ES算法会以三角形的坐标、RGBA值作为参数,在画布上随机给出一些三角形。
进化策略(ES)算法的原理则像进化论一样,它可以根据给出的信息不断优化,直到得到一个最优解。
CLIP则是OpenAI开发的一个负责给图像重排序的模型。
它会对ES算法给出的三角形图像与文字描述的相似度进行打分,然后将结果反馈给ES算法,ES算法就会为了提升分数而不断迭代,最后得到一副艺术画。
除了给出文字指令外,直接给一张图作为初始信息,只用ES算法也能进行作画。
这不,用50个三角形、迭代10000次后,后现代抽象版蒙娜丽莎诞生了。
如果增加更多的三角形,算法给出的效果也会更好。
在下面的对比中,当三角形数量达到200时,生成的图像立刻增加了亿点点细节。
其中达尔文和蒙娜丽莎的例子,fitness几近达到了100%。
此外,为了实现更好的效果,研究人员还采用了ClipUp优化器。
从对比中可以看到,使用优化器后迭代1万次后的效果比基本算法迭代56万次后的还要好。
同时,与基于梯度的渲染方法对比,ES算法的表现也可圈可点。
渲染方法会更侧重于纹理和颜色上的细化,而ES算法会更加侧重于如何布局这些三角形。
那么给出文本指令生成的效果如何呢?
在“Self”、“Human”、“Walt Disney World(迪士尼乐园)”几个案例中,算法的表现依旧很优秀。
在体现关键字主题精髓的情况下,随着构图三角形数量的增多,算法给出的结果细节也就更为丰富。
但是在“ picture of Tokyo”这个例子中,它的表现就不那么好了。
研究人员认为这是由于算法在生成阴影较深的三角形上还存在困难,所以造成了这一结果。
而且面对命题作业,算法也会尽可能给出不同的答案。
在这几个案例的重复4次测试中,我们可以看到生成的图像都存在明显的区别。
Demo可试玩
其实这并不是CLIP第一次“指挥”别的AI作画了。
此前与GAN配合,就让图像变成了CG艺术风。
事实上,这一次的抽象画效果,你也可以体验。
团队已经将代码开源,在Colab上也能进行试玩(链接已附在文末)。
这是有网友上传的生成图像,效果真的还不错,你能猜出来这是谁吗?
论文链接:
https://arxiv.org/abs/2109.08857
GitHub开源地址:
https://github.com/google/brain-tokyo-workshop/
试玩链接:
https://colab.research.google.com/drive/1DGNxs8E4cA_ZUwPQdusxDArCWj-JX5TG#scrollTo=7AkoGodQw8kr&uniqifier=4