首页> 中国专利> 一种自适应的图像椒盐噪声滤除方法

一种自适应的图像椒盐噪声滤除方法

摘要

本发明公开了一种自适应的图像椒盐噪声滤除方法,步骤1,对图像的噪声密度进行计算,根据图像噪声密度检测出具有灰度极值的前K个像素;步骤2,从前面K个像素点中选取出L个噪声点,我们采用检测点做为中心点,其灰度值与其3×3邻域中其余八个点的灰度均值之差的绝对值作为相关性ρ,按照ρ值从大到小排序,选取前L个像素点作为最终确定的噪声点;步骤3,对步骤2得到的L个噪声点按照它们的3×3邻域中包含的噪声点数目从小到大进行排序,然后按照排序的顺序进行滤波,得到滤波后的图像。本发明的有益效果是相比现有方法的滤波效果好。

著录项

  • 公开/公告号CN103871034A

    专利类型发明专利

  • 公开/公告日2014-06-18

    原文格式PDF

  • 申请/专利权人 四川大学;

    申请/专利号CN201410109229.9

  • 发明设计人 李天翼;周家文;党晓强;徐富刚;

    申请日2014-03-22

  • 分类号G06T5/00(20060101);

  • 代理机构51216 四川君士达律师事务所;

  • 代理人芶忠义

  • 地址 610065 四川省成都市一环路南一段24号

  • 入库时间 2023-12-17 00:01:10

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-08

    未缴年费专利权终止 IPC(主分类):G06T5/00 授权公告日:20170322 终止日期:20180322 申请日:20140322

    专利权的终止

  • 2017-03-22

    授权

    授权

  • 2014-08-13

    实质审查的生效 IPC(主分类):G06T5/00 申请日:20140322

    实质审查的生效

  • 2014-06-18

    公开

    公开

说明书

技术领域

本发明属于图像处理技术领域,涉及一种自适应的图像椒盐噪声 滤除方法。

背景技术

成像过程中短暂停留引入的椒盐噪声是图像中一种典型的噪声 源。该噪声不仅严重干扰人类对图像的认知,并且经常影响后续的图 像处理,导致不正确的结果。因此对椒盐噪声的滤除是图像处理中一 个重要的环节,往往决定着最终结果的成败。

最典型的椒盐噪声滤除方法是中值滤波。但该方法存在两个明显 的弊端,一是执行全局滤波,在滤噪的同时必然会破坏图像的真实信 息;二是采用中值输出,往往并不能很好地还原滤波像素的值。该方 法在噪声密度较小时效果很好,但随着噪声增多,其性能急剧下降。 为此,众多学者提出了各种改进算法,如加权中值滤波、自适应中值 滤波、开关中值滤波、递进开关中值滤波、基于相似度函数的滤波、 基于统计信息的滤波、大范围相关滤波,等等。这些算法主要从两个 方面进行改进,一是采取某种策略对噪声点进行检测,从而执行有针 对性的滤波,保护图像原有信息;二是在滤波输出上,选取能够尽可 能逼近滤波像素真实值的方法,如加权中值输出、加权均值输出、基 于相关性滤波、模糊滤波等。相对于传统中值滤波,这些算法都有明 显的性能改善。然而,由于事先并不知道图像中噪声的多少,因此在 执行滤波时,带有很大的盲目性,无论是对噪声点的检测还是滤波输 出方面,都无法根据实际情况自适应地选择最佳的方式,因而其滤噪 性能有限。特别是其中一些算法随着噪声密度增大,又退化成传统的 中值滤波,不能胜任高椒盐噪声的滤除。

发明内容

本发明的目的在提供一种自适应的图像椒盐噪声滤除方法,解决 了现有方法滤波性能有限,对于高椒盐噪声的滤除效果不是很好的问 题。

本发明采用的技术方案是按照以下步骤进行:

步骤1,对图像的噪声密度进行计算,根据图像噪声密度检测出 具有灰度极值的前K个像素;

步骤2,从前面K个像素点中选取出L个噪声点。我们采用检测 点做为中心点,其灰度值与其3×3邻域中其余八个点的灰度均值之差 的绝对值作为相关性ρ,按照ρ值从大到小排序,选取前L个像素点 作为最终确定的噪声点;

步骤3,对步骤2得到的L个噪声点按照它们的3×3邻域中包含 的噪声点数目从小到大进行排序,然后按照排序的顺序进行滤波,得 到滤波后的图像。

本发明的特点还在于步骤1中,对图像的噪声密度进行计算是采 用《基于小波域的图像椒盐噪声密度估计》(北京航空航天大学学报 2012年第38卷第2期)一文中提出的方法,对图像中噪声密度进行 计算,从而判断出图像中总的噪声点数量;所述K个像素的选取是我 们在图像全局范围内检测具有极大值与极小值的前L个像素。

步骤2中,选取L个像素点作为最终确定的噪声点的过程为采用 将这K个检测点做为中心点,每个检测点的灰度值与其3×3邻域中其 余八个点的灰度均值之差的绝对值来代表这种相关性ρ,公式:

ρ=abs(f(m,n)-18Σ(x,y)Ωf(x,y)),

式中abs(·)表示取绝对值,(m,n)为中心像素,f(m,n)代表中心 像素的灰度值,f(x,y)代表像素(x,y)的灰度值,而Ω代表像素(m,n)的 3×3邻域中其余八个像素组成的集合,ρ取值越小,则表示检测点与 其邻域的相关性越大,反之,则相关性越小,K个像素分别计算它们 与其邻域的相关性ρ,然后按计算出的ρ值将它们从大到小排序,选 取排名前L的像素点作为最终确定的噪声点。

步骤3中,对L个噪声点滤波的过程为:将L个噪声点,分别计 算它们的3×3邻域中包含的噪声点数目。然后,我们将这些噪声点, 按照它们的邻域中噪声点的多少从小到大排序,如果噪声点数目相 等,则排列顺序为行数小的排在前,行数大的排在后,处于同一行的, 则列数小的排在前,列数大的排在后,然后按从前至后的排列顺序依 次对这些噪声点进行滤波输出;

当噪声密度小于等于40%时,并且3×3邻域中除中心像素外噪声 点数量小于5时,仅利用剩余的非噪声点计算滤波输出,否则,扩展 至在这之前已经滤波的噪声点像素一起计算滤波输出;

当噪声密度小于等于80%且大于40%时,且3×3邻域中除中心像 素外噪声点数量小于7时,仅利用剩余的非噪声点计算滤波输出,否 则,扩展至在这之前已经滤波的噪声点像素一起计算滤波输出;

当噪声密度大于80%且小于100%时,且当3×3邻域中除中心像 素外噪声点数量小于8时,仅利用剩余的非噪声点计算滤波输出,否 则,扩展至在这之前已经滤波的噪声点像素一起计算滤波输出。

仅利用剩余的非噪声点计算滤波输出的步骤为:令g代表含噪图 像像素的灰度值,r代表滤波输出值,设待滤波的像素为(m,n),我们 取其3×3邻域,并在该邻域除中心像素以外的八个像素中选取不是噪 声点的像素,令Θ为选取出的非噪声像素集合,γ为该集合元素个数, 我们计算Θ中元素的灰度均值:

g(Θ)=1γΣ(x,y)Θg(x,y),

这里g(x,y)代表含噪图像中像素(x,y)的灰度值。于是,我们将Θ中像 素值与该均值之间的差距作为自变量定义相应的权值,最佳的权值定 义为:

w(x,y)=exp(-abs(g(x,y)-g(Θ))0.3),

式中abs(·)表示取绝对值,(x,y)为Θ中元素。于是,滤波像素(m,n)的 滤波输出值为:

r(m,n)=Σ(x,y)Θw(x,y)×g(x,y)/Σ(x,y)Θw(x,y).

扩展至在这之前已经滤波的噪声点像素一起计算滤波输出的步 骤为:对于待滤波像素(m,n),一旦确定需要利用其邻域中已滤波的 噪声点时,其滤波输出计算如下:

r(m,n)=(Σ(s,t)Θw(s,t)×g(s,t)+Σ(p,q)ψw(p,q)×r(p,q))/(Σ(s,t)Θw(s,t)+Σ(p,q)ψw(p,q))

w(·)表示权值,g(·)表示含噪图像中相应像素的灰度值,而r(·)表 示相应像素滤波后的值;式中Θ表示3×3邻域中非噪声点组成的集 合,而Ψ表示该邻域中已滤波噪声点组成的集合。对于已滤波噪声点, 利用的是它们已滤波以后的像素值。对于权值,非噪声点按下式计算:

w(s,t)=exp(-abs(g(s,t)-g(Θ,ψ))0.3),

已滤波的噪声点按下式计算:

w(p,q)=exp(-abs(r(p,q)-g(Θ,ψ))0.3),

式中均值的定义如下:

g(Θ,ψ)=1γ1+γ2(Σ(s,t)Θg(s,t)+Σ(p,q)ψr(p,q)),

式中γ1和γ2分别表示Θ和Ψ中元素个数。

本发明的有益效果是相比现有方法的滤波效果好。

附图说明

图1是Lena原图及原图的含噪图像;

图2是Lena原图的20%含噪图像的四种滤波图;

图3是Lena原图的50%含噪图像的四种滤波图;

图4是Lena原图的80%含噪图像的四种滤波图。

具体实施方式

下面结合附图和具体实施方式对本发明进行详细说明。

为进一步提高图像椒盐噪声滤除的性能,这里我们提出一种自适 应于噪声密度的滤除方法。仿真结果已经表明,我们提出的方法能够 很好地滤除图像中的椒盐噪声,性能明显优于现有的其它方法。下面, 我们首先阐述该方法的基本思想,然后在此基础上,进一步介绍该方 法的具体步骤。

对图像椒盐噪声的滤除,如果事先能够计算出图像中噪声的密 度,则可以充分利用这一先验知识,用于指导对噪声点的选择和滤波 输出,从而根据图像中噪声的多少自适应地执行相应的滤波操作,达 到提升性能的目的。在该方法中,我们正是利用已有的成果(该方法 的发明者在《基于小波域的图像椒盐噪声密度估计》(北京航空航天 大学学报2012年第38卷第2期)一文中提出的方法)首先对图像中 椒盐噪声进行计算,在此基础上执行滤波。本方法包括两个方面的主 要内容,一是对噪声点的选择,二是对噪声像素的滤波输出。

本发明方法按照以下步骤进行:

步骤1:在对噪声点的选取方面,我们采取的策略是,在计算出 图像中噪声密度(假定为d%)后,我们可以判断图像中总的噪声点 数量L=M×N×d%,(设定图像具有M行,N列),于是我们在图像 全局范围内检测具有灰度极值(极大值与极小值)的前L个像素。不 过,由于许多图像本身就包含一定数量的极值像素,其灰度值与噪声 点灰度值相当,因此通常会有超过L个像素,假定为K个满足条件, 为在满足条件的这些像素里找出真正的噪声点,我们进一步检测这些 像素与其邻域的相关性。一般说来,由于噪声是外来的无意义的内容, 因而噪声点与其邻域相关性很小;反之,对于图像本身的像素,即使 其具有极值,仍然与其周围像素具有较高的相关性,因此很大程度上 可以通过这种相关性将真正的噪声点检测出来。

步骤2:从前面K个像素点中选取出L个噪声点:我们采用将这K 个检测点分别做为中心点,每个检测点的灰度值与其3×3邻域中其余 八个点的灰度均值之差的绝对值来代表这种相关性,如式(1)所示:

ρ=abs(f(m,n)-18Σ(x,y)Ωf(x,y))---(1)

式中abs(·)表示取绝对值,(m,n)为中心像素,f(m,n)代表中心像素 的灰度值,类似地,f(x,y)代表像素(x,y)的灰度值。而Ω代表像素 (m,n)的3×3邻域中其余八个像素组成的集合。按照式(1)定义的相 关性,ρ取值越小,则表示检测点与其邻域的相关性越大,反之,则 相关性越小。我们通过式(1)对先前满足条件的K个像素分别计算 它们与其邻域的相关性,然后按计算出的ρ值将它们从大到小排序, 选取排名前L的像素点作为最终确定的噪声点,如果第L个像素点的 ρ值有重复的,则随机在重复的像素点中选取一个。我们的滤波将只 针对选取的这L个像素进行,从而很大程度上保护了图像本身的信息 不受破坏,由于这种方法能够有效检测出图像中的噪声点,所以又能 最大限度地滤除噪声。当然,考虑到对噪声密度的计算会有一定的误 差,为避免漏掉少量的噪声点,可以在初始计算出的密度值上再添加 一到两个百分点。

步骤3:在确定出图像中的噪声点后,就可以对这些像素执行滤 波了。首先,我们对前面选取出的L个噪声点,分别计算它们的3×3邻 域中包含的噪声点数目。然后,我们将这些噪声点,按照它们的邻域 中噪声点的多少从小到大排序,如果噪声点数目相等,则排列顺序为 行数小的排在前,行数大的排在后,处于同一行的,则列数小的排在 前,列数大的排在后。接下来,我们就按从前至后的排列顺序依次对 这些噪声点进行滤波输出。这意味着,在滤波输出时,我们首先是对 其邻域中所含噪声点最少的像素执行滤波,换句话说,也就是对可用 信息最多的像素最先执行滤波,这种方式能够最大化地利用图像的原 始信息。在滤波输出的计算上,我们采取的是一种3×3的加权均值滤 波方式。令g代表含噪图像像素的灰度值,r代表滤波输出值。设待 滤波的像素为(m,n),我们取其3×3邻域,并在该邻域除中心像素以外 的八个像素中选取不是噪声点的像素(即代表可用信息的像素),令Θ 为选取出的非噪声像素集合,γ为该集合元素个数。我们计算Θ中元 素的灰度均值:

g(Θ)=1γΣ(x,y)Θg(x,y)---(2)

这里g(x,y)代表含噪图像中像素(x,y)的灰度值。

根据图像的相关特性,该均值很大程度上体现了中心像素的真实值。 于是,我们将Θ中像素值与该均值之间的差距作为自变量定义相应的 权值,差距越小,权值越大,反之,则权值越小。以滤噪后图像的 SNR值作为准则,我们通过大量的实验数据,确定最佳的权值定义 为:

w(x,y)=exp(-abs(g(x,y)-g(Θ))0.3)---(3)

式中abs(·)表示取绝对值,(x,y)为Θ中元素。于是,滤波像素(m,n)的 输出值为:

r(m,n)=Σ(x,y)Θw(x,y)×g(x,y)/Σ(x,y)Θw(x,y)---(4)

当噪声密度较大时,对于有的滤波像素,其邻域中会聚集较多的 噪声点,如果依靠仅剩不多的非噪声点计算输出值,容易产生较大的 偏差,为利用尽可能多的信息,此时可以考虑将邻域中本来是噪声点 但已经过滤波的像素作为可用像素参与中心像素的输出计算,因为它 们虽然是噪声点,但经过滤波后,其像素值已接近真实图像的值,因 而在一定程度上是可用的。但这些像素毕竟不如非噪声点像素那样更 具可靠性,在引入的同时也会带来一定的误差。因此,这里必须确定 一个合适的阈值,用以判断当3×3邻域中噪声点超过多少时,才利用 那些在这之前经过了滤波的噪声像素。我们以最终滤噪效果为准则, 经过大量的实验和统计分析,发现这个最佳阈值的确定和噪声密度有 关。我们最终的阈值确定原则如表1所示。

表1阈值确定原则

如前所述,在滤波时,是先对邻域中噪声点数量较小的像素滤波。 因此,在对某中心像素滤波时,其邻域中的某些噪声点很可能已经执 行了滤波,执行了滤波的这些噪声点已经获得了滤波后的值,这些值 虽然不一定准确地体现原图像中相应像素的值,但有参考价值,因此 在中心像素邻域中噪声点数量超过阈值时,可以利用这些滤波后的噪 声点的值参加计算。

于是,对于待滤波像素(m,n),一旦确定需要利用其邻域中已滤 波的噪声点时,其滤波输出计算如下:

r(m,n)=(Σ(s,t)Θw(s,t)×g(s,t)+Σ(p,q)ψw(p,q)×r(p,q))/(Σ(s,t)Θw(s,t)+Σ(p,q)ψw(p,q))(5)

w(·)表示权值,g(·)表示含噪图像中相应像素的灰度值,而r(·)表示 相应像素滤波后的值。

式中Θ表示3×3邻域中非噪声点组成的集合,而Ψ表示该邻域中 已滤波噪声点组成的集合,注意对于已滤波噪声点,利用的是它们已 滤波以后的像素值。对于权值,非噪声点和已滤波的噪声点分别按式 (6)和式(7)计算:

上两式中均值的定义如下:

式中γ1和γ2分别表示Θ和Ψ中元素个数。

在执行滤波时,我们始终采用3×3小邻域,目的是避免大邻域带 来的误差,并有效防止图像模糊。由于我们首先对邻域中噪声点最少 的像素执行滤波,所以虽然是小邻域,但对于邻域中噪声点不多的中 心像素,能够保证利用足够多的信息计算输出。而对于邻域中噪声点 较多的像素,由于在滤波顺序上较后,也总是能够利用先前已经滤波 的噪声点,所以也能够保证间接地获取足够的可用信息。因此,我们 的处理方式能够保证所有噪声点都能得到有效的滤波。

下面列举具体实施例来进行说明:

实施例1:

为表明本方法的性能,我们在Matlab中进行仿真实验。我们选 取图像Lena作为实验图像,分别添加密度为10%、20%、30%、40%、 50%、60%、70%、80%的椒盐噪声,然后对各含噪图像分别采用标 准中值滤波、自适应中值滤波、基于相似度函数的滤波以及本方法进 行滤噪,滤噪后图像的信噪比SNR值列于表2。同时,我们列出在 噪声密度为20%、50%和80%情况下,采用各方法滤噪后的图像,如 图1至图4所示。图1所示,(a)为原图,(b)为20%含噪图像,(c) 50%含噪图像,(d)80%含噪图像。

图2为对20%含噪图像进行四种滤波后的图像,即(a)标准中值 滤波,(b)自适应中值滤波,(c)相似度函数滤波,(d)本发明方法。

图3为对50%含噪图像进行四种滤波后的图像,即(a)标准中值 滤波,(b)自适应中值滤波,(c)相似度函数滤波,(d)本发明方法。

图4为对80%含噪图像进行四种滤波后的图像,即(a)标准中值 滤波,(b)自适应中值滤波,(c)相似度函数滤波,(d)本发明方法。

实验数据如下表2所示为滤噪后图像的SNR值:

表2

噪声密度 10% 20% 30% 40% 50% 60% 70% 80% 标准中值滤波 24.96 21.77 17.06 13.04 9.42 6.62 4.28 2.42 自适应中值滤波 29.25 26.79 24.91 23.24 21.51 19.21 15.03 9.64 相似度函数滤波 29.33 26.66 25.30 23.91 22.69 21.49 19.71 17.96 本方法 34.38 30.35 28.06 26.54 24.89 23.57 21.98 20.16

客观数据和结果图像都表明,本方法的性能明显优于现有其它方 法。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号