首页> 中国专利> 一种中值滤波方法、中值滤波装置和计算机可读存储介质

一种中值滤波方法、中值滤波装置和计算机可读存储介质

摘要

本申请公开了一种中值滤波方法、中值滤波装置和计算机可读存储介质,该方法包括:获取待处理图像,利用滑窗法遍历待处理图像,以获取每个滑窗内的像素值;对每个滑窗内的像素值进行处理,得到滑窗的像素特征值;计算滑窗的像素特征值与滑窗内的像素值之间的距离值,利用距离值确定滑窗内每个像素值对应的权重值;对滑窗内每个像素值与相应的权重值进行计算,得到第一滤波像素值。通过上述方式,本申请能够降低运算复杂度,实现并行化处理。

著录项

  • 公开/公告号CN112233051A

    专利类型发明专利

  • 公开/公告日2021-01-15

    原文格式PDF

  • 申请/专利权人 浙江大华技术股份有限公司;

    申请/专利号CN202010942921.5

  • 发明设计人 王廷鸟;王松;刘晓沐;

    申请日2020-09-09

  • 分类号G06T5/20(20060101);G06T5/00(20060101);

  • 代理机构44280 深圳市威世博知识产权代理事务所(普通合伙);

  • 代理人黎坚怡

  • 地址 310051 浙江省杭州市滨江区滨安路1187号

  • 入库时间 2023-06-19 09:33:52

说明书

技术领域

本申请涉及图像处理技术领域,具体涉及一种中值滤波方法、中值滤波装置和计算机可读存储介质。

背景技术

中值滤波作为一种基础的算子,其高效的去除脉冲噪声以及优良的保边特性,使其在很多算法中均有所应用,例如:去除图像的椒盐噪声或伪彩色。然而作为一种基于排序统计的非线性滤波算子,相较于线性滤波算子其复杂度较高,绝大部分性能消耗于排序上,且滑动窗口(滑窗)越大,性能消耗就越大。目前虽然有对传统的中值滤波进行改进,但是存在逻辑判断较多、具有前后依赖性以及不适合并行处理等问题,比如,现有方案可采用更快的排序算法来提高性能,但排序算法固有的判断逻辑导致其难以在DSP(Digital SignalProcessing,数字信号处理)或FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)上做并行处理。

发明内容

本申请提供一种中值滤波方法、中值滤波装置和计算机可读存储介质,能够降低运算复杂度,实现并行化处理。

为解决上述技术问题,本申请采用的技术方案是提供一种中值滤波方法,该方法包括:获取待处理图像,利用滑窗法遍历待处理图像,以获取每个滑窗内的像素值;对每个滑窗内的像素值进行处理,得到滑窗的像素特征值;计算滑窗的像素特征值与滑窗内的像素值之间的距离值,利用距离值确定滑窗内每个像素值对应的权重值;对滑窗内每个像素值与相应的权重值进行计算,得到第一滤波像素值。

为解决上述技术问题,本申请采用的另一技术方案是提供一种中值滤波装置,该中值滤波装置包括互相连接的存储器和处理器,其中,存储器用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的中值滤波方法。

为解决上述技术问题,本申请采用的另一技术方案是提供一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的中值滤波方法。

通过上述方案,本申请的有益效果是:获取包含噪声的待处理图像,利用滑窗法对该待处理图像进行处理,获取每个滑窗内的所有像素值;然后利用所有像素值计算像素特征值,通过计算该像素特征值与滑窗内的每个像素值的距离值,来设置每个像素值对应的权重值,再将权重值与相应的像素值进行加权求和处理,便可得到滤波结果;本申请所采用的方案无需对滑窗内的像素值进行排序,逻辑判断较少,可降低运算复杂度,且不需要建立直方图,因而无需依赖于信号位宽的直方图,使其适合于指令并行化或硬件实现,且滤波效果接近于现有中值滤波算法。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:

图1是本申请提供的中值滤波方法一实施例的流程示意图;

图2(a)是图1所示的实施例中滑窗内像素值的示意图;

图2(b)是图2(a)对应的权重值的示意图;

图3是本申请提供的中值滤波方法另一实施例的流程示意图;

图4是图3所示的实施例中阶跃信号的示意图;

图5是本申请提供的中值滤波方法又一实施例的流程示意图;

图6是本申请提供的中值滤波方法再一实施例的流程示意图;

图7(a)为斜坡信号与加噪信号的示意图;

图7(b)为利用现有均值滤波方法对图7(a)中加噪信号进行滤波得到的滤波示意图;

图7(c)为利用本申请的中值滤波方法对图7(a)中加噪信号进行滤波得到的滤波示意图;

图7(d)为利用现有中值滤波方法对图7(a)中加噪信号进行滤波得到的滤波示意图;

图8(a)为阶跃信号与加噪信号的示意图;

图8(b)为利用现有均值滤波方法对图8(a)中加噪信号进行滤波得到的滤波示意图;

图8(c)为利用本申请的中值滤波方法对图8(a)中加噪信号进行滤波得到的滤波示意图;

图8(d)为利用现有中值滤波方法对图8(a)中加噪信号进行滤波得到的滤波示意图;

图9(a)为加入椒盐噪声的加噪图像的示意图;

图9(b)为利用现有3×3中值滤波模板对9(a)中加噪图像进行滤波得到的滤波结果示意图;

图9(c)为利用本申请的3×3中值滤波模板对9(a)中的加噪图像进行滤波得到的滤波结果示意图;

图9(d)为利用现有11×11中值滤波模板对9(a)中的加噪图像进行滤波得到的滤波结果示意图;

图9(e)为利用本申请的11×11中值滤波模板对9(a)中的加噪图像进行滤波得到的滤波结果示意图;

图10是本申请提供的中值滤波装置一实施例的结构示意图;

图11是本申请提供的计算机可读存储介质一实施例的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

请参阅图1,图1是本申请提供的中值滤波方法一实施例的流程示意图,该方法包括:

步骤11:获取待处理图像,利用滑窗法遍历待处理图像,以获取每个滑窗内的像素值。

可接收其他设备发送的待处理图像,或者从存储设备中读取一张图像作为待处理图像,该待处理图像为含有噪声的图像,比如,高斯噪声或椒盐噪声;然后对获取到的待处理图像利用滑窗法进行处理,遍历每个像素值,得到包含该像素值的当前滑窗。

步骤12:对每个滑窗内的像素值进行处理,得到滑窗的像素特征值。

在获取到当前滑窗内的像素值后,可对像素值进行处理,比如,求取滑窗内的所有像素值的平均值、均方差或标准差等,将处理后得到的结果作为当前滑窗的像素特征值,即该像素特征值包括像素均值。

步骤13:计算滑窗的像素特征值与滑窗内的像素值之间的距离值,利用距离值确定滑窗内每个像素值对应的权重值。

在计算出当前滑窗的像素特征值后,为了计算当前滑窗内每个像素值对应的权重值,可计算当前滑窗内每个像素值与像素特征值之间的距离值,即两者之间的差异,然后再利用该距离值去计算权重值,一般来说,距离值越大,权重值越小。

步骤14:对滑窗内每个像素值与相应的权重值进行计算,得到第一滤波像素值。

在计算出滑窗内每个像素值对应的权重值后,可将滑窗内所有像素值与相应的权重值进行加权求和,生成第一滤波像素值,将该第一滤波像素值作为滤波结果,或者可基于该第一滤波像素值进行计算,以得到滤波结果;例如,如图2所示,图2(a)为3×3的滑窗区域,即滤波模板为3×3,其对应的像素值分别为I1-I9,计算出来的权重值如图2(b)所示,记作h1-h9,则

本实施例的方案可应用在信号处理技术领域,比如,应用在信号的滤波、降噪或平滑中,可计算滑窗内所有像素值对应的像素特征值,通过计算其与滑窗内每个像素值的距离值,来设置每个像素值对应的权重值,再将权重值与相应的像素值进行加权求和,便可得到滤波结果;本实施例所采用的方案无需对滑窗内的像素值进行排序,逻辑判断较少,可降低运算复杂度,且不需要建立直方图,因而无需依赖于信号位宽的直方图,使其适合于指令并行化或硬件实现,且效果接近于现有的中值滤波算法。

请参阅图3,图3是本申请提供的中值滤波方法另一实施例的流程示意图,该方法包括:

步骤31:获取待处理图像,利用滑窗法遍历待处理图像,以获取每个滑窗内的像素值。

步骤31与上述实施例中步骤11相同,在此不再赘述。

步骤32:对滑窗内的所有像素值求平均,得到像素均值。

对于每个滑窗来说,可计算滑窗内所有像素值的平均值,得到像素均值,然后利用该像素均值来计算出每个像素值对应的权重值。

步骤33:计算滑窗内的像素值与像素均值之间的像素绝对差值,将像素绝对差值作为距离值。

将利用滑窗内所有像素值计算出来的像素均值记作mv,然后可采用如下公式计算每个像素值与像素均值之间的距离值:

dis(i)=|(v(i)-mv)| (1)

其中,dis(i)为滑窗内第i个像素值与像素均值之间的距离值,v(i)为第i个像素值。

步骤34:利用滑窗内每个像素值对应的距离值计算权重值,并对滑窗内所有像素值对应的权重值进行归一化处理。

可采用如下公式计算每个像素值对应的权重值:

weight(i)=max{eps,thr-dis(i)} (2)

其中,weight(i)为第i个像素值对应的权重值,esp是一个很小的值,为了防止出现权重值都为0的情况,thr可以是一个固定参数,也可以为某些统计量,比如:

在计算出权重值后,可采用如下公式进行归一化:

其中,weight'(i)为第i个像素值对应的归一化后的权重值。

可以理解地,在其他实施例中,还可采用其他方式来计算出权重值,比如采用如下公式:

其中,σ为固定参数。

步骤35:将滑窗内的像素值与相应的权重值进行加权求和,得到求和结果,将求和结果作为第一滤波像素值。

在计算出当前滑窗内每个像素值对应的权重值后,可利用如下公式计算出第一滤波像素值:

其中,v

本实施例采用的中值滤波方法基于聚类的思想,在邻域范围内正常信号占绝大多数,因此对邻域信号求均值后得到的结果将更加靠近正常信号;此时如果以每个信号到该均值的距离(数值上的差值)的衰减函数为权重值,再进行加权平均,所得到的结果将更加接近正常信号,而远离脉冲噪声。例如某信号的邻域信号值为[1,1,4],其均值为2,每个信号值到均值的距离值dis(i)分别为[1,1,2],1≤i≤3,以2-dis(i)为权重值,三者的权重值分别为[1,1,0],加权平均后,可得到滤波结果为:(1*1+1*1+4*0)/(1+1+0)=1,剔除了脉冲噪声。

对于比较小的邻域,即滑窗的尺寸比较小,本实施例所采用的方法工作得比较好,当滑窗变大时,可能出现模糊边缘的情况,例如,如图4所示,对于一个阶跃信号,实线L1为原始信号,虚线L2为使用一个聚类得到的滤波结果;由于假设邻域内只有一个聚类,在阶跃信号跳变的数值附近,均值靠近中间,两边和均值的距离相差不大,导致权重值也相差不大,滤波效果不佳;因而可进行改进,设定邻域内有两个聚类,由均值分割开,对于每一个聚类分别采用上述实施例的方案,最后将两个结果由其聚类内样本数量的函数加权平均,得到最终的滤波结果,具体方案将在下文描述。

请参阅图5,图5是本申请提供的中值滤波方法又一实施例的流程示意图,该方法包括:

步骤51:获取待处理图像,利用滑窗法遍历待处理图像,以获取每个滑窗内的像素值。

步骤52:对滑窗内的所有像素值求平均,得到像素均值。

步骤51-步骤52与上述实施例中步骤31-步骤32相同,在此不再赘述。

步骤53:利用像素均值将滑窗内的所有像素分成两类。

可在计算出像素均值后,比较滑窗内每个像素值与像素均值的大小关系,将滑窗内像素值大于或等于像素均值的像素记作第一类像素,将滑窗内像素值小于或等于像素均值的像素记作第二类像素。

步骤54:获取每类像素对应的像素均值,利用每类像素对应的像素均值与每类像素的像素值,确定每类像素对应的权重值。

对于第一类像素来说,将所有第一类像素的像素值加和求平均,得到第一像素均值,然后计算每个第一类像素的像素值与第一像素均值之间的距离值,可采用与上述实施例相同的方式将距离值转换为权重值,得到第一权重值。

对于第二类像素来说,将所有第二类像素的像素值加和求平均,得到第二像素均值,然后计算每个第二类像素的像素值与第二像素均值之间的距离值,可采用与上述实施例相同的方式将距离值转换为权重值,得到第二权重值。

步骤55:将每类像素的像素值与对应的权重值进行加权求和,得到每类像素对应的第二滤波像素值。

将第一类像素的像素值与相应的第一权重值进行加权平均,得到第一类像素对应的第二滤波像素值;将第二类像素的像素值与相应的第二权重值进行加权平均,得到第二类像素对应的第二滤波像素值。

步骤56:对两类像素对应的第二滤波像素值进行加权求和,得到第三滤波像素值,将第三滤波像素值作为滤波结果。

可统计第一类像素的数量与第二类像素的数量,再利用第一类像素的数量、第二类像素的数量以及第一平滑程度控制参数,计算出第一类像素对应的权重值与第二类像素对应的权重值;然后采用如下公式计算第三滤波像素值:

v

其中,v

在一具体的实施例中,函数f可为sigmoid函数,即:

当T

为了在阶跃信号附近更好的保边,在平滑区域更好的降噪,可以将图3所示的实施例与图5所示的实施例结合起来,具体方案将在下文描述。

请参阅图6,图6是本申请提供的中值滤波方法再一实施例的流程示意图,该方法包括:

步骤601:获取待处理图像,利用滑窗法遍历待处理图像,以获取每个滑窗内的像素值。

步骤602:对滑窗内的所有像素值求平均,得到像素均值。

步骤603:计算滑窗内的像素值与像素均值之间的像素绝对差值,将像素绝对差值作为距离值。

步骤604:利用滑窗内每个像素值对应的距离值计算权重值,并对滑窗内所有像素值对应的权重值进行归一化处理。

步骤605:将滑窗内的像素值与相应的权重值进行加权求和,得到求和结果,将求和结果作为第一滤波像素值。

步骤601-步骤605与上述实施例中步骤31-35相同,在此不再赘述。

步骤606:利用像素均值将滑窗内的所有像素分成两类。

步骤607:获取每类像素对应的像素均值,利用每类像素对应的像素均值与每类像素的像素值,确定每类像素对应的权重值。

步骤608:将每类像素的像素值与对应的权重值进行加权求和,得到每类像素对应的第二滤波像素值。

步骤609:对两类像素对应的第二滤波像素值进行加权求和,得到第三滤波像素值,将第三滤波像素值作为滤波结果。

步骤606-步骤609与上述实施例中步骤53-步骤56相同,在此不再赘述。

步骤610:对第一滤波像素值与第三滤波像素值进行加权求和,得到第四滤波像素值,将第四滤波像素值作为滤波结果。

可先计算滑窗内所有像素对应的标准差、第一类像素对应的标准差以及第二类像素对应的标准差;然后利用滑窗内所有像素对应的标准差、第一类像素对应的标准差、第二类像素对应的标准差以及第二平滑程度控制参数,计算出第一滤波像素值对应的权重值与第三滤波像素值对应的权重值。

进一步地,第一滤波像素值对应的权重值与第三滤波像素值对应的权重值之和为1,记第一滤波像素值对应的权重值为β;通过对第一滤波像素值与第三滤波像素值进行加权求和,可得到最终的滤波结果,即采用如下公式计算第四滤波像素值:

v

β需要能较好的区分聚类个数,以阶跃信号为例,在跳变附近,总的均方差、标准差较大,而两个聚类各自的均方差、标准差之和较小;而对于斜坡信号,总的标准差与两个聚类的标准差之和差不多,因此以标准差为输入,即β的计算公式可如下所示:

β=g(std(vec),std(vec

其中,函数g是两种情况的平滑选择函数,功能类似于上述实施例中的函数f,std(vec)为滑窗内所有像素值的标准差,std(vec

在一具体的实施例中,函数g可为sigmoid函数,即:

可以理解地,除了标准差外,也可以考虑使用均方差或者距离的均值。

采用本实施例的方案对斜坡信号进行处理,可得到图7所示的结果,图7(a)为原信号与对原信号加入噪声后生成的加噪信号的示意图,图7(b)为利用现有均值滤波方法对加噪信号进行滤波得到的滤波结果,图7(c)为利用本申请的中值滤波方法对加噪信号进行滤波得到的滤波结果,图7(d)为现有中值滤波方法对加噪信号进行滤波得到的滤波结果。采用本实施例的方案对阶跃信号进行处理,可得到图8所示的结果,图8(a)为原信号与加噪信号的示意图,图8(b)为利用现有均值滤波方法对加噪信号进行滤波得到的滤波结果,图8(c)为利用本申请的中值滤波方法对加噪信号进行滤波得到的滤波结果,图8(d)为现有中值滤波方法对加噪信号进行滤波得到的滤波结果。采用本实施例的方案对加入椒盐噪声得到的噪声图像进行处理,可得到图9所示的结果,图9(a)为加噪图像的示意图,图9(b)为利用现有中值滤波方法对加噪图像进行滤波得到的滤波结果,滑窗的尺寸为3×3,即中值滤波模板为3×3;图9(c)为利用本实例的中值滤波方法对加噪图像进行滤波得到的滤波结果,滑窗的尺寸为3×3;图9(d)为利用现有中值滤波方法对加噪图像进行滤波得到的滤波结果,滑窗的尺寸为11×11,即中值滤波模板为11×11;图9(e)为利用本实例的中值滤波方法对加噪图像进行滤波,得到的滤波结果,滑窗的尺寸为11×11。由图7-图9的结果可以看出,本实施例所采用的滤波方案与现有中值滤波方法的滤波效果大致相同。

本申请基于聚类思想,无需进行排序,性能更好;且无需利用直方图,对信号的位宽依赖度小,没有前后依赖,每个信号的处理一致,便于进行并行化处理,硬件化实现较为容易。

请参阅图10,图10是本申请提供的中值滤波装置一实施例的结构示意图,中值滤波装置100包括互相连接的存储器101和处理器102,存储器101用于存储计算机程序,计算机程序在被处理器102执行时,用于实现上述实施例中的中值滤波方法。

请参阅图11,图11是本申请提供的计算机可读存储介质一实施例的结构示意图,计算机可读存储介质110用于存储计算机程序111,计算机程序111在被处理器执行时,用于实现上述实施例中的中值滤波方法。

计算机可读存储介质110可以是服务端、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号