zoukankan      html  css  js  c++  java
  • [转]图像去噪的快速入门学习

    图像去噪的快速入门学习

    原文地址:http://blog.csdn.net/margaret_wangrui/article/details/51912372

     

    1. 理论基础 
    数学基础:高等数学、线性代数、概率统计、矩阵论、数值分析等。 
    信号处理:统计信号处理、统计学习理论等。

    2. 文献资料阅读 
    常用的数据库: 
    IEEE/IEE Electronic Library 、Elsevier、 SpringerLink 、SPIE等。 
    一流的会议和期刊: 
    CVPR、ICCV、ECCV、ICPR、ICIP、ACCV等。

    3. 编程软件 
    MATLAB、VC+MATLAB、VC+OpenCV、VC等。

    4. 什么是图像 
    图像是客观对象的一种相似性的、生动性的描述或写真,是人类社会活动中最常用的信息载体。或者说图像是客观对象的一种表示,它包含了被描述对象的有关信息。它是人们最主要的信息源。据统计,一个人获取的信息大约有75%来自视觉。图像是对客观物体的主动感官。

    5. 图像的分类 
    数字图像可以分为:灰度图像和多通道图像。 
    而多通道图像有:彩色图像、遥感图像和多谱图像。 
    通常图像的颜色值在0~255之间,所以图像颜色值是否只能在0~255之间呢? 
    否,可以数值化更精细。 
    图像的坐标系统常在屏幕显示中采用,屏幕扫描从左到右,从上到下进行。原点设置在图像的左上角。

    6. 图像工程的三个层次 
    三个层次分别是:图像处理、图像分析与图像理解。通常的图像工程都是在做第一层次。

    7. 颜色空间 
    本质上,彩色模型是坐标系统和子空间的阐述。位于系统的每种颜色都有单个点表示。颜色空间有许多种,常用有RGB,CMY,HSV,HSI等。

    RGB(红绿蓝)是依据人眼识别的颜色定义出的空间,可表示大部分颜色。但在科学研究一般不采用RGB颜色空间,因为它的细节难以进行数字化的调整。它将色调,亮度,饱和度三个量放在一起表示,很难分开。它是最通用的面向硬件的彩色模型。该模型用于彩色监视器和一大类彩色视频摄像。三个通道的相关性很强。
    
    CMY是工业印刷采用的颜色空间。它与RGB对应。简单的类比RGB来源于是物体发光,而CMY是依据反射光得到的。具体应用如打印机:一般采用四色墨盒,即CMY加黑色墨盒。
    
    HSV,HSI两个颜色空间都是为了更好的数字化处理颜色而提出来的。有许多种HSX颜色空间,其中的X可能是V,也可能是I,依据具体使用而X含义不同。H是色调,S是饱和度,I是强度。
    
    LAB均匀颜色空间:基于四色对立学说,颜色坐标为(L,a,b),L代表亮度,ab代表色度。这种表示符合人类的视觉感知。
    

    8. 边界处理 
    对于越界的临域像素,需要采用边界扩展技术。有两种典型的边界扩展技术: 
    中心扩展技术,即将边界的像素值以中心的像素值来代替。 
    边缘扩展技术,即越界的像素用靠它最近的边界像素来代替。

    9. 彩色图像处理 
    标量处理方法:把每个颜色通道当成一个独立的灰色图像处理。(忽略了颜色间的相关性,性能较差) 
    矢量处理方法:

    10. BMP文件结构 
    【参考网络】 
    BMP文件总体上由4部分组成,分别是位图文件头、位图信息头、调色板和图像数据,如表5-1所示。

    表5-1 BMP文件的组成结构 
    下面来详细看一下每个组成部分的细节。 
    1.位图文件头(bitmap-file header) 
    位图文件头(bitmap-file header)包含了图像类型、图像大小、图像数据存放地址和两个保留未使用的字段。打开WINGDI.h文件,搜索”BITMAPFILEHEADER”就可以定位到BMP文件的位图文件头的数据结构定义。

    typedef struct tagBITMAPFILEHEADER { 
    WORD    bfType; 
    DWORD   bfSize; 
    WORD    bfReserved1; 
    WORD    bfReserved2; 
    DWORD   bfOffBits; 
    } BITMAPFILEHEADER, FAR *LPBITMAPFILEHEADER, *PBITMAPFILEHEADER;

    2.位图信息头(bitmap-information header) 
    位图信息头(bitmap-information header)包含了位图信息头的大小、图像的宽高、图像的色深、压缩说明图像数据的大小和其他一些参数。 
    打开WINGDI.h文件,搜索”tagBITMAPINFOHEADER”就可以定位到BMP文件的位图信息头的数据结构定义。

    typedef struct tagBITMAPINFOHEADER{ 
    DWORD      biSize; 
    LONG        biWidth; 
    LONG        biHeight; 
    WORD       biPlanes; 
    WORD       biBitCount; 
    DWORD      biCompression; 
    DWORD      biSizeImage; 
    LONG        biXPelsPerMeter; 
    LONG        biYPelsPerMeter; 
    DWORD      biClrUsed; 
    DWORD      biClrImportant; 
    } BITMAPINFOHEADER, FAR *LPBITMAPINFOHEADER, *PBITMAPINFOHEADER;

    11. 调色板 
    图像处理中为了节省表示图像RGB信息的空间用调色板存储彩色信息(RGB值),数据区只存储当前象素的色彩在调色板中的位置,这样就省了很多字节。不过真彩色的图像没有调色板。

    12. 噪声 
    噪声对人的影响噪声可以理解为“ 妨碍人们感觉器官对所接收的信源信息理解的因素”。而图像中各种妨碍人们对其信息接受的因素即可称为图像噪声 。噪声在理论上可以定义为“不可预测,只能用概率统计方法来认识的随机误差”。因此将图像噪声看成是多维随机过程是合适的,因而描述噪声的方法完全可以借用随机过程的描述,即用其概率分布函数和概率密度分布函数。 
    噪声分类:脉冲噪声(椒盐噪声)、高斯噪声等。

    高斯噪声就是n维分布都服从高斯分布的噪声。高斯分布,也称正态分布。对于随机变量X,其概率密度函数如图所示。称其分布为高斯分布或正态分布,记为N(μ,σ2),其中为分布的参数,分别为高斯分布的期望和方差。当有确定值时,p(x)也就确定了,特别当μ=0,σ2=1时,X的分布为标准正态分布。 
    椒盐噪声是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声。椒盐噪声往往由图像切割引起。

    对于椒盐噪声,中值滤波效果比均值滤波效果好。原因: 
    1、椒盐噪声是幅值近似相等但随机分布在不同的位置上,图像中有干净点也有污染点。 
    2、中值滤波是选择适当的点来代替污染点的值,所以处理效果好。 
    3、因为噪声的均值不为零,所以均值滤波不能很好地去除噪声点。

    对于高斯噪声,均值滤波效果比中值滤波效果好。原因: 
    1、高斯噪声是幅值近似正态分布,但分布在每点像素上。 
    2、因为图像中的每点都是污染点,所以中值滤波选不到合适的干净点。 
    3、因为正态分布的均值为零,所以均值滤波可以削弱噪声

    13. 去噪方法 
    1、均值滤波 
    均值滤波也称为线性滤波,其采用的主要方法为邻域平均法。其基本原理是用均值替代原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y),作为处理后图像在该点上的灰度g(x,y)。 
    这种算法简单,处理速度快,主要缺点:降低噪声的同时使图像产生模糊,特别是在边缘和细节处。而且邻域越大,在去噪能力增强的同时模糊程度越严重。 
    2、中值滤波 
    中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术。 
    其实现原理如下:将某个像素邻域中的像素按灰度值进行排序,然后选择该序列的中间值作为输出的像素值, 让周围像素灰度值的差比较大的像素改取与周围的像素值接近的值,从而可以消除孤立的噪声点。利用中值滤波算法可以很好地对图像进行平滑处理。 
    这种算法简单,时间复杂度低,但其对点、线和尖顶多的图像不宜采用中值滤波。很容易自适应化。

    3、小波变换 
    小波变换是一种窗口大小固定但其形状可改变的时频局部化分析方法。 
    小波变换利用非均匀的分辨率,即在低频段用高的频率分辨率和低的时间分辨率(宽的分析窗口);而在高频段利用低的频率分辨率和高的时间分辨率(窄的分析窗口),这样就能有效地从信号(如语言、图像等)中提取信息,较好地解决了时间和频率分辨率的矛盾。对于一副图像,我们关心的是它的低频分量,因为低频分量是保持信号特性的重要部分,高频分量则仅仅起到提供信号细节的作用,而且噪声也大多属于高频信息。这样,利用小波变换,噪声信息大多集中在次低频、次高频、以及高频子块中,特别是高频子块,几乎以噪声信息为主,为此,将高频子块置为零,对次低频和次高频子块进行一定的抑制,则可以达到一定的噪声去除效果。

    14.分析 
    1、 对于均值滤波: 
    均值滤波对高斯噪声的抑制是比较好的,处理后的图像边缘模糊较少。 
    但对椒盐噪声的影响不大,因为在削弱噪声的同时整幅图像内容总体也变得模糊,其噪声仍然存在。 
    2、 对于中值滤波: 
    中值滤波对高斯噪声的抑制效果不明显。这是因为高斯噪声使用随机大小的幅值污染所有的点,因此无论怎样进行数据选择,得到的始终还是被污染的值。中值滤波对去除“椒盐”噪声可以起到很好的效果,因为椒盐噪声只在画面中的部分点上随机出现,所以根据中值滤波原理可知,通过数据排序的方法,将图像中未被噪声污染的点代替噪声点的值的概率比较大,因此噪声的抑制效果很好,同时画面的轮廓依然比较清晰。由此看来,对于椒盐噪声密度较小时,尤其是孤立噪声点,用中值滤波的效果非常好的。 
    3、 对于小波变换:小波变换对高斯噪声有比较好的抑制作用,而且,在去除噪声的同时可以较好地保持图像的细节。 
    小波变换对“椒盐”噪声的去除效果不大。小波变换是一种时频局部化分析方法。即随着分辨率的降低,噪声的小波变换值逐渐减小,信号占主导地位;而随着分辨率的提高,噪声的小波变换值增大,信号被噪声淹没。所以,对小波变换,提高分辨率和有效去除噪声,两者不可兼得。

  • 相关阅读:
    贝塞尔曲线
    View Transform(视图变换)详解
    list::splice()函数详解
    c语言宏定义
    Shadow mapping
    spring管理事务
    sql标准支持了事务隔离级别
    java cocurrent并发包
    spring事务详细理解
    spring aop提供了两种实现方式jdk和cglib
  • 原文地址:https://www.cnblogs.com/Crysaty/p/6495286.html
Copyright © 2011-2022 走看看