CN109741286A - 中值滤波方法、装置、存储介质和电子设备 - Google Patents
中值滤波方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN109741286A CN109741286A CN201910123145.3A CN201910123145A CN109741286A CN 109741286 A CN109741286 A CN 109741286A CN 201910123145 A CN201910123145 A CN 201910123145A CN 109741286 A CN109741286 A CN 109741286A
- Authority
- CN
- China
- Prior art keywords
- sampled value
- value
- neighborhood window
- sampled
- median filtering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Image Processing (AREA)
Abstract
本发明实施例提供一种中值滤波方法、装置、计算机可读存储介质和电子设备。通过硬件电路实现的中值滤波方法包括:获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2‑1,N‑i];将经过第Z轮比较计算后获得的第N‑Z+1个采样值作为所述邻域窗口的中值滤波值。
Description
技术领域
本发明实施例涉及信号处理技术,尤其涉及一种中值滤波方法、装置、计算机可读存储介质和电子设备。
背景技术
中值滤波对脉冲噪声具有良好的滤除作用,特别是在滤除噪声的同时,能够保护信号的边缘,使之不被模糊。这些优良特性是线性滤波方法所不具有的。此外,中值滤波是在“最小绝对误差”准则下的最优滤波,其算法也比较简单。因此,中值滤波方法一经提出后,便在数字信号处理领得到重要的应用。
现有中值滤波的快速算法,一般采用下述三种方式:①直方图数据修正法;②样本值二进制表示逻辑判断法;③数字和模拟的选择网络法。
这几种实现方法对于硬件实现来说稍显复杂。如果利用软件实现中值滤波,需要对数据存储器进行读写操作,每一次读写需要耗费几十个处理器周期,严重拖慢了效率。
但是,由于软件算法的低效率,对于有时限要求的应用场景来说,使得需要使用高频率的处理器,从而提高了系统的整体功耗。
随着数据量的提高及应用需求的提高,软件算法实现会进一步的低效。使得其算法无法适应更多的应用场景。
发明内容
本发明实施例的目的在于,提供一种通过硬件电路实现的中值滤波方案,以通过硬件电路快速、有效地完成信号的中值滤波。
根据本发明实施例的第一方面,提供一种一种通过硬件电路实现的中值滤波方法,包括:获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
可选地,在获取当前用于中值滤波的邻域窗口的各个采样值之前,所述方法还包括:通过DMA电路模块将包括所述采样值的采样值集合读取至包括多个触发器的RAM,每个所述触发器用于锁存相应的采样值,从所述RAM划分出具有所述采样值的多个所述邻域窗口,以针对各个邻域窗口的所述采样值执行中值滤波。
可选地,所述采样值为图像的像素值。
可选地,所述邻域窗口为K×K的像素矩阵,N=K×K,所述RAM的每层用于存储所述图像的一行像素值。
根据本发明实施例的第二方面,提供一种通过硬件电路实现的中值滤波装置,包括:滤波窗口获取模块,用于获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;并行比较模块,用于按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];中值获取模块,用于将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
可选地,所述装置还包括:DMA电路模块;采样值读取模块,用于在所述滤波窗口获取模块获取当前用于中值滤波的邻域窗口的各个采样值之前,通过所述DMA电路模块将包括所述采样值的采样值集合读取至包括多个触发器的RAM,每个所述触发器用于锁存相应的采样值;
邻域窗口分隔模块,用于从所述RAM划分出具有所述采样值的多个所述邻域窗口,以针对各个邻域窗口的所述采样值执行中值滤波。
可选地,所述采样值为图像的像素值。
可选地,所述邻域窗口为K×K的像素矩阵,N=K×K,所述RAM的每层用于存储所述图像的一行像素值。
根据本发明实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述程序指令被处理器执行时实现任一前述的中值滤波方法的步骤。
根据本发明实施例的第四方面,提供一种电子设备,包括:处理器、存储器、通信元件和通信总线,所述处理器、所述存储器和所述通信元件通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行任一前述的中值滤波方法对应的操作。
根据本发明实施例提供的通过硬件电路实现的中值滤波方案,能够能够利用触发器、比较器等硬件电路模块,根据时钟周期并行地执行多轮比较计算,获得用于中值滤波的邻域窗口的采样值的中值滤波值,通过硬件电路实现快速、简单的中值滤波处理。其中,不存在冗余的计算周期,并且无需执行全排序,节省了计算资源,适于在小型微设备中实现中值滤波。
附图说明
图1是示出根据本发明一些实施例的中值滤波方法的流程图;
图2是示出根据本发明另一些实施例的中值滤波方法的流程图;
图3是示出用于执行根据本发明一些实施例的中值滤波方法的处理的示意图;
图4是示出根据本发明实施例的中值滤波方法划分图像像素的邻域窗口的示意图;
图5是示出根据本发明实施例的中值滤波装置的逻辑框图;
图6是示出根据本发明实施例的电子设备的结构示意图。
具体实施方式
下面结合附图详细描述本发明实施例的示例性实施例。
在本申请中,“多个”指两个或两个以上,“至少一个”指一个、两个或两个以上。对于本申请中提及的任一部件、数据或结构,在没有明确限定一个的情况下,可理解为一个或多个。
本发明实施例提出一种通过硬件电路实现的中值滤波方法,以对要执行中值滤波的数据/信号采样值快速地、有效地执行中值滤波。
图1是示出根据本发明一些实施例的中值滤波方法的流程图。可通过具有计算能力的硬件电路执行该中值滤波方法。
通常在对数据/信号采样值执行中值滤波时,为要执行中值滤波的数据/信号采样值选定邻域窗口,即包括目标采样值以及与目标采样值相邻的多个采样值,再对邻域窗口内的采样值进行中值计算,以确定该目标采样值的中值滤波值。这里,用于执行中值滤波的采样值(或测量值)可以是,但不限于,通信信号采样值、音频信号采样值、图像信号的采样值等。
参照图1,在步骤S110,获取当前用于中值滤波的邻域窗口的各个采样值,每个采样值锁存于相应的触发器中。在此,设邻域窗口的采样值的个数为N,N为正整数。
这里,将当前用于中值滤波的采样值锁存于相应的触发器中,以便于通过时钟触发其锁存的采样值的比较计算。
在步骤S120,并行地执行比较轮数Z的比较计算,比较轮数Z为将该邻域窗口的采样值的个数N除以二的向上取整值,以获得各轮比较计算中邻域窗口的采样最值。
这里,Z为邻域窗口的采样值的个数N的中间值。若邻域窗口的采样值的个数N为偶数,则Z=N/2;若邻域窗口的采样值的个数N为奇数,则Z为N/2取整加1。
例如,假设邻域窗口的采样值的个数N为16,则Z为8;假设邻域窗口的采样值的个数N为25,则Z为13。
具体地,按照以下处理并行地执行第i轮的比较计算:自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i]。
以下以由小到大地计算最值的情形为例对任一轮比较计算进行说明。可以看出,该比较计算的处理也适用于由大到小地计算最值的情形。
图3是示出用于执行根据本发明一些实施例的中值滤波方法的处理的示意图。如图3所示,在第一时钟周期T1,启动第一轮L1的比较计算;在第三个时钟周期T3,并行地启动第二轮L2的比较计算;在第五个时钟周期T5,并行地启动第三轮L3的比较计算…以此类推,在第N-1个时钟周期TN-1,并行地启动第Z轮LZ的比较计算。
在第一时钟周期T1,启动第一轮L1的比较计算。其中,通过比较器执行触发器中第1个采样值与第2个采样值的比较,其中,如果第1个采样值大于第2个采样值,则将第1个采样值与第2个采样值进行顺序交换,否则不对这两个采样值进行调整;在第一时钟周期T2,通过比较器执行触发器中第2个采样值与第3个采样值的比较,同理,如果第2个采样值大于第3个采样值,则将第2个采样值与第3个采样值进行顺序交换,否则不对这两个采样值进行调整。
在第三时钟周期T3,继续执行第一轮L1的比较计算,并且并行地启动第二轮L2的比较计算。其中,在第一轮L1的比较计算中,继续如前执行第3个采样值与第4个采样值的比较,并且进行必要的顺序交换;在第二轮L2的比较计算中,类似地通过比较器执行触发器中第1个采样值(此时为T1比较获得的较小采样值)与第2个采样值(此时为T2比较获得的较小采样值)的比较,并且进行必要的顺序交换。在第四时钟周期T4,在第一轮L1的比较计算中,继续如前执行第4个采样值与第5个采样值的比较;在第二轮L2的比较计算中,类似地执行第2个采样值(此时为T2比较获得的较小采样值)与第3个采样值(此时为T3比较获得的较小采样值)的比较,并且进行必要的顺序交换。
在第五时钟周期T5,继续执行第一轮L1和的比较计算和第二轮L2的比较计算,并且并行地启动第三轮L3的比较计算。其中,在第一轮L1的比较计算中,继续如前执行第5个采样值与第6个采样值的比较,并且进行必要的顺序交换;在第二轮L2的比较计算中,类似地通过比较器执行触发器中第3个采样值(此时为T3比较获得的较小采样值)与第4个采样值(此时为T4比较获得的较小采样值)的比较,并且进行必要的顺序交换;在第三轮L3的比较计算中,继续如前执行第1个采样值与第2个采样值的比较,并且进行必要的顺序交换。在第六时钟周期T4,在第一轮L1的比较计算中,继续如前执行第6个采样值与第7个采样值的比较;在第二轮L2的比较计算中,类似地执行第4个采样值(此时为T4比较获得的较小采样值)与第5个采样值(此时为T5比较获得的较小采样值)的比较。
以此类推,在第一轮L1结束时,通过N-1轮比较计算获得的第N个采样值为邻域窗口中N个采样值当中的最大值;在第二轮L2结束时,通过N-2轮比较计算获得的第N-1个采样值为剩余N-1个采样值当中的最大值;如此,在第Z轮LZ结束时,通过N-Z轮比较计算获得的第N-Z+1个采样值为邻域窗口中N-Z+1个采样值当中的最大值。由于中值计算需要得到的是中值,因此至此即可结束步骤S120的处理,而不再需要继续进行比较计算。
因此,在第一轮L1,需要执行N-1次比较计算;在第二轮L2,需要执行N-2次比较计算;在第三轮L3,需要执行N-3次比较计算;…;在第L轮,需要执行N-Z次比较计算。
由于用于执行中值滤波的N个采样值均锁存于触发器中,因此在每次执行采样值的顺序交换后为下一轮的比较保留了前次比较的结果,提供了操作便利。
在步骤S130,将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
如前所述,在第Z轮结束时,通过N-Z轮比较计算获得的第N-Z+1个采样值为邻域窗口中N-Z+1个采样值当中的最大值,该最大值即为邻域窗口的中值滤波值。
通过前述步骤S110~S130的处理,能够利用触发器、比较器等硬件电路模块,根据时钟周期并行地执行多轮比较计算,获得用于中值滤波的邻域窗口的采样值的中值滤波值,通过硬件电路实现快速、简单的中值滤波处理。其中,不存在冗余的计算周期,并且无需执行全排序,节省了计算资源,适于在小型微设备中实现中值滤波。
图2是示出根据本发明另一些实施例的中值滤波方法的流程图。
参照图2,在步骤S210,通过DMA(直接内存存取)电路模块将包括所述采样值的采样值集合读取至包括多个触发器的RAM(随机读取存储器),每个所述触发器用于锁存相应的采样值。
具体地,可通过DMA电路模块将采样值的数量为RAM大小的采样值批量读入RAM,而无需分更多次地读取数据,并且也无需占用处理器资源。此外,通过具有触发器的RAM来锁存这些用于中值滤波的采样值,触发器可以是例如D类触发器、RS触发器、JK触发器、T触发器等。
在步骤S220,从所述RAM划分出具有所述采样值的多个所述邻域窗口,以针对各个邻域窗口的所述采样值执行中值滤波。
具体地,根据邻域窗口的大小,将RAM内的采样值划分出多个用于中值滤波处理的邻域窗口,使得针对每个待滤波的目标采样值划分出相应的邻域窗口。
此后,通过前述步骤S110~130的处理,分别获得各个邻域窗口内的各个采样值的中值滤波值。
通过针对每个待滤波的目标采样值划分出相应的邻域窗口进行中值计算,可获得每个目标采样值的中值滤波值,这些中值滤波值构成该采样值集合的中值滤波值。
根据本发明的可选实施方式,在所述采样值为图像的像素值的情况下,RAM的每层可用于存储图像的一行像素值。此外,根据图像滤波的要求,将邻域窗口设置为K×K的像素矩阵,且N=K×K。由此,为每个像素矩阵中处于中心的像素计算得到其中值滤波值。
图4是示出根据本发明实施例的中值滤波方法划分图像像素的邻域窗口的示意图。如图4所示,在读入RAM的图像像素中,方框1和方框2分别示出划分出的3×3的像素矩阵以及5×5的像素矩阵,分别用于对处于像素矩阵中心的像素进行中值滤波。
图5是示出根据本发明实施例的中值滤波装置的逻辑框图。
参照图5,根据本发明实施例的中值滤波装置500包括滤波窗口获取模块510、并行比较模块520和中值获取模块530。
滤波窗口获取模块510用于获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中。
并行比较模块520用于按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i]。
中值获取模块530用于将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
可选地,所述采样值为图像的像素值。
可选地,中值滤波装置500还包括DMA电路模块540、采样值读取模块550和邻域窗口分隔模块560。
其中,采样值读取模块550用于在滤波窗口获取模块510获取当前用于中值滤波的邻域窗口的各个采样值之前,通过DMA电路模块540将包括所述采样值的采样值集合读取至包括多个触发器的RAM,每个所述触发器用于锁存相应的采样值。
邻域窗口分隔模块560用于从所述RAM划分出具有所述采样值的多个所述邻域窗口,以针对各个邻域窗口的所述采样值执行中值滤波。
可选地,邻域窗口为K×K的像素矩阵,N=K×K,所述RAM的每层用于存储所述图像的一行像素值。
根据本发明实施例的中值滤波装置500具有前述任一中值滤波方法实现的类似有益效果,在此不予赘述。
根据本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述程序指令被处理器执行时实现前述任一中值滤波方法的步骤。例如,获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据触发器的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
该计算机可读存储介质用于实现前述方法实施例中相应的中值滤波方法,并具有相应的方法实施例的有益效果,在此不再赘述。
图6是示出根据本发明实施例的电子设备的结构示意图。
本发明实施例还提供了一种电子设备,例如可以是移动终端、个人计算机(PC)、平板电脑、服务器等。下面参考图6,其示出了适于用来实现本发明实施例的终端设备或服务器的电子设备600的结构示意图。
如图6所示,电子设备600包括一个或多个处理器、通信元件等,所述一个或多个处理器例如:一个或多个中央处理单元(CPU)601,和/或一个或多个图像处理器(GPU)613等,处理器可以根据存储在只读存储器(ROM)602中的可执行指令或者从第一存储部分608加载到随机访问存储器(RAM)603中的可执行指令而执行各种适当的动作和处理。通信元件包括通信组件612和通信接口609。其中,通信组件612可包括但不限于网卡,所述网卡可包括但不限于IB(Infiniband)网卡,通信接口609包括诸如LAN卡、调制解调器等的网络接口卡的通信接口,通信接口609经由诸如因特网的网络执行通信处理。
处理器可与只读存储器602和/或随机访问存储器630中通信以执行可执行指令,通过总线604与通信组件612相连、并经通信组件612与其他目标设备通信,从而完成本发明实施例提供的任一项方法对应的操作,例如,获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
此外,在RAM 603中,还可存储有装置操作所需的各种程序和数据。CPU 601、ROM602以及RAM 603通过总线604彼此相连。在有RAM 603的情况下,ROM 602为可选模块。RAM603存储可执行指令,或在运行时向ROM 602中写入可执行指令,可执行指令使处理器601执行上述通信方法对应的操作。输入/输出(I/O)接口605也连接至总线604。通信组件612可以集成设置,也可以设置为具有多个子模块(例如多个IB网卡),并在总线链接上。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信接口609。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
需要说明的是,如图6所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图6的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如GPU和CPU可分离设置或者可将GPU集成在CPU上,通信组件612可分离设置,也可集成设置在CPU或GPU上,等等。这些可替换的实施方式均落入本发明的保护范围。
特别地,根据本发明实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本发明实施例提供的方法步骤对应的指令,例如,用于获取当前用于中值滤波的邻域窗口的各个采样值的指令,每个所述采样值锁存于相应的触发器中;用于按照以下处理并行地执行比较轮数Z的比较计算的指令,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];用于将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值的指令。在这样的实施例中,该计算机程序可以通过通信元件从网络上被下载和安装,和/或从第一可拆卸介质611被安装。在该计算机程序被第一中央处理单元(CPU)601执行时,执行本发明实施例的方法中限定的上述功能。
需要指出,根据实施的需要,可将本申请中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
可能以许多方式来实现本发明的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明实施例的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本发明实施例的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明实施例的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明实施例的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种通过硬件电路实现的中值滤波方法,包括:
获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;
按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:
在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];
将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
2.根据权利要求1所述的方法,其中,在获取当前用于中值滤波的邻域窗口的各个采样值之前,所述方法还包括:
通过DMA电路模块将包括所述采样值的采样值集合读取至包括多个触发器的RAM,每个所述触发器用于锁存相应的采样值,
从所述RAM划分出具有所述采样值的多个所述邻域窗口,以针对各个邻域窗口的所述采样值执行中值滤波。
3.根据权利要求2所述的方法,其中,所述采样值为图像的像素值。
4.根据权利要求3所述的方法,其中,所述邻域窗口为K×K的像素矩阵,N=K×K,所述RAM的每层用于存储所述图像的一行像素值。
5.一种通过硬件电路实现的中值滤波装置,包括:
滤波窗口获取模块,用于获取当前用于中值滤波的邻域窗口的各个采样值,每个所述采样值锁存于相应的触发器中;
并行比较模块,用于按照以下处理并行地执行比较轮数Z的比较计算,所述比较轮数Z为将所述邻域窗口的采样值的个数N除以二的向上取整值:
在第i轮,自第i个时钟周期起的每个时钟周期j,根据时钟的触发,并行地将第j个采样值与第j+1个采样值进行比较,并且如果第j个采样值大于或小于第j+1个采样值,则将第j个采样值与第j+1个采样值进行顺序交换,其中,i∈[1,Z],j∈[i×2-1,N-i];
中值获取模块,用于将经过第Z轮比较计算后获得的第N-Z+1个采样值作为所述邻域窗口的中值滤波值。
6.根据权利要求5所述的装置,其中,所述装置还包括:
DMA电路模块;
采样值读取模块,用于在所述滤波窗口获取模块获取当前用于中值滤波的邻域窗口的各个采样值之前,通过所述DMA电路模块将包括所述采样值的采样值集合读取至包括多个触发器的RAM,每个所述触发器用于锁存相应的采样值;
邻域窗口分隔模块,用于从所述RAM划分出具有所述采样值的多个所述邻域窗口,以针对各个邻域窗口的所述采样值执行中值滤波。
7.根据权利要求6所述的装置,其中,所述采样值为图像的像素值。
8.根据权利要求7所述的装置,其中,所述邻域窗口为K×K的像素矩阵,N=K×K,所述RAM的每层用于存储所述图像的一行像素值。
9.一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述程序指令被处理器执行时实现权利要求1~4中任一项所述中值滤波方法的步骤。
10.一种电子设备,包括:处理器、存储器、通信元件和通信总线,所述处理器、所述存储器和所述通信元件通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1~4中任一项所述中值滤波方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910123145.3A CN109741286B (zh) | 2019-02-19 | 2019-02-19 | 中值滤波方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910123145.3A CN109741286B (zh) | 2019-02-19 | 2019-02-19 | 中值滤波方法、装置、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109741286A true CN109741286A (zh) | 2019-05-10 |
CN109741286B CN109741286B (zh) | 2021-01-05 |
Family
ID=66367779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910123145.3A Active CN109741286B (zh) | 2019-02-19 | 2019-02-19 | 中值滤波方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109741286B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6199084B1 (en) * | 1998-09-09 | 2001-03-06 | Hitachi America, Ltd. | Methods and apparatus for implementing weighted median filters |
CN101543054A (zh) * | 2007-06-28 | 2009-09-23 | 松下电器产业株式会社 | 图像处理装置、图像处理方法及程序 |
CN101902428A (zh) * | 2009-05-26 | 2010-12-01 | 中兴通讯股份有限公司 | 一种定时同步方法和装置 |
CN103312939A (zh) * | 2012-03-14 | 2013-09-18 | 富士通株式会社 | 中值滤波装置和方法 |
US20140062614A1 (en) * | 2012-09-03 | 2014-03-06 | Samsung Electronics Co. Ltd. | Apparatus and method for selecting frequency band |
CN204272142U (zh) * | 2014-11-18 | 2015-04-15 | 成都九洲迪飞科技有限责任公司 | 一种多时钟域高速射频信号同步采样电路 |
CN104811161A (zh) * | 2015-04-27 | 2015-07-29 | 上海磐启微电子有限公司 | 用于集成电路设计的中值滤波实现方法 |
CN107808136A (zh) * | 2017-10-31 | 2018-03-16 | 广东欧珀移动通信有限公司 | 图像处理方法、装置、可读存储介质和计算机设备 |
CN108093182A (zh) * | 2018-01-26 | 2018-05-29 | 广东欧珀移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
CN207909193U (zh) * | 2017-09-15 | 2018-09-25 | 苏州大学 | 一种去除椒盐噪声的图像滤波电路 |
-
2019
- 2019-02-19 CN CN201910123145.3A patent/CN109741286B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6199084B1 (en) * | 1998-09-09 | 2001-03-06 | Hitachi America, Ltd. | Methods and apparatus for implementing weighted median filters |
CN101543054A (zh) * | 2007-06-28 | 2009-09-23 | 松下电器产业株式会社 | 图像处理装置、图像处理方法及程序 |
CN101902428A (zh) * | 2009-05-26 | 2010-12-01 | 中兴通讯股份有限公司 | 一种定时同步方法和装置 |
CN103312939A (zh) * | 2012-03-14 | 2013-09-18 | 富士通株式会社 | 中值滤波装置和方法 |
US20140062614A1 (en) * | 2012-09-03 | 2014-03-06 | Samsung Electronics Co. Ltd. | Apparatus and method for selecting frequency band |
CN204272142U (zh) * | 2014-11-18 | 2015-04-15 | 成都九洲迪飞科技有限责任公司 | 一种多时钟域高速射频信号同步采样电路 |
CN104811161A (zh) * | 2015-04-27 | 2015-07-29 | 上海磐启微电子有限公司 | 用于集成电路设计的中值滤波实现方法 |
CN207909193U (zh) * | 2017-09-15 | 2018-09-25 | 苏州大学 | 一种去除椒盐噪声的图像滤波电路 |
CN107808136A (zh) * | 2017-10-31 | 2018-03-16 | 广东欧珀移动通信有限公司 | 图像处理方法、装置、可读存储介质和计算机设备 |
CN108093182A (zh) * | 2018-01-26 | 2018-05-29 | 广东欧珀移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109741286B (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108596267B (zh) | 一种图像重建方法、终端设备及计算机可读存储介质 | |
CN111784570A (zh) | 一种视频图像超分辨率重建方法及设备 | |
CN110082823B (zh) | 一种地震数据插值方法及装置 | |
CN108600783A (zh) | 一种帧率调节方法、装置及终端设备 | |
CN110830808A (zh) | 一种视频帧重构方法、装置及终端设备 | |
CN111460232A (zh) | 功能模块的查找方法、装置、终端和计算机可读存储介质 | |
CN109981715A (zh) | 一种会话管理的方法及装置 | |
CN106202438A (zh) | 存储关联数据的方法和系统 | |
CN108632624A (zh) | 图像数据处理方法、装置、终端设备及可读存储介质 | |
CN108777810B (zh) | 视频数据存储方法、装置、设备及存储介质 | |
WO2021073638A1 (zh) | 运行神经网络模型的方法、装置和计算机设备 | |
CN113781319A (zh) | 一种hdr视频转换方法、装置、设备及计算机存储介质 | |
CN109741286A (zh) | 中值滤波方法、装置、存储介质和电子设备 | |
CN110677671A (zh) | 一种图像压缩方法、装置及终端设备 | |
CN111553803A (zh) | 理赔处理方法和装置 | |
CN111179369A (zh) | 一种基于安卓系统的gpu渲染方法及装置 | |
CN113139563B (zh) | 一种图像分类模型的优化方法及装置 | |
CN114782249A (zh) | 一种图像的超分辨率重建方法、装置、设备以及存储介质 | |
CN110378479B (zh) | 基于深度学习的图片输入方法、装置及终端设备 | |
CN112712610A (zh) | 车辆诊断日志处理方法、装置、终端设备及可读存储介质 | |
CN109344836A (zh) | 一种文字识别方法和设备 | |
CN109840244A (zh) | 一种图像类型转换方法和装置 | |
CN112508957B (zh) | 图像分割方法和装置、电子设备、机器可读存储介质 | |
CN110033413A (zh) | 客户端的图像处理方法、装置、电子设备、计算机可读介质 | |
CN111625524B (zh) | 数据处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |