图像识别开源代码_灰度图像着色开源代码

Victory组近期整理了灰度图像着色开源代码,文章刊登于《中国计算机学会计算机视觉专委会简报》2019年第2期上。

灰度图像(gray image)是每个像素只有一个采样颜色的图像,即单通道图像,这类图像通常显示为从最暗黑色到最亮的白色的灰度,理论上这个采样可以任何颜色的不同深浅,甚至可以是不同亮度上的不同颜色。

灰度图像着色是将单通道的灰度图像,通过一定的操作,使其成为三通道的彩色图像的方法,在在影视处理、数字娱乐和动漫制作等方面有着广泛的应用前景。

在灰度图像着色领域,传统方法信息提取率不高,着色效果不理想,但随着人工智能的不断发展,灰度图像着色的效果越来越让人满意。目前灰度图像着色一般模式为:首先利用神经网络的信息提取的高效性,对图像中的各类信息及特征进行提取,构建并训练深度学习模型。训练网络时与原图像进行对比,逐渐减小网络输出结果的信息、分类等各类型的损失。训练完成后,只需向网络输入一张灰度图片,即可生成一张颜色饱满、鲜明逼真的彩色图片。下图为灰度图像着色示意图。

a8dd0aca76684b72e081da6dfb45bd52.png

图1 灰度图像着色示意图

本文着重介绍几个基于深度学习的灰度图像说色技术的开源代码,包括训练深度学习模型的常用数据集和几个经典的图像着色深度神经网络的模型。

1.ImageNet数据集

介绍:ImageNet 是一个计算机视觉系统识别项目,是目前世界上图像识别最大的数据库。是美国斯坦福的计算机科学家,模拟人类的识别系统建立的。能够从图片识别物体。ImageNet是一个非常有前景的研究项目,未来用在机器人身上,就可以直接辨认物品和人了。超过1400万的图像URL被ImageNet手动注释,以指示图片中的对象;在至少一百万个图像中,还提供了边界框。ImageNet包含2万多个类别; 一个典型的类别,如“气球”或“草莓”,包含数百个图像。

主页:http://www.image-net.org/

2.Place365数据集

介绍:Places365是Places2数据库的最新子集。 Places365有两个版本:Places365-Standard和Places365-Challenge。Places365-Standard系列列车拥有来自365个场景类别的约180万张图像,每张图像最多可存储5000张图像类别。Places365-Challeng系列还有620万张图片以及Places365-Standard的所有图片(所以总共800万张图片),每张图片最多有40,000张。

主页:http://places2.csail.mit.edu/

  1. 3.Colorful image colorization(CNN模型)

论文:Zhang R, Isola P,Efros A A. Colorful image colorization[C]//European conference on computervision. Springer, Cham, 2016: 649-666.

工作:该方案在自动图像着色的图形学领域取得了进步:设计了一个合适的损失函数来处理着色问题中的多模不确定性,维持了颜色的多样性;介绍了一种新型的着色算法评估框架,而且这种评估框架有应用到其他图像合成任务的潜力;通过在百万数量级的彩色图片上训练在这类任务上抵达了一个新的水准。该方法将图像着色任务转化为一个自监督表达学习的任务,并且在一些基准上获得了最好的效果。下图为网络结构图。

68a02bfc7d52b062a9700c2e33fb42b9.png

图2 Colorful image colorization网络结构图

代码:http://richzhang.github.io/colorization/

4.Image Colorization with Generative Adversarial Networks(GAN模型)

论文:NazeriK, Ng E. Image Colorization with Generative Adversarial Networks[J]. arXivpreprint arXiv:1803.05400, 2018.

工作:该方法使用GAN自动将灰度图像着色到可接受的视觉程度的彩色图像。将当前方法扩展到高分辨率图像。网络是针对公开可用的数据集(如CIFAR-10和Places365)进行训练。下图为该网络结构图:

985c8de71b0a487b67abd456e57a9763.png

图3 网络结构图

5.Interactive Deep Colorization(CNN模型)

论文:ZhangR, Zhu J Y, Isola P, et al. Real-time user-guided image colorization withlearned deep priors[J]. arXiv preprint arXiv:1705.02999, 2017.

工作:该方法是一种用于用户引导的图像着色的深度学习方法。系统将灰度图像以及本地用户的提示共同映射带卷积神经网络(CNN)中去,最终输出彩色图像。该方法通过模拟用户输入训练一百万张图像。为了引导用户进行有效的输入选择,系统根据输入图像和当前用户输入推荐可能的颜色作为备选颜色。着色在单个前馈过程中执行,可实现实时使用。下图为该方法的网络结构图:

1576b2dec3f8d655af366d0918ec4f5d.png

图4 Interactive DeepColorization网络结构图

代码:https://richzhang.github.io/ideepcolor

6.Automatic Colorization of Grayscale Images(CNN模型)

论文:IizukaS, Simo-Serra E, Ishikawa H. Let there be color!: joint end-to-end learning ofglobal and local image priors for automatic image colorization withsimultaneous classification[J]. ACM Transactions on Graphics (TOG), 2016,35(4): 110.

工作:该方法结合了全局先验和局部图像特征。基于卷积神经网络,加入深层网络具有融合层,允许网络合并小图像块的局部信息和整个图像的全局信息,以端到端的方式进行训练。此外,与大多数基于CNN的现有方法不同,该架构可以处理任何分辨率的图像。利用现有的大型场景分类数据库来训练模型,利用数据集的类标签来更有效地和区别地学习局部信息和全局信息。下图为模型示意图:

9085dd9886db527af85c0e1ba79e126c.png

图5 Automatic Colorization of Grayscale Images模型示意图

代码:https://github.com/williamFalcon/pix2pix-keras

7.Deep Exemplar-basedColorization(CNN模型)

论文:He M, Chen D, Liao J, et al.Deep exemplar-based colorization[J]. ACM Transactions on Graphics (TOG), 2018,37(4): 47.

工作:该方法是一种基于样本的局部着色的深度学习方法。该方法使用的端到端着色网络不是像传统的基于示例的方法那样使用手工制作的规则,而是学习如何从大规模数据中选择传播方式和预测颜色。即使在使用与输入灰度图像无关的参考图像时,该方法也可以很好地执行并且很好地推广。该网络允许用户通过简单地提供不同的参考来实现可定制的结果,只需选择顶部参考建议,就可以完全自动执行着色。

代码:https://github.com/msracver/Deep-Exemplar-based-Colorization

于浩洋

北京电子科技学院在读研究生,研究方向为同态加密,图像生成。

Email:

pec7@163.com

7c0e6d266e5b95651fdf544c1bdff21d.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/566935.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【adb】电脑通过ADB向手机传输文件

具体步骤如下: Step1 下载ADB工具 下载最新版本的 ADB工具 !!! 注意:一定要是最新版本的ADB,否则很可能导致无法识别到手机。 将下载的ADB解压以后的文件如下图所示: Step2 添加环境变量 将 ADB的路径 D:\platformtools &…

java userdao,Java Web 开发基础------DAO

DAO (Data Access Objects)数据访问对象是第一个面向对象的接口,它显露了 Microsoft Jet数据库引擎(由 Microsoft Access 所使用),并允许 Visual Basic 开发者通过 ODBC 象直接连接到其他数据库一样,直接连接到 Access 表。DAO 最适用于单系统…

git 提交文件_GIT不小心提交了大文件导致提交失败怎么办?

出现问题的原因在commit的时候,我们之前提交的版本里面已经包含了些大文件了,虽然后来在新的提交里面删除了这些大文件,但是之前commit的记录还是存在,所以之后提交还是会失败1) 模拟一下环境:新建仓库并且添加一个 te…

matlab中变.,Matlab变系数微分方程

附件给出的是齿轮动力学振动模型和微分方程其中x为要求的位移响应,Zeta为齿轮副相对阻尼系数,Zeta 0.07,m为等效质量m3;Fn为法向载荷Fn100N。k(t)为齿轮副的时变啮合刚度对k(t)我做了关于时间t的傅里叶变换:k750527161…

ztree 标准得json数据格式_酷站推荐 - json-c.github.io/json-c - json-c API

json-c.github.io/json-c/http://json-c.github.io/json-c/JSON:JavaScript 对象表示法(JavaScript Object Notation)。 JSON 是存储和交换文本信息的语法。类似 XML。 JSON 比 XML 更小、更快,更易解析。JSON(JavaScript Object …

matlab randn state 2,MATLAB?中的randn函数

matlab函数randn:产生正态分布的随机数或矩阵的函数randn产生均值为0,方差 σ^2 1,标准差σ 1的正态分布的随机数或矩阵的函数。用法:Y randn(n)返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。Y ra…

qt弹框输入密码_Android仿支付宝密码输入框

实现效果图:实现流程:1、定义6位密码输入View思路:要绘制边框矩形,绘制分割线,绘制圆点。绘制圆的数目要与字符串的长度有关,添加或者删除都要修改字符串,输入6位后就是要关闭弹框,拿…

php 前置匹配,浅析PHP正则表达式匹配的特定实现

PHP正则表达式匹配的特定实现是什么呢?其实我们知道,在实际的匹配操作的过程中我们操作的不仅仅是单个的字母或是数字,那么我们面对像单词的或是一组数字的时候该如何处理呢?PHP正则表达式匹配的特定实现会使用到PHP正则表达式内置…

esc指令检查打印状态_Z.115 胶片自助打印设备

一、概述病人在完成影像检查后,需要快速获取结果,传统的方式是向病人发放胶片和诊断报告,随着大型医院病人检查量的快速增加,这种方式有诸多弊病。自助打印机将胶片和诊断报告打印集成起来,消除时空障碍,实…

java执行class找不到main函数_你所不知道的HelloWorld背后的执行原理

专注于Java领域优质技术,欢迎关注作者:饭谈编程【今日最佳】对于程序员而言,所谓的二八定律指的是 花百分之八十的时间去学习日常研发中不常见的那百分之二十的原理。据说阿里某程序员对书法十分感兴趣,退休后决定在这方面有所建树…

matlab窗函数 响应,matlab窗函数设计方案.doc

matlab窗函数设计方案PAGE \* MERGEFORMATPAGE \* MERGEFORMAT 13目录TOC \o "1-3" \h \u HYPERLINK \l _Toc18947 目录 PAGEREF _Toc18947 1HYPERLINK \l _Toc5619 摘要 PAGEREF _Toc5619 2HYPERLINK \l _Toc16857 1 MATLAB的概况 PAGEREF _Toc16857 2HYPERLINK \l …

java接口文档生成工具_【分享】接口文档生成工具apipost

一、为什么要写接口文档?正规的团队合作或者是项目对接,接口文档是非常重要的,一般接口文档都是通过开发人员写的。一个工整的文档显得是非重要。项目开发过程中前后端工程师有一个统一的文件进行沟通交流开发,项目维护中或者项目…

matlab boll源码,【每日一策】Matlab量化交易策略之 布林带突破+头寸管理

function Strategyn(freq)%targetList traderGetTargetList();%获取目标资产信息HandleList traderGetHandleList();%获取账户句柄global record;global state;for k1:length(targetList);%--------------------仓位、K线、当前bar的提取-----------------------------%%获取…

jacobi matlab程序,jacobi迭代法实验MATLAB程序数值分析

jacobi迭代法实验MATLAB程序数值分析 例1. 求线性方程组 得近似解。精确解为x*[3,2,1]’。 解:对方程进行移项就得 记为Axb,或写为xB0 xf,其中 取初始值,代入原方程组可得再将把它代入可得.反复利用这个计算过程,得到一向量序列和…

docker部署python web应用_安装docker并部署web项目

一.docker简介1、docker定义:docker是一个用来装应用的容器,就像杯子可以装水,笔筒可以装笔,书包可以放书一样。你可以把“hello world!”放到docker中,也可以把网站放到docker中,你可以把任何你…

java 水印乱码,linux java程序加水印及中文乱码方案

在linux,centos环境下的,生成的带文字的水印图片在显示为方框乱码。img.setFont(new Font("宋体", Font.BOLD, 20));写中文进入图片之前必须设置字体,而且这个字体必须支持中文,否则就会出现乱码或者方框、问号等等。Bu…

resultmap拿不到数据_阿里巴巴国际站每日电商运营工作数据表格

一、日常运营工作表1.数据日报统计每天的流量数据:2.数据周报统计每周的流量数据:3.数据月报统计每月流量数据:前半部分后半部分4.P4P月数据总览统计P4P的流量数据:大图包含上面所有的方案5.P4P日数据总览6.爆款数据统计每月统计爆…

php oracle新增数据类型,oracle数据类型

数据类型字符串类型字符串类型用来存储字符串数据char用于描述定长的字符型数据0~2000nchar用来存储Unicode字符集的定长字符型数据0~1000varchar2用于描述可变长的字符型数据0~4000nvarchar2用来存储unicode字符集的可变长字符型数据0~1000long用来存储边长的字符串0~2GBvarch…

jenkins ssh 远程部署_Jenkins部署jar到远程服务器

首选得确定Jenkins的安装完整,还有插件的安装,除默认插件,此处必备插件:Publish Over SSH,SSH plugin,因为我源码在gitlab所以关于gitlab的插件我也安装了,看各自的情况选择安装。然后到系统管理…

jieba分词_Jieba.el – 在Emacs中使用jieba中文分词

jieba.el在Emacs中使用jieba中文分词众所周知, Emacs并没有内置中文分词系统, 以至于 forward-word 和 backward-word 以及 kill-word 等以单词为单位的操作只能粗暴的标点符号进行确定所谓”词汇”, (其实是中文里的句子).jieba.el 利用nodejieba对buffer中的中文句子进行分割…