发现 | 基于深度学习的自动上色程序,以及其实际应用

来自伯克利大学和麻省理工学院的三名研究者Richard Zhang、Phillip Isola、Alexei A. Efros日前给出了深度学习在另一个特定领域的研究进展,开发了一套可以通过深度学习自动学会帮黑白图片上色的技术。从给出的示例来看,这项技术的准确性还是比较高的。说到这些技术的应用,让许多承载着回忆的老照片焕发新生是它能做的极好的贡献之一。

值得注意的是,这个算法是在算法应用平台Algorithmia上的,雷锋网之前报道过这个平台,它的主要作用就是让算法的开发者将他们开发出来的算法托管在平台上,而APP的开发者等需要算法的人就可以很方便的通过几条简单的指令就调用上面存储着的算法,这样就能达到一个研究成果最大化利用的目的。

算法的原理

研究小组表示,他们给算法制定的目标——为随意给出的黑白照片上色,很明显条件过于宽泛,因此之前的类似算法要么需要用户很多的干涉,要么生成的照片的颜色饱和度往往相当低。而他们通过将算法设定为一个分类任务并且在训练时使用重分类方法来增加了图像颜色的多样性。他们为算法设计了一个类似于图灵测试的“颜色图灵测试”,用来评估算法的效果。让受试者区分摄制了同样物体的照片,哪张是真的哪张是程序生成颜色的结果。结果他们的方法成功骗过了20%的人,这个结果要显著高于之前的方法。

上图是这个算法的网络结构,每个卷积层(conv layer)都代表着由2到3个重复的卷积和整流线性单元(ReLU)层组成的区块,最后是一个BatchNorm层。整个网络没有池化层。分辨率的变化是由卷积块之间的空间缩减取样或不取样实现的。

研究团队在他们的论文中介绍,在图像本身的信息之外,该方法的灵感倒主要来源于它的语义学特征和其中物体的表面提供的线索,在实例中通常意味着图像标签(label)所含有的信息:如草一般都是绿的,天一般都是蓝的等。虽然这个规律并不一定是通用的,但是事实上,要让一幅图变成漂亮的彩色,并不意味着它的着色一定要跟现实中的颜色一模一样,很多时候只要颜色的相对关系看起来合理,就足够骗过人类的眼睛了。

与传统的实现方法不同,他们并不是利用着色问题的损失定制来实现算法的,之前提到过,其实颜色的预测结果有时并不需要同现实结果一模一样,比如一件衬衫,表现出很多种颜色看起来其实都是合理的。他们的方法是在算法中对每一个像素点都预测了颜色可能的分布情况。并且在训练中给不常出现的颜色更多的权重,以增加最终颜色的多样性。最终以一种分布退火的方式得到最后的颜色分布函数。得到的结果同以前的结果相比看起来会更加真实。

研究团队展示了他们的算法在1000组来自ImageNet的图像上的实验效果,其中大部分都得到了比较好的效果。

实现及结果展示

研究团队在Github上提供了他们算法的源代码(目前还是Demo版):https://github.com/richzhang/colorization

由于其算法发在了Algorithmia上,因此想要使用他们的研究结论,只需用简单的几句指令就可以调用算法实现图片的转换。

或者用这样的格式

小组展示了许多算法成功的案例。如下图

不过还需要注意的一点是,该团队自己也表示,这个算法仍处在试验阶段,它在运算有些图片的时候表现得会很好,但有的时候又会表现得很差,(不过在这一点上其他的类似算法也一样)。因为目前这个算法主要使用ImageNet的图像做训练数据,因此在处理与其训练数据类似的图像的时候会表现得比较好。但该团队也给出了一些失败的例子,不过他们在示例中同时加入了其他算法的表现,可以看出,在这些图片上,其他算法几乎也无法给出比他们算法更好的结果:

最右侧是现实情况,中间的三个是不同算法的横向比较,其中标记为“Ours”的就是该团队的算法。

原文发布于微信公众号 - AI科技评论(aitechtalk)

原文发表时间:2016-07-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据派THU

干货 | 只有100个标记数据,如何精确分类400万用户评论?

迁移学习模型的思路是这样的:既然中间层可以用来学习图像的一般知识,我们可以将其作为一个大的特征化工具使用。下载一个预先训练好的模型(模型已针对ImageNet任...

1032
来自专栏机器之心

学界 | 牛津大学ICCV 2017 Workshop论文:利用GAN的单视角图片3D建模技术

选自arXiv 机器之心编译 参与:李泽南 对于现实世界物体的 3D 建模是很多工作中都会出现的任务。目前流行的方法通常需要对于目标物体进行多角度测量,这种方法...

3388
来自专栏ATYUN订阅号

深入了解Hinton的Capsule网络,第一部分:直观地介绍

上周,Geoffrey Hinton和他的团队发表了两篇论文,介绍了一种基于所谓的capsules(胶囊)的全新类型的神经网络。除此之外,该团队还发布了一种叫做...

3865
来自专栏AI科技评论

CNCC 2016 | 山世光:深度化的人脸检测与识别技术—进展与展望

编者注:本文根据山世光在 CNCC 2016 可视媒体计算论坛上所做的报告《深度化的人脸检测与识别技术:进展与问题》编辑整理而来,在未改变原意的基础上略有删减。...

3504
来自专栏橙、

机器学习需要多少数据进行训练?

你需要的数据量取决于问题的复杂程度和算法的复杂程度。

1.4K7
来自专栏IT大咖说

艺术领域中的Tensorflow应用

摘要 本次演讲内容主要分为三个方面,首先会简单介绍一下Tensorflow,然后简单讲解可以用Tensorflow实现的深度神经网络算法,之后再介绍这些...

3806
来自专栏量子位

遇到有这六大缺陷的数据集该怎么办?这有一份数据处理急救包

在这篇文章中,身兼AI工程师/音乐家/围棋爱好者多职的“斜杠青年”Julien Despois给出了数据科学中需要避免的6大错误。

1022
来自专栏AI科技评论

亚利桑那州立大学周纵苇:研习 U-Net ——现有的分割网络创新 | AI 研习社74期大讲堂

AI研习社按:经典的 Encoder-Decoder 结构在目标分割问题中展现出了举足轻重的作用,然而这样一个相对固定的框架使得模型在感受野大小和边界分割精度两...

1632
来自专栏专知

如何用机器学习处理二元分类任务?

图像是猫还是狗?情感是正还是负?贷还是不贷?这些问题,该如何使用合适的机器学习模型来解决呢?

1773
来自专栏机器之心

学界 | 从剪枝法到低秩分解,手机端语言模型的神经网络压缩

选自arXiv 机器之心编译 参与:李亚洲 日前,机器之心介绍了一种压缩手机端计算机视觉模型的方法。在这篇文章中,我们介绍了一篇论文,介绍和对比了手机端语言模型...

3079

扫码关注云+社区