2017-04-08 09:45:38 Brain011 阅读数 2727

最近工作需要,开始学习图像处理啦。我们使用的软件是Adaptive Vision Studio。不过是收费的哟。无基础学习。所以先加强一下子基础啦咯
这里写图片描述


前期准备:

直方图

灰度直方图:不同灰度值的像素分量分别占像素总数的概率分布
p(rk) = nk/MN;
rk:第k级的像素个数
MN:像素总数/行数 * 像素总数/列数
P(rk):归一化概率直方图

图像分割

输入图像,提取图像属性
一张图像R,可以分割为不同区域R1,R2,…,Rn

这里写图片描述


阈值处理(区域分割)

灰度阈值处理基础

—–《数字图像处理》

粗略的计算一下,阈值T
T= (对象的灰度值+背景的灰度值)/ 2

2015-12-02 21:15:57 xwh19910215 阅读数 568

开始学习数字图像处理

参考书籍:《 冈萨雷斯 数字图像处理第二版》

人类对图像亮度的理解

1. 视觉系统倾向于不同强度区域边界周围的“欠调”和“过调

这里写图片描述

2. 同时对比现象

这里写图片描述

3. 视觉错觉

这里写图片描述

光和电磁波谱

波长(λ)与频率(γ)的公式:

λ=c/γ

电磁波谱能量的公式:
E=hv

因此,波长越短(频率越高),能量越大。伽马射线等对活体组织危害很大。

图像形成模型

用f(x,y)二维函数形式表示图像,它的值正比于物理源的辐射能量(如电磁波谱),即:

0<f(x,y)<

f(x,y)=i(x,y)r(x,y),0<r(x,y)<1

i(x,y)表示入射分量,r(x,y)表示反射分量

像素表示形式

4领域:N4(p):{(x+1,y),(x-1,y),(x,y+1),(x,y-1)}
4对角领域:ND(p):{(x+1,y+1),(x+1,y-1),(x-1,y+1),(x-1,y-1)}
8领域:N8(p)

2017-10-25 09:50:47 dongfang1984 阅读数 1767

做了3年多的图像处理,从本科毕设就做,到硕士毕业都没离开这个行业。本文旨在总结一下OpenCV与传统图像处理。

1、疑问?

自动16年初接触深度学习开始,读了一些图像paper。涉及图像识别(ResNet、googleNet系列)、目标检测(RCNN系列、YoLo)、人脸识别、OCR

开始一接触深度学习一段时间就有一个疑问:既然深度学习这么有用,也刷新了很多领域的benchmark。那传统的机器学习方法或者图像处理(PCA\ASM\SIFT\二值图像的腐蚀、膨胀)还有意义?

2、PCA与OpenCV

3、腐蚀膨胀与OpenCV

4、

小结(一些常用函数)

2018-11-07 10:11:30 kellyroslyn 阅读数 67

本文转自知乎专栏:https://zhuanlan.zhihu.com/p/32177354

一方面为做资料整理用,方便后期回顾,另一方面转需

--------------------------------------------------

第一个重境界: 图像识别

如果你开始了解深度学习的图像处理, 你接触的第一个任务一定是图像识别 :比如把你的爱猫输入到一个普通的CNN网络里, 看看它是喵咪还是狗狗。

一个最普通的CNN, 比如像这样几层的CNN鼻祖Lenet, 如果你有不错的数据集(比如kaggle猫狗大战)都可以给出一个还差强人意的分类结果(80%多准确率), 虽然不是太高。

当然,如果你再加上对特定问题的一些知识, 也可以顺便识别个人脸啥的,开个startup叫face 减减什么:

会玩的, 也可以顺别识别个猪脸什么哒(我觉得长得都一样哦), 这样搞出来每个猪的身份, 对于高质量猪肉的销售, 真是大有裨益的。

或者看看植物都有个什么病害什么的,像这样不同的病斑, 人都懒得看的, 它可以给你看出来。 植物保护的人可以拿着手机下田了。

Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. "U-net: Convolutional networks for biomedical image segmentation." International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, Cham, 2015.

虽然植物保护真的很好用,分类问做就了还真是挺无聊的。

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

He, Kaiming, et al. "Identity mappings in deep residual networks." European Conference on Computer Vision. Springer International Publishing, 2016.

第二重境界 : 物体检测

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

或者这样的:

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

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

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

Ren, Shaoqing, et al. "Faster R-CNN: Towards real-time object detection with region proposal networks." Advances in neural information processing systems. 2015.

万军斩你首级那是杠杠的,在众多路人甲中识别嫌疑犯,也是轻而易举, 安防的人听着要按捺不住了。

今年出现的YOLO算法更是实现了快速实时的物体检测,你一路走过就告诉你视线里都有什么在哪里,要知道这在无人驾驶里是何等的利器。

YOLO快速检测法Redmon, Joseph, et al. "You only look once: Unified, real-time object detection." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.

当然, 到这里你依然最终会觉得无聊, 即使网络可以已经很复杂, 不过是一个CNN网络(推荐区域),在加上一层CNN网络做分类和回归。 能不能干点别的?

第三重境界 : 图像切割

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

所谓抠图

Drozdzal, Michal, et al. "The importance of skip connections in biomedical image segmentation." International Workshop on Large-Scale Annotation of Biomedical Data and Expert Label Synthesis. Springer International Publishing, 2016.

注意,这个任务里,我们是要从一个图片里得到另一个图片哦! 生成的面具是另一个图片, 这时候,所谓的U型网络粉墨登场,注意这是我们的第一个生成式的模型。 它的组成单元依然是卷积,但是却加入了maxpooling的反过程升维采样。

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

如果你要数个细胞啥的 ,都是挺容易的,给它变成这样的轮廓不就你得了。

第四重境界:

我们开始fashion起来, 如果你是淘宝服装小店的老板 ,想让客户输入一张服装的图片,然后得到一组推荐的服装, 来个以图搜图的功能怎么搞呢? 注意啊,我可以从网络上爬一大堆图出来,但是这些数据是没有标注的。怎么办? 铁哥告你还是有的搞,这个搞法,就是聚类。

铁哥教你最简单的一招聚类哦,那就是, 把图片统统放进卷积网络,但是我们不提取分类,而只是提取一些网络中间层的特征, 这些特征有点像每个图片的视觉二维码,然后我们对这些二维码做一个k-means聚类, 也会得到意想不到的效果。 为什么要深度? 因为深度提取的特征,那是与众不同的。

然后以图搜图呢? 不过是找到同一聚类里的其它图片啊。

在聚类的基础上, 就可以做个搜索!

第五层境界 :

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

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

Schawinski, Kevin, et al. "Generative adversarial networks recover features in astrophysical images of galaxies beyond the deconvolution limit." Monthly Notices of the Royal Astronomical Society: Letters 467.1 (2017): L110-L114.

第六重境界 :

在工业界赚够了钱,科学也太nerd了, 我们来玩艺术思考哲学 ,第一招, 图像风格迁移,请见怎么样用深度学习取悦你的女朋友(有代码):

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

Zhu, Jun-Yan, et al. "Unpaired image-to-image translation using cycle-consistent adversarial networks." arXiv preprint arXiv:1703.10593 (2017).

第七重境界:

图像翻译也懒的玩了, 你神经网络不是号称能够理解图像,看你来个无中生有,在噪声里生成图片来?

对,依然是GAN,而且是最基础的卷积GAN (DCGAN)就可以给你干出来。

看看GAN所幻想的宾馆情景, 你能想到是计算机做的图吗? 哈哈哈!

Goodfellow, Ian, et al. "Generative adversarial nets." Advances in neural information processing systems. 2014.

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

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

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


2014-06-30 00:30:51 c602273091 阅读数 1167

    从今天开始,小哥就和大家一起学习数字图象处理吧!这里我更多是说原理这一层,要是大家想动手实践的话,有兴趣就去看看《学习opencv》,里面都是真刀真枪的操作!

首先,我们要明白什么是数字图像处理。数字图象处理就是应用计算机对数字化的图片进行处理,数字化的图片就是由离散的每个点组成,每个点都有灰度值。当然,对于数字图象处理也可以理解为包括两个方面:一是输入与输出均是图像的处理;二是可以从图像中获取一些特征及识别特定目标的处理。其实,在很多时候我们存在一个误解:数字图象处理就是处理的就是可见光图片。在生活中,数字图象处理设计各行各业:比如伽马射线成像用于骨骼扫描,X射线成像进行胸透,紫外线的荧光显微镜方法,红外线成像,超声波成像用于B超,TEMSEM的使用啦!这些都是数字信号处理的对象。

接着我们来说一下数字图像处理的step

Step1:获取图像。这一步是通过物理设备获取图片,再用数字化器把物理设备感知的数据数字化。当然,获取图像的时候还会有一个问题就是图像存储。假如一幅图是1024*1024灰度是8bit,一张图那就是1M,要是视频的话那就是差不多1S/30帧,要是有个几万张图片这也是有点恐怖的。一般来说存储的话可以用:(1)用于处理时的短期存储,可以使用计算机内存,也可以使用专门的帧缓存的硬件;(2)在线存储,采用磁盘或者光介质存储;(3)档案存储,存在档案存储介质的地方,一般来说无需频繁访问。我在想要是可以使用云计算的话,这一块就只需要通过wifi把图片上传,使用服务器来处理图像,那么速度就会快很多了,不需要在本地处理。

Step2:图像处理的各种方法。

图像增强,图像复原:显示被模糊的细节是图像增强的本质,图像复原更加倾向于图像退化。这东西是非常主观的,而图像恢复是比较客观的。  举一个例子:图像增强有一个就是增强对比度,这样就可以按你的想法对图像增强大你需要的效果。而图像恢复比如反马赛克,去雾之类的处理更加客观,力求恢复图像原本面目。

彩色图像处理:是以提取图像中感兴趣的特征为基础。比如现在比较火的图像搜索,目前为止还没有很成功的案例。在这里提一下,还有小波变换和多分辨率处理,小波是在各种分辨率下描述图片的基础。

压缩:减少存储量,或者传输的时候降低频带。我们平时看到的如JPG文件扩展名用的就是JPEG(联合图片专家组)图像压缩标准。

形态学处理:提取图像元素的工具,在表示与描述形状方面非常有用。

图像分割:将一幅图分成组成部分和目标物。一般来说,自主分割是图像处理最为困难的一部分。能够写出健壮稳定的分割算法是一件令人兴奋的事情!

表示与描述:这一步一般在分割步骤之后,把数据转换成容易用计算机处理的形式。而且这一步又称为特征选择,就是提取你想要的部分,是边缘或是内部。

目标识别:基于目标的描述给目标赋予符号的过程。我更喜欢把这一步叫做模式匹配。很多时候应该使用库中的数据与之相匹配得出目标物体的属性。

    Step3:图像显示。在Step2中进行了需要的处理后就可以输出。图像处理不一定要经过Step2中所有的,这要看我们的需求。

这样,我们对于数字图像处理有了一个感性的认识,我们就可以接下来进入正题了。

图像处理入门必看

阅读数 12417

没有更多推荐了,返回首页