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

简介:

来自伯克利大学和麻省理工学院的三名研究者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”的就是该团队的算法。


本文作者:黄鑫


本文转自雷锋网禁止二次转载,原文链接


相关文章
|
12天前
|
机器学习/深度学习 人工智能 测试技术
深度学习在图像识别中的应用与挑战
本文探讨了深度学习技术,尤其是卷积神经网络(CNN)在图像识别任务中的最新进展和面临的主要挑战。通过分析不同的网络架构、训练技巧以及优化策略,文章旨在提供一个全面的概览,帮助研究人员和实践者更好地理解和应用这些技术。
45 9
|
8天前
|
机器学习/深度学习 人工智能 算法
深度学习在图像识别中的应用与挑战
本文探讨了深度学习技术在图像识别领域的应用,重点分析了卷积神经网络(CNN)的工作原理及其在处理图像数据方面的优势。通过案例研究,展示了深度学习如何提高图像识别的准确性和效率。同时,文章也讨论了当前面临的主要挑战,包括数据不足、过拟合问题以及计算资源的需求,并提出了相应的解决策略。
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
本文旨在通过深入浅出的方式,为读者揭示卷积神经网络(CNN)的神秘面纱,并展示其在图像识别领域的实际应用。我们将从CNN的基本概念出发,逐步深入到网络结构、工作原理以及训练过程,最后通过一个实际的代码示例,带领读者体验CNN的强大功能。无论你是深度学习的初学者,还是希望进一步了解CNN的专业人士,这篇文章都将为你提供有价值的信息和启发。
|
3天前
|
机器学习/深度学习 数据采集 测试技术
深度学习在图像识别中的应用
本篇文章将探讨深度学习在图像识别中的应用。我们将介绍深度学习的基本原理,以及如何使用深度学习进行图像识别。我们将通过一个简单的代码示例来演示如何使用深度学习进行图像识别。这篇文章的目的是帮助读者理解深度学习在图像识别中的作用,并学习如何使用深度学习进行图像识别。
|
4天前
|
机器学习/深度学习 算法框架/工具 Python
深度学习在图像识别中的应用
本文将探讨深度学习技术在图像识别领域的应用。我们将介绍深度学习的基本原理,以及如何使用深度学习进行图像识别。我们还将通过一个简单的代码示例来演示如何使用深度学习进行图像识别。
|
3天前
|
机器学习/深度学习 数据采集 边缘计算
深度学习在图像识别中的应用与挑战
本文深入探讨了深度学习在图像识别领域的应用,并分析了当前面临的主要挑战。通过具体案例和数据分析,展示了深度学习技术如何推动图像识别的边界,同时指出了数据质量、模型泛化能力及计算资源等方面的限制因素。文章旨在为研究人员和从业者提供一个关于深度学习在图像识别中应用现状与未来发展方向的全面视角。
|
6天前
|
机器学习/深度学习 算法 大数据
深度学习在医疗影像诊断中的应用
本文探讨了深度学习技术在医疗影像诊断领域的应用,分析了其如何通过提高图像识别精度来辅助医生做出更准确的诊断。文章首先介绍了深度学习的基本概念和关键技术,随后详细阐述了这些技术在处理复杂医疗影像数据时的优势,并通过案例分析展示了深度学习在实际应用中取得的成果。此外,还讨论了当前面临的挑战以及未来的发展趋势。
|
9天前
|
机器学习/深度学习 分布式计算 并行计算
深度学习在图像识别中的应用与挑战
本文深入探讨了深度学习技术在图像识别领域的应用,分析了当前主流的卷积神经网络(CNN)架构,并讨论了在实际应用中遇到的挑战和可能的解决方案。通过对比研究,揭示了不同网络结构对识别准确率的影响,并提出了优化策略。此外,文章还探讨了深度学习模型在处理大规模数据集时的性能瓶颈,以及如何通过硬件加速和算法改进来提升效率。
|
9天前
|
机器学习/深度学习 人工智能 计算机视觉
深度学习在图像识别中的应用与挑战
【10月更文挑战第38天】本文将深入探讨深度学习如何在图像识别领域大放异彩,并揭示其背后的技术细节和面临的挑战。我们将通过实际案例,了解深度学习如何改变图像处理的方式,以及它在实际应用中遇到的困难和限制。
|
7天前
|
机器学习/深度学习 人工智能 供应链
深度学习在图像识别中的应用及案例分析
【10月更文挑战第40天】本文将探讨深度学习在图像识别领域的应用,通过分析其基本原理、关键技术和实际应用案例,揭示深度学习如何革新了图像处理技术。文章不仅提供理论框架,还深入讨论了深度学习模型如卷积神经网络(CNN)的构建和训练过程,以及这些技术如何在自动驾驶汽车、医疗诊断等多个领域得到实际应用。通过具体案例,我们将看到深度学习如何使机器视觉更加精准和高效。

热门文章

最新文章

下一篇
无影云桌面