【IT168 应用】猫是人类的好伙伴,被昵称为“喵星人”。许多爱猫的同学,会将自己的萌宠晒到社交网络,分享给全球的同道人,他们总是想尽办法,记录“喵星人”的每个瞬间来吸睛。近日,国外的一位程序员Christopher Hesse却通过机器学习进行了一项实验,实验名称为Edges2cats。
通过实验模型pix2pix,喜欢猫的同学可以任意涂鸦“喵星人”的外形,随之pix2pix模型会通过机器学习算法,为你涂鸦的素描,填充上皮毛、颜色等元素,让“喵星人”变的丰满。并通过Web界面呈现,网友可以通过网址访问应用来涂鸦,前台应用很简单,可素描、擦除、随机查看其他用户涂鸦的作品。
pix2pix模型使用了Google的机器学习软件库TensorFlow,并使用了大约2000张“喵星人”的图片进行训练。
与用户晒自己“喵星人”最萌宠的一面不同,这个实验充满了不确定性,由于学习的数据,以及涂鸦水平的不同,使得实验的涂鸦作品五花八门,Christopher Hesse也感叹道,“pix2pix模型对细节的处理上还无法尽如人意。”
小编首先随机选取了一些用户的涂鸦作品,当然最后也会亲自试试。直接上图!
▲图1:是默认的涂鸦作品,Christopher Hesse认为是目前所有涂鸦中,最好的一幅作品,不论是外形、体态、眼睛的细节的充分展示了pix2pix模型的学习能力。
▲图2:一位用户涂鸦了“喵星人”的面部,可最后的结果有点不堪,看上去有点怕怕。
▲图3:这个作品,“喵星人”的体态尚可,但面部细节又走偏了。
有没有靠谱点“喵星人”的主人,涂鸦出令人满意的萌宠?快出来。。。。。
Christopher Hesse的实验,还通过机器学习库来制作了一些其他酷绘图工具,包括建筑,鞋子和手袋,但很明显,猫创建工具是好玩的。。。。。
涂鸦请移步:http://affinelayer.com/pixsrv/index.html
最后,还是要说明下,机器学习是如何工作的?使用pix2pix-tensorflow的pix2pix.py脚本训练和导出模型。交互式演示是使用Canvas API在javascript中进行的,并与通过Tensorflow运行图像的后端服务器通信。后端服务器可以运行Tensorflow本身,或者将请求转发到由Google运行的托管Tensorflow服务的云端 ML。预训练模型在GitHub的部分提供,请访问。https://github.com/affinelayer/pix2pix-tensorflow#datasets-and-trained-models