前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[有意思的数学] 傅里叶变换和卷积与图像滤波的关系 (2)

[有意思的数学] 傅里叶变换和卷积与图像滤波的关系 (2)

作者头像
用户1622570
发布2018-04-11 15:39:21
2.3K0
发布2018-04-11 15:39:21
举报

昨天简单介绍了Fourier变换和卷积的概念,有了一个基本的认识之后,再看图像滤波,就不会觉得那么莫名其妙了。图像滤波这其实也是个大坑,里面涉及的东西很多,想通过今天这篇文章一下都掌握了,基本是不可能的。所以我这里就是给新手一个方向,如果想做图像方面的研究,该如何下手,然后怎么继续研究。但是我会尽力把涉及的点都提到,我觉得肯花时间来看我写的这篇文章,肯定是个好学好动手的好孩子。所以看完这个之后,最好再百度or Google一下,找点相关的资料,然后亲手动手实践一下就最好了,这样就有了一个全面的认识。

图像与滤波

首先我们这里讲的图像指的是数字图像,即图像是由离散的数字组成的(和数字图像对应的叫做连续图像或者模拟图像,其像素值在空间和亮度为连续的)。对于彩色图,表现为3通道的彩色值,其通道数为3,每个点的值代表RGB每种颜色的值;对于灰度图,其通道数为1,每个点上的值代表其深度,也把它叫做灰度值。而这里的滤波特指数字图像的滤波,事实上,滤波在信号处理领域无处不在。图像滤波是指在保留原来图像特征,纹理的基础上,去掉噪声的一种图像处理方法。这里你可能会问,噪声是什么?要理解噪声,不妨换个角度,一般来说,噪声和图像所对应的频率是不一样的(不一样暗示噪声的频率可能比图像实质的频率高也可能比真实的图像频率低)。去噪声是为了提高图像的信噪比,突出图像中的期望得到的区域,比如纹理,边界等。而频率是彩色值或者灰度值的变化情况,这里可以联想一下斜率的概念,我觉得这是类似的。而下面要讲的频域(频率域)方法,正是按照处理对象的不同而区分的。然后,我们所处理的图像,从统计的角度讲,其实就是一个随机变量的分布。而不同的彩色值或者灰度值就代表了不同的分布。从这个角度讲就引出了空间分布,对应下面的空域(空间域)方法。

小结一下,频率域处理是指先将图像变化到频域,再做滤波等处理;而空间域处理是指直接对原始的像素空间进行计算。频率域处理是一种间接的图像处理方法,而空域是一种直接的处理办法,操作的对象是像素值。另外对于滤波的分类并不是唯一的,一般有频域和空域,高通滤波和低通滤波,线性滤波和非线性滤波三类。这里只介绍按照频域和空域分有哪些方法。

频域方法

刚才讲了频域方法需要先将图像变换到频域,那么问题来了,怎么变换到频域?注意了,这里是个坑点!!!首先变换的方法同样有很多,常用的是快速傅里叶变换。而快速傅里叶变换得益于昨天没讲的卷积定理。卷积定理其实就一句话,至于证明有兴趣的自己去背书- * -;

卷积定理:

这个定理可以表述为:时域上的卷积等于频域上的乘积

对应于时域(也就是图像的空域)

对应于频域。所以将我们的图像f1和滤波器f2(“核”)通过快速傅里叶变换(暂且认为是一种傅里叶变换)变换到频域后,直接将他们相乘,最后再变换回空间域。关于频域的方法,根据功能划分可以分为平滑滤波和锐化滤波,【了解】平滑滤波:能减弱或者消除图像中高频率分量,但不影响低频率分量,在实际应用中可用来消除噪声。锐化滤波:与平滑滤波相反,能减弱或者消除图像中低频率分量,但不影响高频率分量,可使图像反差增加,边缘明显。这里提一下主要的方法以及在opencv中实现的方法。均值滤波:blur();高斯滤波:GaussianBlur();方框滤波:boxblur();中值滤波:medianBlur(); 双边滤波:bilateralFilter()。

空域方法

空域方法就是直接对原始像素值进行操作的方法。而卷积神经网络中的卷积正是如此。频域方法中提到一个问题就是“核”,这个“核”就是我们后面在卷积神经网络中要讲的卷积核。(在图像滤波里叫做滤波器,也就是通过这个器,可以把一部分波过滤掉,如果滤掉了低频波保留高频波,就叫高通滤波,反之就是低通滤波。而滤波器的种类也有很多)从数学的角度讲,卷积神经网络中的卷积核就是一个矩阵, 卷积核的大小就是矩阵的维度。和原始图像像素做运算的卷积核的值就是经常说的初始化。

回归到图像卷积中,这里贴一个别人总结的一个计算步骤:

(1)卷积核绕自己的核心元素顺时针旋转180度

(2)移动卷积核的中心元素,使它位于输入图像待处理像素的正上方

(3)在旋转后的卷积核中,将输入图像的像素值作为权重相乘

(4)第三步各结果的和做为该输入像素对应的输出像素

第一步做旋转,这里我不知道它做旋转的意义是什么,如果有知道的可以给我公众号或者微信留言!万分感谢!第二部移动,移动的目的是为了第三步与对应位置的像素相乘,第四步就是一个求和的过程。

总结

总结一下今天的内容,说了这么多就是想说一件事情,图像滤波,尤其是图像的卷积运算是卷积神经网络的基础。作者当初学习卷积神经网络的时候,并不知道这些,学习的过程那叫一个心累啊!当然卷积神经网络发展到现在,已经不仅仅应用在图像领域,它在文本,视频等各个方面都有应用。另外一个事情,就是里面涉及的一些概念,因为时间原因(lan),公式比较多(lan),涉及范围广(lan),需要各位看官再继续查资料。

这里是几个比较好的网络资源,供大家参考!

[参考文献]

  1. http://blog.csdn.net/zouxy09/article/details/49080029(推荐)
  2. http://blog.csdn.net/augusdi/article/details/20041643
  3. http://m.blog.csdn.net/article/details?id=51321109
  4. https://yq.aliyun.com/articles/852

写文章真的好累,尤其像我这样坚持的,不知道各位看的累不累,送上一首我比较喜欢的歌。 * . *

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习和数学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档