硬件实现导向滤波的优化系统和方法与流程

文档序号:11775768阅读:738来源:国知局
硬件实现导向滤波的优化系统和方法与流程

本发明涉及图像处理技术领域,特别涉及硬件语言描述导向滤波算法及其优化,具体是一种硬件实现导向滤波的优化系统和方法,可应用于数字图像在采集与显示过程的降噪处理,高动态图像压缩,以及图像增强。



背景技术:

hekaiming在ieeetransactionsonpatternanalysis&machineintelligence2013,35(6):1397-409.上发表了“guidedimagefiltering”的论文,文中提出了一种新的滤波算法,称为导向滤波,导向滤波的输出图与引导图之间具有局部线性传输特性,因此具有较好的边缘保持效果。导向滤波与均值滤波,高斯低通滤波,双边滤波等相比,该算法具有较好的滤波效果以及较高的效率,从而广泛应用于图像去噪处理,图像细节增强,平滑处理,高动态图像压缩处理,抠图处理,图像羽化以及图像去雾处理。

随着集成电路技术的发展,人们总希望将一些算法通过硬件电路的形式移植到芯片中,从而降低处理器的负荷。导向滤波算法很容易在软件中高效率地实现,但是要以硬件电路的形式集成在图像处理相关的芯片中,该算法依然面临着面积,功耗以及实时要求的考验。2013年,金炎胜等人发明了“一种高速导向滤波器在fpga平台的实现装置”,该发明对导向滤波算法的硬件实现做了初步验证,但该发明使用了5个除法器,由于除法器采用分频方式实现,完成一次除法操作需要2+ndiv个系统时钟周期,其中ndiv为除法器的延迟时钟周期个数,因此存在延时大,实时性差问题,此外除法器的实现也需要耗费大量的面积。2014年,朴燕等人发明了“一种基于fpga的引导滤波器及其实现方法”,该发明通过寻址的方式改进了二进制除法运算,便于硬件实现,提高了系统运行时间,但其精度低和面积大等问题依然存在。

目前,对于导向滤波的硬件实现而言,芯片面积大、功耗大、延时大、实时性差等问题依然存在,并具有很大的优化价值。



技术实现要素:

为解决上述问题,本发明提供一种硬件实现导向滤波的优化系统和方法,使实现导向滤波功能的硬件电路具有面积小,功耗低,实时性高等优点。

本发明是一种硬件实现导向滤波的优化系统,其特征在于,可采用硬件描述语言veriloghdl,vhdl进行描述并实现导向滤波功能,根据数据流动顺序依次包括并连接有均值滤波模块,数据同步器,方差计算模块,一次项系数计算模块,常数项计算模块,一次项系数均值滤波模块,常数项均值滤波模块,输出级计算模块。

本发明还是一种硬件实现导向滤波的优化方法,在权利要求1-4所述的一种硬件实现导向滤波的优化系统上实现,其特征在于,导向滤波中的均值滤波采用偶数滤波窗口,且满足滤波窗口w=n*n,n=2n,其中n={1,2,3},硬件实现导向滤波包括有如下步骤:

(1)产生输入图像的局部图像:本发明采取流水线设计,输入图以串行方式输入局部图像缓存单元ibuf,在系统时钟和数据有效使能信号的控制下,将产生大小为n*n局部图像;

(2)同步输入图像数据:将局部图像缓存单元最后一级fifo的输出端数据写入数据同步器fifo1;

(3)运用右移位运算的除法特性完成均值滤波并计算方差σ2:将输入图像作为导向滤波中的导向图,运用右移位运算的除法特性完成均值滤波中的除法运算,并计算方差,方差计算的具体步骤如下:

3.1计算局部图像均值的平方对局部图像中所有像素求和,并右移2n位得到平均值然后将平均值写入数据同步器fifo2,并对作平方运算得到局部图像均值的平方

3.2计算局部图像平方的平均值对局部图像各像素点进行平方运算,得到一个大小为n*n的矩阵i2,对该矩阵中所有元素求和,并右移2n位得到局部图像平方的平均值

3.3根据局部图像均值的平方以及局部图像平方的平均值计算方差σ2

(4)根据方差σ2和一个确定的平滑系数ε求解导向滤波中一次项系数a及常数项b:首先采用分段一次函数拟合方式逼近a系数曲线,然后基于多路选择器和移位加法器完成分段一次函数的硬件实现,最终通过输入方差即可得到导向滤波中的一次项系数a,最后通过数据同步器fifo2输出的局部图像的平均值与一次项系数a算出常数项b;

(5)对一次项系数a及常数项b均值滤波:将a、b数据输入到系数缓存器abuf、bbuf,缓存器结构与ibuf相同,在系统时钟和数据有效使能信号的控制下,将产生两个大小为n*n系数矩阵,分别存放于abuf和bbuf的滤波窗口中,分别对滤波窗口中所有元素求和,运用右移位运算的除法特性,右移2n位算出对应的出平均值其中n=2n,n={1,2,3};

(6)计算输出结果q完成导向滤波:根据数据同步器fifo1输出的数据与一次项系数a及常数项b的局部平均值得到导向滤波输出结果q。

本发明采取流水线设计,添加系统时钟和数据有效使能信号进行控制,上述步骤完成一个像素的计算,在第一个输出结果之后,每一个数据有效时钟周期输出一个计算结果,在系统时钟和数据有效使能信号进行控制下,最终完成整张图像的导向滤波。

使用本发明的技术方案可以有效地降低实现硬件导向滤波芯片面积,提高实时性,减小功耗。

与现有技术相比,本发明的优点:

(1)实现导向滤波算法需使用均值滤波共4次,现有的硬件实现方法采用奇数滤波窗口,窗口大小为(2n+1)2,其中n=1,2,3;因此在计算窗口内像素点的均值时,需要分别除以(2n+1)2,一般实现采用查表法或定点除法来实现。本发明提出偶数滤波窗口设计,从硬件描述语言层次出发,巧妙地运用右移位运算的除法特性,合理地选择滤波窗口w=22n,其中n=1,2,3。使得均值滤波中的除法可以由右移2n位来实现,避免使用除法器,降低算法复杂度,因此降低了实现导向滤波算法硬件电路的面积和功耗,并提了系统高实时性。

(2)现有方法计算一次项系数a同样需要除法器,本发明采用分段一次函数拟合方式逼近导向滤波中求解一次项系数a的曲线,然后基于多路选择器和移位加法器完成分段一次函数硬件实现,从而求解一次项系数a。此方法再次避免使用除法器,提高了系统实时性。

(3)本发明在均值滤波求和过程中,当n=1时采用直接求和方式;当n>1时,采用累加输入总和,减去输出总和的方式求取滤波窗口中像素和,此方法减少了加法器的使用个数,可进一步降低实现硬件导向滤波芯片面积和功耗。

附图说明

图1是本发明硬件实现导向滤波的优化系统结构框图;

图2是本发明局部图像缓存单元的结构示意图;

图3是本发明均值滤波中求和单元结构示意图;

图4是本发明本发明硬件实现与软件实现的滤波效果对比图。

具体实施方式

以下结合附图和具体实施例,对本发明作详细的描述。

目前,对于导向滤波的硬件实现而言,芯片面积大、功耗大、延时大、实时性差等问题依然存在,针对此现状本发明提出了一种新的实现方案。

实施例1:

本发明首先是一种硬件实现导向滤波的优化系统,可采用硬件描述语言veriloghdl,vhdl进行描述并实现导向滤波功能,参见图1,根据数据流动顺序依次包括并连接有均值滤波模块,数据同步器fifo1,数据同步器fifo2,方差计算模块,一次项系数计算模块,常数项计算模块,一次项系数均值滤波模块,常数项均值滤波模块,输出级计算模块,各个模块在时钟信号和数据有效信号的控制下完成相应功能。

本发明中各模块的功能和连接方式分述如下:

均值滤波模块:均值滤波模块主要完成两个任务,1、完成输入图像的均值滤波,2、完成输入图平方图的均值滤波。输入与接外部图像数据,输出分别与方差计算模块和数据同步器fifo1,fifo2相连;

数据同步器fifo1:完成数据同步任务,输入与均值滤波模块相连,输出与输出计算模块相连;

数据同步器fifo2:完成数据同步任务,输入与均值滤波模块相连,输出与常数项计算模块相连;

方差计算模块:完成方差计算,输入与均值滤波模块相连,输出与一次项系数计算模块相连;

一次项系数计算模块:完成一次项系数计算,输入与方差计算模块的输出相连;输出分别与常数项计算模块和一次项系数均值滤波模块相连;

常数项计算模块:完成常数项计算,输入分别与一次项系数计算模块和数据同步器fifo2相连,输出与常数项均值滤波模块相连;

一次项系数均值滤波模块:对一次项系数进行均值滤波处理,输入与一次项系数计算模块相连,输出与输出级计算模块相连;

常数项均值滤波模块:对常数项进行均值滤波处理,输入与常数项计算模块相连,输出与输出级计算模块相连;

输出级计算模块:计算输出结果,输入分别与数据同步器fifo1、一次项系数均值滤波模块、常数项均值滤波模块相连,输出为导向滤波计算结果。

任何一种算法以电路的形式集成于系统中有利于降低处理器负荷以及提高系统实时性,本发明提出偶数滤波窗口设计,并结合右移位运算的除法特,选择滤波窗口大小w=22n,其中n={1,2,3}。使得均值滤波中的除法运算可有右移2n位运算来完成,此方法运用于上述均值滤波模块,一次项系数均值滤波模块,常数项均值滤波模块中实现除法运算。

实施例2:

硬件实现导向滤波的优化系统的总体构成同实施例1,均值滤波模块依据数据流方向包括:局部图像缓存单元,并行的两个计算单元,两个并行的计算单元分别为第一计算单元和第二计算单元。

局部图像缓存单元与计算单元构成均值滤波器,导向滤波算法一般输入图像有两幅,一幅是导向图、另一幅是需要做滤波处理图像,本发明运用于数字图像在采集与显示过程的降噪处理,高动态图像压缩以及图像增强,所以选择需要做滤波处理图像作为导向图,因此本发明采用两个计算单元共享一个局部图像缓存单元方式,从而减小了硬件资源的使用,使得最终实现该算法的电路面积减小,有利于以硬件电路的形式集成于图像采集与显示的芯片上,在图像的采集和显示过程中进行相应的处理。

实施例3:

硬件实现导向滤波的优化系统的总体构成同实施例1,两个并行的计算单元中,第一计算单元依据数据流方向分别包括:求和单元,除法运算单元,平方计算单元;第二个计算单元依据数据流方向分别包括:平方计算单元,求和单元,除法运算单元。

本发明所采用的求和单元可应用于任意矩阵求和,参见图3,求和过程为:1.累加输入总和accin,2.计算输出总和sumout,3.任意矩阵和为sum=accin-sumout,此方法应用于n>1的情况下。

本发明提出偶数滤波窗口设计,且窗口大小满足w=22n,使得均值滤波中的除法器,即本例中除法计算单元,可以由右移位实现,可直接舍弃低2n位即可得到平均值,为了提高计算精度也可以将低2n位作为小数位,其中n={1,2,3}。

实施例4:

硬件实现导向滤波的优化系统的总体构成同实施例1,局部图像缓存单元,参见图2,由n个移位寄存器和n-1个先入先出存储器fifo构成,其连接方式为:n-1个fifo级联;其中第一个移位寄存器和第一级fifo的输入端均与输入图像数据相连,第2、3、…、n个移位寄存器的输入分别与第1、2、…、n-1级fifo的输出端相连,其中移位寄存器的长度等于n,移位寄存器的数据位宽等于输入图像数据宽度;fifo的长度等于输入图像的宽度,fifo的数据位宽等于输入图像的数据位宽。

实施例5:

本发明还是一种硬件实现导向滤波的优化方法,在上述的一种硬件实现导向滤波的优化系统上实现,硬件实现导向滤波的优化系统的总体构成同实施例1-4,参见图1,硬件实现导向滤波包括有如下步骤:

(1)产生输入图像的局部图像:本发明采取流水线设计,以串行方式将被处理图像输入局部图像缓存单元ibuf,在系统时钟和数据有效使能信号的控制下,将产生大小为n*n局部图像,ibuf的结构示意图参见图2。

(2)同步输入图像数据:将局部图像缓存单元最后一级fifo的输出端数据写入数据同步器fifo1,将第一级输入数据与fifo各级输出数据构成n个数据,将这n个数据分别输入到长度为n的串行移位寄存器的输入端,经过串行移位寄存器产生n*n个像素的局部图像。

(3)运用右移位运算的除法特性完成均值滤波并计算方差σ2:将输入图像作为导向滤波中的导向图,从硬件描述语言层次出发,运用右移位运算的除法特性,选择滤波窗口为大小w,即局部图像大小,方差计算的具体方案:

3.1计算局部图像均值的平方对局部图像中所有元素求和,并右移2n位得到平均值然后将平均值写入数据同步器fifo2,并对作平方运算得到

3.2计算局部图像平方的平均值局部图像进行平方运算,得到一个大小为n*n的矩阵i2,对该矩阵中所有元素求和,并右移2n位得到平均值

3.3根据局部图像均值的平方以及局部图像平方的平均值计算方差。

(4)根据方差σ2以及一个确定的平滑系数ε求解导向滤波中一次项系数a及常数项b:首先采用分段一次函数拟合方式逼近a系数曲线,然后基于多路选择器和移位加法器完成分段一次函数的硬件电路设计,最终通过输入方差即可得到导向滤波中一次项系数a,最后通过数据同步器fifo2输出的局部图像的平均值与系数a算出常数项b;

(5)对一次项系数a及常数项b均值滤波:将a,b数据输入到系数缓存器abuf、bbuf,缓存器结构与ibuf相同,在系统时钟和数据有效使能信号的控制下,将产生两个大小为n*n系数矩阵,分别存放于abuf和bbuf的滤波窗口中,分别对滤波窗口中所有元素求和,运用右移位运算的除法特性右移2n位算出平均值

(6)计算输出结果q完成导向滤波:根据步骤(2)中数据同步器fifo1输出的数据与一次项系数a及常数项b的局部平均值得到导向滤波输出结果q。

上述步骤完成一个像素的计算,其中w=22n,n=2n,n={1,2,3},本发明采取流水线设计,为保证计算结果的正确性本发明添加系统时钟,数据有效使能信号进行控制,每一个数据有效时钟周期输出一个计算结果,在系统时钟的控制下,最终完成整张图像的导向滤波处理。

实施例6:

硬件实现导向滤波的优化系统和方法同实施例1-5,硬件实现导向滤波的优化方法的步骤3.2中,计算局部图像的平均值公式如下:

其中w为滤波窗口大小,ii,j表示在滤波窗口中第i行第j列像素值,n为滤波窗口宽度,n=2n,n={1,2,3},‘>>’为右移位运算符,所述局部图像为滤波窗口中的图像。

实施例7:

硬件实现导向滤波的优化系统和方法同实施例1-6,3.3中计算局部图像的平方的平均值的公式如下所示:

其中w为滤波窗口大小,ii,j表示在滤波窗口中第i行第j列像素值,n为滤波窗口宽度,n=2n,n={1,2,3},‘>>’为右移位运算符,所述局部图像为滤波窗口中的图像。

本发明在实施例6和实施例7的技术方案中采用公式格相似,输入数据不同,能够通过硬件描述语言来实现,分别由局部图像缓存单元缓存局部图像,求和单元实现局部图像的求和运算,用右移位运算实现除法运算。

局部图像缓存单元结构参见图2所示,data_in为输入端,由n-1个先入先出存储器fifo构成和n个移位寄存器,其中每个移位寄存器的长度为n,共有n*n个寄存器,构成大小为n*n的滤波窗口,局部图像存放与滤波窗口中;

求和单元:n>1时,求和单元结构参见图3,图中accin为所有输入串行移位寄存器值的累加,sumout为所有输出串行移位寄存器值的和,由于所有寄存器初始化为零,所以accin减去sumout便是串行移位寄存器所有寄存器值的总和,即滤波窗口中所有元素的总和,求取平方和时,通过累加输入平法和减去输出平方和的方式计算。

除法运算单元中:本发明提出偶数滤波窗口设计,且窗口大小满足w=22n,使得均值滤波中的除法运算可以由右移位运算实现,其操作为直接舍弃低22n位即可得到平均值,为了提高计算精度也可以将低22n位作为小数位。

实施例8:

硬件实现导向滤波的优化系统和方法同实施例1-7,本发明计算一次项系数a的公式如下所示:

s为分段函数段数,ki表示第i段的斜率,bi表示第i段的截距,ε为平滑系数,x为图像数据位宽,σ2为局部图像的方差。

具体实现步骤为:

8.1确定一个平滑系数ε,0<ε<2x

8.2然后在用c语言或者python语言,以σ2为自变量,则a为一条单调递增曲线,将a曲线分成s段,用分段一次函数拟合a曲线,其中s越大精度越高,但计算度越复杂;

8.3基于多路选择器和移位加法器完成分段一次函数的硬件实现,从而实现一次项系数a的求解,最终通过输入方差即可得到导向滤波中一次项系数a。

实施例9:

硬件实现导向滤波的优化系统和方法同实施例1-8,一次项系数a及常数项b均值滤波公式如下所示:

其中w为滤波窗口大小,为均值滤波输出结果,ai,j、bi,j分别表示在滤波窗口中第i行第j列一次项系数a的值和常数项b的值,n为滤波窗口宽度,n=2n,n={1,2,3},‘>>’为右移位运算符。

上述公式的硬件描述包含系数缓存器,求和单元以及除法器单元,其中系数缓存器结构如图2所示,求和单元机构示意图如图3所示。本发明滤波窗口大小满足w=22n。使得均值滤波中的除法可以由右移2n位实现,因此有效地降低实现硬件导向滤波电路的面积和功耗,并提高了实时性。具体实现步骤也可以表示为:

9.1将a,b数据分别输入到系数缓存器abuf、bbuf中,缓存器结构与ibuf相同,参见图2,将产生两个大小为n*n系数矩阵,分别存放于对应滤波窗口中;

9.2对abuf、bbuf中滤波窗口里所有数据进行求和计算,当n>1时,求和电路示意图,参见图3;

9.3右移2n位得到平均值相应的均值。

以下给出一个更加完整和详实的例子,结合附图,对本发明作进一步描述。

实施例10:

硬件实现导向滤波的优化系统和方法同实施例1-9,参照图1,本发明的实现步骤包括如下:

步骤1,将输入图iin以串行方式输入缓存器ibuf,并将缓存器中最后一级fifo的输出端数据写入数据同步器fifo1,本发明局部图像缓存单元结构如图2所示,该缓存单元由n-1个长度为输入图宽度的先入先出存储器fifo级联,以及由n个长度为n的移位寄存器构成,最终产生像素点为n*n局部图像i,其中n=2n,n={1,2,3},数据位宽为输入图像数据位宽。

步骤2,先对局部图像中所有像素值求和,n=1时直接求和,n>时,求和电路结构如图3所示,其次对其进行右移2n位操作求得平均值公式如下所示:

其中w为滤波窗口大小,ii,j表示在滤波窗口中第i行第j列像素值,n为滤波窗口宽度,n=2n,n={1,2,3},‘>>’为右移位运算符,所述局部图像滤波窗口中的图像。然后将局部图像的平均值写入数据同步器fifo2,并对作平方运算得到

步骤3,当n=1时,先对上述局部图像i中各像素值进行平方运算得到一个大小为2*2的矩阵i2,并对i2所有元素做求和运算;当n>1时,求和电路结构参见图3,累加输入平方和减去输出平方和,然后右移2n位得到公式如下所示:

其中w为滤波窗口大小,表示在滤波窗口中第i行第j列像素值的平方,n为滤波窗口宽度,n=2n,n={1,2,3},‘>>’为右移位运算符。

步骤4,将输入图像iin作为导向滤波中的导向图gin,计算方差σ2

计算导向滤波中方差公式如下所示:

本发明将输入图像iin作为导向滤波中的导向图gin,则有g=i,本发明计算方差公式如下所示:

步骤5,根据方差σ2以及平滑系数ε求解导向滤波中一次项系数a;

本发明采用分段一次函数拟合方式逼近导向滤波中的a系数曲线,其表达式如下所示:

s为分段函数段数,ki表示第i段的斜率,bi表示第i段的截距,ε为平滑系数,x为图像数据位宽,σ2为局部图像的方差。

具体实现步骤为:

5.1确定一个平滑系数ε,0≤ε<2x,其中x为输入图像数据位宽;

5.2然后在用c语言或者python语言,以方差σ2为变量并计算出0≤σ2<2x所对应的系数a曲线,再将系数a曲线拟合成分段一次函数;

5.3基于多路选择器和移位加法器完成分段一次函数的硬件实现,从而实现一次项系数a的求解,由于a∈(0,7)变化较大,该段采取查表法实现,本例中x=8,s=16。

步骤6,通过数据同步器fifo2输出局部图像的平均值用局部图像的平均值与一次项系数a算出常数项b,常数项b计算公式如下所示:

其中a′表示一次项系数a的按位非运算,‘>>’为右移位运算符,x为图像的数据位宽,本例中x=8。

然后将a,b数据分别输入到系数缓存器abuf、bbuf中,缓存器结构与局部图像缓存单元ibuf相同,将产生两个大小为n*n系数矩阵,n=2n,n={1,2,3};

步骤7,分别求出系数缓存器abuf与bbuf中滤波窗口下一次项系数a与常数项b的算数平均值其计算公式如下所示;

其中w为滤波窗口大小,为均值滤波输出结果,ai,j,bi,j分别表示在滤波窗口中第i行第j列一次项系数a的值和常数项b的值,n为滤波窗口宽度,n=2n,n={1,2,3},‘>>’为右移位运算符,n=1时直接求和,n>1时求和电路参见图3。

步骤8,将步骤(1)中数据同步器fifo1输出i的数据与得到导向滤波输出结果q,其公式如下所示:

以上8个步骤详细介绍了获得一个像素输出处理的所有过程,本发明采用流水线形式,在系统时钟的控制下,依次输出导向滤波结果,公式如下所示:

其中iin为输入图像,q为导向滤波输出结果,x、y为图像坐标,iin(x,y),q(x,y),分别为相应坐标上的输入图像值,导向滤波结果,一次项系数以及常数项。

本发明在第一个输出结果之后,每一个有效时钟周期输出一个计算结果,在系统时钟的控制下最终通过硬件描述语言实现对输入图像的导向滤波处理。

下面通过仿真结果对本发明的技术效果再做说明

实施例11:

硬件实现导向滤波的优化系统和方法同实施例1-10,

实验环境:软件仿真环境为matlab2016b和modelsim-altera10.3,操作系统为64-bitwindows10;centos虚拟机,dc综合库文件synopsys/dc/dc_2012/libraries/syn/class.db。

实验内容:

实验1,去噪处理:首先在matlab中对原始图像加高斯噪声,得到噪声图;然后分别在matlab和modelsim环境下对噪声图进行导向滤波去噪处理,并保存处理结果,其中modelsim环境下使用veriloghdl语言对本发明进行描述;最后在matlab中计算处理结果的信噪比和信息熵,如图4所示。

其中:图4(a)为噪声图,图4(b)为用本发明处理结果,图4(c)为matlab处理结果局部图,图4(d)为噪声图局部图,图4(e)为本发明处理结果局部图。由图4(a)和图4(b)对比可见本发明处理结果与噪声图相比画质明显提高,根据局部图4(c)、4(d)、4(e)图可以看出本发明处理结果与matlab处理结果大致相同;但人眼的视觉效果存在偏差,表1给出信噪比和信息熵对处理结果进行了客观评价,一般地信息熵越大图像也好,信噪比高图像质量越好。

表1本发明处理结果与matlab处理结果的客观评价

综合看出,本发明输出结果与原图相比信噪比明显提高、与matlab中实现效果大致相同,实现了导向滤波算法。

实验2,系统实时性验证:表2中分别统计了图像大小为160*120、640*480、1024*768图像的流水线级数,流水线级数反应数据从输入到输出所需要的系统时钟周期,系统时钟频率相同情况下,流水线级数越少越具有实时性,可以看出本发明更具有实时性。

表2本发明方法与现有方法最小流水线级数

实验3,dc综合:分别对传统方法和本发明方法实现导向滤波电路进行dc综合,相同约束条件下,实现不同分辨率图片的电路面积报告如表3所示:

表3本发明方法与现有方法实现导向滤波电路的面积报告(单位:um2)

由表3可见,本发明所提出的硬件实现导向滤波优化方案比传统基于引导滤波方法耗费面积较小,相同条件下功耗与面积呈正相关,所以本发明功耗较传统实现方法低,实验中各个均值滤波窗口为取最小值,其中本发明最小为2*2;现有技术最小值为3*3。

根据上述实验可得,本发明优化了导向滤波硬件实现方案,具有较好的去噪效果更具有实时性、较小的面积消耗以及较低的功率损耗。

综上所述,本发明提出的一种硬件实现导向滤波优化系统和方法。解决了导向滤波算法在硬件实现中的实时性差,面积和功耗大等问题。硬件实现导向滤波优化系统依数据流动顺序依次包括并连接有均值滤波模块,数据同步器fifo1,数据同步器fifo2,方差计算模块,一次项系数计算模块,常数项计算模块,一次项系数均值滤波模块,常数项均值滤波模块,输出级计算模块。硬件实现导向滤波优化方法主要步骤如下:1.将图像输入滤波缓存器并将其作为导向图;2.缓存器输出端数据输入数据同步器fifo1;3.对滤波缓存器中的像素值求平方值和方差,并将平均值写入数据同步器fifo2;4.根据方差以及平滑系数求解导向滤波中一次项系数a;5.通过数据同步器fifo2输出平均值和一次项系数a算出常数项b并写入缓存器;6.分别求出a与b在滤波窗口中一次项系数a的平均值和常数项b的平均值;7.由同步模块fifo1输出数据、滤波窗口中a的平均值和b的平均值求得导向滤波输出结果。本发明提高了计算精度,降低了硬件实现复杂度,避免使用除法器,减小了延时,降低了面积和功耗。能以硬件电路的形式集成于图像采集与显示的芯片上,可用于数字图像采集与显示中的去噪处理,图像增强,高动态图像压缩。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1