Py学习  »  机器学习算法

机器学习可以生成任何线条图片的 ASCII 码绘画

AI研习社 • 5 年前 • 525 次点击  

本文为 AI 研习社编译的技术博客,原文 This Machine learning Algorithms Can Turn  Any Line Drawing into ASCII Art,作者 Daniel Oberhaus 。

翻译 | 张硕玺      校对 | 余杭          整理 | 余杭



  人类使用计算机创造的艺术形式已被计算机学会

回顾 1960 年代,贝尔实验室的天才们想出了用计算机语言来绘画的方法。这种绘画形式叫做 ASCII 绘画,尽管这种绘画需要使用计算机,但很难让计算机自动生成图片。尽管 ASCII 绘图生成器已经存在了很多年,但他们始终不能很好的转换复杂的手工图片。 

 现在,就读于大阪大学的医学院研究生 Osamu Akiyama,同时也是名 ASCII 画家,创造出了通过模拟人脑运作机制的一种机器学习架构——神经网络,相比手工,这可以生成任何线条图片的 ASCII 码绘画。

 ASCII 码绘画是通过使用美国信息交换标准代码(一种用来将机器语言翻译成人类语言的编码系统)中所定义的数字与字母创造出来的。 

有趣的是,秋山构建的神经网络使用日本字来生成图片,而非使用 ASCII 码来生成图片。  


秋山选取日本流行的留言板 5channel 与 Shitaraba 上的 500 个 ASCII 码绘画来训练神经网络模型。秋山在邮件跟我吐槽,说目前遇到的主要问题在于训练的手工 ASCII 码绘画由于来自于网络,所以并没有引用相关原始图片。这意味着这样的算法很难学习线条图片是如何转换成文字图片的。  

为了解决这样的问题,秋山使用了其他研究者的神经网络去清洗图像,这样就可以将 ASCII 码绘画转换成原始线条图片。通过这种方式估计出的原图,就可以用来作输入来训练神经网络学习用哪些字符来生成相应 ASCII 码图像。 

通过这样的训练,神经网络就可以生成与手工相媲美的 ASCII 码图片。秋山基于图片相似度算法,将这种图片和其他生成器以及手工生成的图片作比较,发现机器学习生成的 ASCII 码图片与原图更具相似性。

 ASCII 码图片的对比:第一行为原图。第二、三行为使用免费提供的 ASCII 生成器生成的图片。第四、行为通过秋山的神经网络生成的图片,而第五行是一位 ASCII 码画家所画。  

秋山的论文表明:「确实,对比人工 ASCII 绘画,由算法自动生成的 ASCII 码图像与原图更具相似性。」因此,我们可能需要在未来要求人类评论家重新评估艺术的质量。 

秋山并非首个将神经网络引入 ASCII 艺术的。之前也有少数几个相关项目,比如 ASCII NET 和 DEEPASCII 同样探究如何将深度学习引入这一特殊的艺术形式。  

尽管这种算法可以将原图生成最具可信度的 ASCII 效果图,秋山依然倾向人类在 ASCII 绘画的作用。

 他电邮我说:「相比其他现存工具,我可以通过这种方式生成最像人工图片的 ASCII 图像,但始终还是手工完成的图片更美。」  

想了解更多秋山算法生成图片的例子,你可以点击这里的 Github 链接(https://github.com/OsciiArt/DeepAA)。  


原文链接:

https://motherboard.vice.com/en_us/article/zmymwx/machine-learning-ascii-art-neural-net


想知道关于机器学习更多知识?

欢迎点击“阅读原文”

或者移步 AI 研习社社区~


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/wUIieWySDc
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/22264
 
525 次点击