发明名称 基于噪声检测的高密度脉冲噪声自适应滤波算法
摘要 本发明涉及一种基于噪声检测的高密度脉冲噪声自适应滤波算法(PA),以椒盐脉冲噪声为例,采用先检测后滤波的思路,首先根据椒盐噪声图像的特征甄别出噪声点和信号点,然后依据一定的判定准则对噪声点进行自适应恢复。具体过程为:步骤1:对W3(i,j)窗口中的9个像素按灰度值升序排序;步骤2:对噪声图像X中对应F(i,j)为0的点(i,j)进行自适应滤波;步骤3:自上向下,自左向右对下一个(i,j)转到步骤1进行处理,直到最后一个像素点滤波完成(边界点不作处理)。通过大量仿真实验及定量评价指标比对,本发明提出的算法相比同类算法,在高密度噪声图像滤波的同时较好的保持了图像的细节信息,并且时间代价较低。
申请公布号 CN103679732A 申请公布日期 2014.03.26
申请号 CN201310703063.9 申请日期 2013.12.12
申请人 西安建筑科技大学 发明人 周军妮;王民;卫铭斐;董惠;杨润玲;朱晓娟;杨放;刘莉;江莉;魏蕊;温浩;王纯
分类号 G06T7/00(2006.01)I;G06T5/00(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 代理人
主权项 1.一种基于噪声检测的高密度脉冲噪声自适应滤波算法,其特征在于:所述算法具体如下:椒盐脉冲噪声分为定值脉冲噪声(椒盐噪声)和随机值脉冲噪声;对于256级灰度图像,椒盐噪声就是噪声点灰度取值最小值(灰度为0)和最大值(灰度为255)的像素点;假设I代表一幅分辨率为M×N的256级灰度图像;若对图像I加入噪声密度为p%(p代表添加噪声的百分比,0≤p≤100)的椒盐噪声,那么噪声图像X在坐标(i,j)处的概率密度函数f(X)可以表示为:<img file="FSA0000099277600000011.GIF" wi="854" he="221" />具体算法在分析椒盐噪声特点的基础上,第一步进行噪声点检测,第二步仅对检测出的噪声点进行滤波恢复,而检测出信号点灰度值保持不变,在滤除噪声的同时,最大限度的保持图像的细节信息不被污染,其具体处理过程如下:(1)噪声标识矩阵:根据椒盐噪声的特点,如果该点的灰度值为0或255,即判断为噪声点,而除此之外,判断为信号点;假设X为受椒盐噪声污染的噪声图像,F表示噪声标识矩阵,如果(i,j)是噪声点则F(i,j)=0,如果是信号点则F(i,j)=1,那么F(i,j)可以表示为:<img file="FSA0000099277600000012.GIF" wi="844" he="141" />由式(2)可知,本发明实施例噪声检测方法完全符合椒盐噪声图像的图像特征,并且考虑到邻域像素的相关性,距离最近的像素应该相关性最强;(2)像素邻域定义:通常,在对图像进行滤波操作时,均采用从上到下,至左向右的顺序进行,假设噪声图像X在坐标(i,j)处的灰度值为X(i,j),那么(i,j)处的垂直4-邻域可表示为N<sub>4</sub>(i,j),对角4-邻域表示为N<sub>4</sub>′(i,j),其定义如下:N<sub>4</sub>(i,j)={X(i-1,j),X(i,j-1),                (3)X(i+1,j),X(i,j+1)}N<sub>4</sub>′(i,j)={X(i-1,j-1),X(i+1,j-1),             (4)X(i+1,j+1),X(i-1,j+1)}对坐标(i,j)而言,其垂直四邻域中仅有X(i-1,j)和X(i,j-1),对角四邻域中仅有X(i-1,j-1)和X(i-1,j+1)为滤波恢复后的灰度值,而其余点为待滤波点;重新定义噪声图像X在坐标(i,j)处的垂直4-邻域和对角4-邻域,坐标是(i-1,j),(i,j-1)的像素组成滤波后垂直4-邻域,记为N<sub>4V</sub>(i,j);坐标为(i-1,j-1),(i-1,j+1)的像素组成滤波后对角4-邻域,记为N<sub>4C</sub>(i,j);显然,(i,j)点与N<sub>4V</sub>(i,j)的欧式距离为1,而与N<sub>4C</sub>(i,j)的欧式距离为<img file="FSA0000099277600000021.GIF" wi="73" he="44" />具体定义如下:N<sub>4V</sub>(i,j)={X(i-1,j),X(i,j-1)}    (5)N<sub>4C</sub>(i,j)={X(i-1,j-1),X(i-1,j+1)}    (6)(3)噪声滤波算法步骤:经过第一步噪声点检测后,得到噪声标识矩阵F(i,j),若F(i,j)为0,则表示检测点(i,j)为噪声点,这时就需要对噪声点进行滤波环节了;本发明实施例提出的算法(PA)采用维数为(2m+1)×(2m+1)的方形滤波窗口W<sub>2m+1</sub>(i,j),其定义如下:W<sub>2m+1</sub>(i,j)={X(i+s,j+t)}              (7)s,t∈{-m,…,0,…,m}m取值为1,这样W<sub>3</sub>(i,j)代表3×3的滤波窗口;<![CDATA[<math><mrow><msub><mi>W</mi><mn>3</mn></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mtd><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mtd><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mtd></mtr><mtr><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mtd><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mtd><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mtd></mtr><mtr><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mtd><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mtd><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow></math>]]></maths>自适应滤波算法步骤如下:步骤1:对W<sub>3</sub>(i,j)窗口中的9个像素按灰度值升序排序,Sort表示排序;S<sub>3</sub>=Sort(W<sub>3</sub>(i,j))={S(1),S(2),...,S(9)},             (9)S(1)≤S(2)≤...≤S(9)步骤2:对噪声图像X中对应F(i,j)为0的点(i,j)进行自适应滤波;<![CDATA[<math><mrow><mi>Y</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mi>X</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>,</mo></mtd><mtd><mi>F</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>=</mo><mn>1</mn></mtd></mtr><mtr><mtd><mi>P</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>,</mo></mtd><mtd><mi>F</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>=</mo><mn>0</mn></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow></math>]]></maths><img file="FSA0000099277600000024.GIF" wi="908" he="370" />其中函数Navg(N),代表对集合N中所有信号点进行灰度平均运算,N代表公式(5)、(6)定义的N<sub>4V</sub>(i,j)或N<sub>4C</sub>(i,j);步骤3:自上向下,自左向右对下一个(i,j)转到步骤1进行处理,直到最后一个像素点滤波完成(边界点不作处理)。
地址 710055 陕西省西安市碑林区雁塔路13号