用深度学习玩图像的 七 重关卡

第一个重境界: 图像识别

我们进化的方向,也就是用更高级的网络结构取得更好的准确率,比如像下图这样的残差网络(已经可以在猫狗数据集上达到99.5%以上准确率)。分类做好了你会有一种成为深度学习大师,拿着一把斧子眼镜里都是钉子的幻觉。 分类问题之所以简单, 一要归功于大量标记的图像, 二是分类是一个边界非常分明的问题, 即使机器不知道什么是猫什么是狗, 看出点区别还是挺容易的, 如果你给机器几千几万类区分, 机器的能力通过就下降了(再复杂的网络,在imagenet那样分1000个类的问题里,都很难搞到超过80%的准确率)。

第二重境界 : 物体检测

很快你发现,分类的技能在大部分的现实生活里并没有鸟用。因为现实中的任务啊, 往往是这样的:

那么多东西在一起,你拿猫狗大头照训练的分类网络一下子就乱了阵脚。 即使是你一个图片里有一个猫还有一个狗,甚至给猫加点噪声,都可以使你的分类网络分寸大乱。

现实中, 哪有那么多图片, 一个图里就是一个猫或者美女的大图,更多的时候, 一张图片里的东西, 那是多多的, 乱乱的,没有什么章法可言的, 你需要自己做一个框, 把你所需要看的目标给框出来, 然后, 看看这些东西是什么 。

于是你来到机器视觉的下一层挑战 - 目标检测(从大图中框出目标物体并识别), 随之而来的是一个新的网络架构, 又被称为R - CNN, 图片检测网络 , 这个网络不仅可以告诉你分类,还可以告诉你目标物体的坐标, 即使图片里有很多目标物体, 也一一给你找出来。

第三重境界 : 图像切割

你不仅需要把图片中边边角角的物体给检测出来, 你还要做这么一个猛料的工作, 就是把它从图片中扣出来。 要知道, 刚出生的婴儿分不清物体的边界, 比如桌上有苹果这种事, 什么是桌子,什么是苹果,为什么苹果不是占在桌子上的? 所以, 网络能不能把物体从一个图里抠出来, 事关它是否真的像人一样把握了视觉的本质。 这也算是对它的某种“图灵测试” 。 而把这个问题简化,我们无非是在原先图片上生成出一个原图的“mask”, 面具,有点像phtoshop里的蒙版的东西。

这个Segmentation任务, 作用不可小瞧哦, 比如现在私人卫星和无人机普及了,要不要去看看自己小区周围的地貌, 看是不是隐藏了个金库? 清清输入, 卫星图片一栏无余。 哪里有树, 哪里有水,哪里有军事基地,不需要人,全都给你抠出来。

第四重境界:聚类

淘宝的一个功能,输入一张服装的图片,然后得到一组推荐的服装, 注意啊,我可以从网络上爬一大堆图出来,但是这些数据是没有标注的。怎么办? 哥告你还是有的搞,这个搞法,就是聚类。哥教你最简单的一招聚类哦,那就是, 把图片统统放进卷积网络,但是我们不提取分类,而只是提取一些网络中间层的特征, 这些特征有点像每个图片的视觉二维码,然后我们对这些二维码做一个k-means聚类, 也会得到意想不到的效果。 为什么要深度? 因为深度提取的特征,那是与众不同的。然后以图搜图呢? 不过是找到同一聚类里的其它图片啊。

第五层境界 :降噪

我们开始晋升为仰望星空的人, 之前那些分类赚钱的应用太无聊了。 机器视觉搞科学怎么搞? 作为一群仰望星空后观察细胞的人,我们最常发现的是我们得到的天文或者细胞图片的噪声实在太大了, 这简直没法忍啊, 然后, 深度学习给了你一套降噪和恢复图像的方法。 一个叫auto-encoder的工具, 起到了很大的作用 , 刷的一下,图像就清楚了。

这还不是最酷炫的,那个应用了博弈理论的对抗学习, 也可以帮你谋杀噪点! 如果你会对抗所谓GAN, 也是一种图像生成的工具, 让网络去掉噪声的图片,与没有噪声的自然图片, 连卷积网络都判别不出来。

第六重境界 :图像翻译

在工业界赚够了钱, 我们来玩艺术思考哲学 ,第一招, 图像风格迁移:

然而真正能玩好这一事项的,还是那个刚刚提过的对抗学习GAN, 比如大名鼎鼎的CycleGAN, 几乎可以实现一种你自定义的“图像翻译” 功能,而且你不用做标注哦, 拿出冬天和夏天的两组图片, 它会自动的在两组图片中找出对应来。

第七重境界:GAN

图像翻译也懒的玩了, 你神经网络不是号称能够理解图像,看你来个无中生有,在噪声里生成图片来?对,依然是GAN,而且是最基础的卷积GAN (DCGAN)就可以给你干出来。看看GAN所幻想的宾馆情景, 你能想到是计算机做的图吗? 哈哈哈!

写到这里, 你会觉得GAN是非常有前途的,以前我还以为只是好玩呢。

这里展示的七级浮屠,也不过深度学习被人类discover的冰山一角, 醉卧沙场君莫笑, 古来征战几人回。

一个稍微清晰一些的大纲:

深度学习之图像处理---七级浮屠相关推荐

  1. 深度学习(图像处理)代码库

    为大家整理的代码资源库,收集了大量深度学习项目图像处理领域的代码链接.包括图像识别,图像生成,看图说话等等方向的代码,所有代码均按照所属技术领域建立索引,以便大家查阅使用. 2.1 图像生成  2.1 ...

  2. 双一流博士整理的计算机视觉学习路线(深度学习+传统图像处理)

    因工作需要,年初花了4个月左右时间学习了机器学习.神经网络相关的知识,工作日每天大概学习4-6个小时,周末每天大概10个小时,工作中的需求应对也得心应手了. 想快速入门的话,从自己的经验看,可以先不看 ...

  3. 第 12 章 基于块匹配的全景图像拼接--Matlab深度学习实战图像处理应用

    第 12 章 基于块匹配的全景图像拼接–Matlab深度学习实战图像处理应用GUI实现 效果如图所示 完整案例 主函数文件 Gui_Main.m文件 function varargout = Gui_ ...

  4. 三星推出增加了深度学习和图像处理功能的Exynos 7应用处理器

    文章来源:ATYUN AI平台 三星新推出的中端移动应用处理器Exynos 7 9610具有深度学习和更快的图像处理能力,并将于2018年下半年推出. 三星电子(Samsung Electronics ...

  5. 学习深度学习与图像处理中的一些感悟(1)

    缘起 四年前读研究生的时候做的方向就是图像识别,如此想来都过了很久了,但是毕业的时候都感觉没有入门.参加工作后,工作内容和图像无关了,晚上回来无聊看一看了竟然有了新的感触.更多是知道以前理解不透彻的原 ...

  6. 基于深度学习的图像处理算法论文学习

    近年来,深度学习技术得到了巨大的发展,并广泛应用于图像处理领域.相对于许多传统算法,深度学习技术从海量的训练数据中学习到的先验知识具有更强的泛化能力和更复杂的参数化表达,且无需调节算法参数以适应不同的 ...

  7. python按钮虚化,深度学习与图像处理实例:人像背景虚化与背景替换

    简单人像背景虚化处理思路如下: 对图像内容分割,提取人像,背景 背景模糊处理 人像与模糊处理后的背景融合 本实例使用DeepLabV3图像分割深度学习模型实现.代码如下: import numpy a ...

  8. 深度学习与图像处理实例:人像背景虚化与背景替换

    简单人像背景虚化处理思路如下: 对图像内容分割,提取人像,背景 背景模糊处理 人像与模糊处理后的背景融合 本实例使用DeepLabV3图像分割深度学习模型实现.代码如下: import os from ...

  9. 机器学习 深度学习 神经网络 图像处理优质博客整理

    图像处理.机器视觉.人工智能.机器学习:http://blog.csdn.net/zouxy09/article/details/14222605 http://blog.csdn.net/carso ...

最新文章

  1. 【机器学习入门】(2) 朴素贝叶斯算法:原理、实例应用(文档分类预测)附python完整代码及数据集
  2. Java 线程同步组件 CountDownLatch 与 CyclicBarrier 原理分析
  3. 开工大吉,先送一波福利~
  4. 基于jquery的侧边栏分享导航
  5. UI5 Control lazy load mechanism
  6. 【Go语言】面向对象扩展——接口
  7. maven 总结整理(二)——download source code
  8. Go1.18 新特性:多 Module 工作区模式
  9. java冒险模组_求推荐几个冒险类的MOD
  10. 量化策略回测TRIXKDJ
  11. 资源打包Assetbundle .
  12. java 文件下载预览_javaweb简单的实现文件下载及预览
  13. matlab disp输出换行,matlab输出语句disp
  14. Java远程开关机(全过程)
  15. 苹果7p最佳系统版本_苹果代码中发现, iPhone12 刘海没了!
  16. Linux 学习笔记2 常用命令
  17. Hadoop学习之MapReduce分布式计算框架
  18. Java技术原理详解
  19. 全国心力衰竭日:重症心衰的黑科技——永久型人工心脏
  20. 全面Java程序线上故障排查

热门文章

  1. boost::mp11::mp_power_set相关用法的测试程序
  2. boost::interprocess::bufferstream用法的测试程序
  3. boost::fruchterman_reingold_force_directed_layout用法的测试程序
  4. boost::geometry模块测试地理策略Testing geographic strategies的测试程序
  5. boost::fusion::remove_if用法的测试程序
  6. GDCM:gdcm::FilenameGenerator的测试程序
  7. ITK:警告定向到文件
  8. VTK:Utilities之BoundingBox
  9. C++Breadth First Search 广度优先搜索(附完整源码)
  10. QT的QStyle类的使用