> Photo by Toa Heftiba on Unsplash

当人工智能赶上艺术时-运用magenta.js进行神经风格转换_图像_样式 计算机

当人与机器协作时,我们可以产生超出我们想象的东西。
艺术与人工智能的交集让我感到非常愉快。
在创作环境中,神经样式转换是人工智能最惊人的运用之一。

深度学习使捕获一个图像的内容并将其与另一图像的样式结合起来成为可能。
这种技能称为神经风格转移。

以下是我如何利用神经样式转换技能天生人造艺术作品的演示。

> Source : bensonruan.com

不才面的链接中自己考试测验:

实作

您是否喜好AI天生的新作品? 您是否对它在后台的事情办法感到好奇? 好吧,让我们在本文中进一步磋商。

它利用的是一种称为神经风格转换的技能。
这是一种优化技能,用于拍摄两个图像-内容图像和样式参考图像(例若有名画家的艺术品),并将它们领悟在一起,以使输出图像看起来像内容图像,但在图像中被"绘制" 样式参考图像的样式。

这是通过优化输出图像以使其与内容图像的内容统计信息和样式参考图像的样式统计信息相匹配来实现的。
这些统计信息是利用CNN(卷积神经网络)从图像中提取的。

如果您想进一步研究,可能会创造吴安德教授的教程很有用

如果您以为很难明得,那就可以了。
得益于Magenta(机器学习的开源研究项目),纵然您是机器学习和AI的新手,您仍旧可以制作由AI驱动的音乐和艺术。
让我们逐步先容如何利用Magenta.js来实现样式转换。

#步骤1:包含magentaimage.js

首先,只需在html文件的

部分中包含脚本magentaimage.js或缩小版本magentaimage.min.js。

<html> <head> <script src="https://cdn.jsdelivr.net/npm/@magenta/image@0.2.1/dist/magentaimage.min.js"></script> </head>

如果您利用的是npm,也可以通过运行以下命令来安装它

npm i @magenta/image#步骤2:设置html元素

我们须要做的下一件事是不才面添加html元素

· 内容图片

· 风格形象

· 转移按钮

· 合并图像的画布

<img id="contentImg" src="images/turtle.jpg"/><img id="styleImg" src="images/kadinsky.jpg"/><button class="btn btn-transfer"> <i class="fas fa-random"></i><span>Click to transfer</span></button><canvas id="stylized"></canvas>#步骤3:初始化javascript变量

const model = new mi.ArbitraryStyleTransferNetwork();const canvas = document.getElementById('stylized');const ctx = canvas.getContext('2d');const contentImg = document.getElementById('contentImg');const styleImg = document.getElementById('styleImg');#步骤4:运行样式化功能

点击"转移"按钮后,调用库的initialize()和stylize()API

差不多了!
仅需4个大略步骤,您就可以构建自己的样式转换运用程序。
选择自己的照片和风格,然后不雅观看神奇的艺术品就像魔术一样!

GitHub存储库

您可以不才面的链接中***上述演示的完全代码:

结论

Magenta是一个研究项目,旨在探索机器学习在艺术和音乐创作过程中的浸染,它基于TensorFlow构建。
如果您对AI与艺术相遇的结果感到愉快,我强烈建议您查看其网站magenta.tensorflow.org,个中供应了更多示例。

感谢您的阅读。
如果您喜好这篇文章,请在Facebook或Twitter上分享。
如果您有任何疑问,请在评论中让我知道。
在GitHub和Linkedin上关注我。

私信译者获取代码链接

(本文翻译自Benson Ruan的文章《When AI meets Art — Neural Style Transfer with magenta.js》,参考:https://towardsdatascience.com/when-ai-meets-art-neural-style-transfer-with-magenta-js-ceb50e702730)