用于对视频图像进行滤波操作的滤波电路及其滤波方法

文档序号:7746092阅读:203来源:国知局
专利名称:用于对视频图像进行滤波操作的滤波电路及其滤波方法
技术领域
本发明属于视频图像处理技术领域,尤其涉及一种用于对视频图像进行滤波操作的滤波电路及其滤波方法。
背景技术
在图像处理技术中,图像的空间频率是指特定频率在单位间距内重复的次数;图像细节越精细,单位间距内重复的次数越多,频率就越高;反之,频率则越低;即高频反映图像的细节部分,低频反映图像的平坦部分。电视机在对一幅图像进行显示时,人眼对画面的高频区域会感受到一种明显的闪烁感;这种闪烁感源于电视图像信号的奇偶场交替。从工作原理上讲,电视机会先显示一幅图像的所有奇数行(即奇场),奇场图像的垂直方向尺寸只有原始图像的一半;然后电视机会显示一幅图像的所有偶数行(即偶场),偶场图像的垂直方向尺寸也只有原始图像的一半;当奇场和偶场连续交替显示时,人眼看到的就是一幅连续的图像。对于原始图像的低频区域,由于图像的相邻像素点的值(尤其是垂直方向相邻像素点的值)相差不大,当把它抽取为奇场和偶场分别显示时,奇场和偶场中的此区域内的值比较接近,人眼会比较舒服; 而对于原始图像的高频部分,由于图像的相邻像素点的值(尤其是垂直方向相邻像素点的值)相差较大,当把它抽取为奇场和偶场分别显示时,奇场和偶场中的此区域内的值相差较大,人眼就会感觉到明显的闪烁。为了消除这种视觉上的闪烁感,一般需要对送入电视信号编码器的图片进行滤波操作,滤掉高频分量。电路实现滤波操作时,一般要把将要进行滤波操作的图像原始行取到一个缓冲器当中,接着进行滤波,然后把滤波完的数据送出去。具体的滤波算法为对原始图像的上下边界和左右边界上的像素点,不做处理,直接保留;对原始图像的其他像素点, 需要取它左边一个像素点、右边一个像素点、上边一个像素点和下边一个像素点,共四个临近点来进行滤波操作;滤波操作时,按照先进行水平滤波后进行垂直滤波的思路进行。该算法的具体实现如下所述图1示出了一幅图像的所有像素点,其中图像水平尺寸为n,垂直尺寸为m。图像的上下左右四个边界上的点不需要滤波,即点(pn,P12,P13... Pm),(Pml,Pm2,Pm3... PJ,(Pu, P21,P31... Pffll),(Pln, P2n,P3n... PJ不需要滤波,其他所有点都需要进行滤波。滤波操作按照先水平滤波后垂直滤波的顺序进行。滤波算法在水平方向计算时,涉及到当前点Pjurrait 及其左、右两点P .left 禾口 P—right, 计算公式为P hf — (P_left+2*P_current+P_right) /4, 其中P hf ^V =I 前点P—__水平滤波后的值。所有点的水平方向滤波完成之后,得到每一个像素点值滤波后的值,然后进行垂直滤波。滤波算法在垂直方向计算时,涉及到当前点P—hf—。umnt及其上、 下两点P—hf—up和P—hf—d。wn,计算公式为P_ Vf — (P—hf—up+2*P—hf—curTent+P—hf—down) /4,其中 P_vf 为当前点P—Μ—。—垂直滤波后的值,也是点ρ—。umnt滤波操作完成后的最终结果值。为了更进一步的说明,现以点P22为例当进行水平方向滤波计算时,涉及到点P21 和P23,对点P22进行水平方向滤波得到P22—hf = (P21+2*P22+P23) /4 ;当进行垂直方向滤波计算时,涉及到点P12和点;而参与计算时点P12、点P22和点P32要用水平方向滤波完成后的三个点对应的值,即点p12—hf、p22—hf、P32Jrf,对点P22Jrf进行垂直方向滤波后的值p22—vf = (p12— hf+2*P22 hf+P32 hf)/4。当所有点的垂直方向滤波完成之后,整帧图像的滤波完成,滤波后的图片可以交给显示控制模块去显示。根据上面描述的计算方法,现有技术一般采用的滤波电路是先从内存中按从上到下的顺序取原始图像的每一行,依次进行水平方向的滤波,水平滤波完成之后的图像放入内存中;然后从内存中按从左到右的顺序取原始图像的每一列,依次进行垂直方向的滤波, 垂直滤波完成之后的图像放入内存中,作为最终的输出图像。但这种方法存在两大弊端 (1)对内存进行读写数据操作的耗时较长;S卩首先需要把数据从内存中读出来(第1次), 做水平滤波后,写进去(第2次);再把数据从内存中读出来(第3次),做垂直滤波后,写进去(第4次)。对内存操作了 4次,所以耗时较大。( 滤波计算时存储每一行数据所用到的缓冲器存储的是原始图像的一整行(或列),所以缓冲器容量较大,占用较多的硬件资源。

发明内容
本发明实施例的目的在于提供一种用于对视频图像进行滤波操作的滤波电路,旨在解决现有的滤波电路对内存进行读写数据操作次数多导致耗时太长;以及滤波计算时存储一整行数据或一整列数据所用到的缓冲器容量大导致占用硬件资源多的问题。本发明实施例是这样实现的,一种用于对视频图像进行滤波操作的滤波电路,包括连接在第一存储单元的输出端的第一缓冲器、第二缓冲器和第三缓冲器;寄存器,其输出控制端连接至所述第一存储单元的输出端,根据外部的控制信号控制将一帧原始图像沿水平方向切割成N列后的像素值按照预定的时序分别被送入所述第一缓冲器、第二缓冲器或第三缓冲器;第一水平滤波模块,其输入端连接至所述第一缓冲器的输出端,用于对所述第一缓冲器输出的像素值进行水平方向滤波处理;第二水平滤波模块,其输入端连接至所述第二缓冲器的输出端,用于对所述第二缓冲器输出的像素值进行水平方向滤波处理;第三水平滤波模块,其输入端连接至所述第三缓冲器的输出端,用于对所述第三缓冲器输出的像素值进行水平方向滤波处理;垂直滤波模块,其第一输入端连接至所述第一水平滤波模块的输出端,所述垂直滤波模块的第二输入端连接至所述第二水平滤波模块的输出端,所述垂直滤波模块的第三输入端连接至所述第三水平滤波模块的输出端;所述垂直滤波模块用于对所述第一水平滤波模块、第二水平滤波模块和第三水平滤波模块的输出进行垂直方向滤波处理;以及第四缓冲器,其输入端连接至所述垂直滤波模块的输出端,所述第四缓冲器的输出端连接至外部的第二存储单元;所述第四缓冲器用于储存所述垂直滤波模块输出的经垂直方向滤波后的像素值;所述N为大于等于2的正整数。更进一步地,所述第一水平滤波模块包括第一触发器,其输入端连接至所述第一缓冲器的输出端;
第二触发器,其输入端连接至第一触发器的第一输出端;第三触发器,其输入端连接至所述第二触发器的第一输出端;以及水平滤波结果输出单元,其第一输入端连接至所述第一触发器的第二输出端,所述水平滤波结果输出单元的第二输入端连接至所述第二触发器的第二输出端,所述水平滤波结果输出单元的第三输入端连接至所述第三触发器的输出端,所述水平滤波结果输出单元的输出端连接至所述垂直滤波模块的第一输入端。本发明实施例的另一目的在于提供一种采用上述用于对视频图像进行滤波操作的滤波电路的滤波方法,所述滤波方法包括下述步骤步骤Sl 将一帧原始图像沿水平方向切割成N列,每列具有M行;步骤S2 对第1列中从第1行至第M行的像素值分别进行滤波操作;步骤S3 依次对第2列、第3列直至第N列分别进行步骤S2中从第1行至第M行的滤波操作;所述N为大于等于2的正整数,所述M为大于等于3的正整数。更进一步地,所述步骤S2进一步包括下述步骤步骤S21 第一缓冲器读取第1列第1行的像素值,第二缓冲器读取第1列第2行的像素值;第一水平滤波模块将所述第一缓冲器输出的第1列第1行的像素值进行水平方向滤波后输出,第四缓冲器存储滤波后的第1列第1行的像素值;步骤S22 第三缓冲器读取第1列第3行的像素值;第一水平滤波模块将所述第一缓冲器输出的第1列第1行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第2行的像素值进行水平方向滤波后输出,第三水平滤波模块将所述第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第2行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第2行的像素值;步骤S23 第一缓冲器读取第1列第4行的像素值,第三水平滤波模块将第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第2行的像素值进行水平方向滤波后输出,第一水平滤波模块将所述第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第3行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第3行的像素值;步骤S24 第二缓冲器读取第1列第5行的像素值,第一水平滤波模块将第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出,第二水平滤波模块将所述第二缓冲器输出的第1列第5行的像素值进行水平方向滤波后输出,第三水平滤波模块将第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第4行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第4行的像素值;步骤S25 第三缓冲器读取第1列第6行的像素值,第一水平滤波模块将第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第5行的像素值进行水平方向滤波后输出,第三水平滤波模块将所述第三缓冲器输出的第1列第6行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第5行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第5行的像素值;重复上述步骤直至第四缓冲器存储经垂直方向滤波后的第1列第M行的像素值。更进一步地,所述步骤Sl具体为将一帧原始图像沿水平方向以宽度P进行切割成N列,其中,P = D-2,D为缓冲器的深度。本发明提供的滤波电路采用水平滤波模块、垂直滤波模块以及容量小的缓冲器对沿水平方向切割后的图像数据按列进行滤波操作,电路结构简单、硬件资源少,电路效率
尚ο


图1是现有技术提供的水平尺寸为n,垂直尺寸为m的图像的所有像素点的结构示意图;图2是本发明实施例提供的用于对视频图像进行滤波操作的滤波电路的模块结构原理图;图3是本发明实施例提供的滤波电路中第一水平滤波模块的模块结构原理图;图4是本发明实施例提供的滤波方法的实现流程图;图5是本发明实施例提供的将一帧原始图像沿水平方向切割成N列的结构示意图;图6是本发明实施例提供的单独一列中第1行至第M行的结构示意图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例提供的滤波电路采用水平滤波模块、垂直滤波模块以及容量小的缓冲器对沿水平方向切割后的图像数据按列进行滤波操作,电路结构简单、硬件资源少,电路
效率高。本发明实施例提供的滤波电路主要是用于对输出至电视机的视频图像进行滤波操作,该滤波电路可以应用于相机等图像处理装置中;图2示出了该滤波电路的模块结构原理图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下。滤波电路2包括寄存器21、第一缓冲器22、第二缓冲器23、第三缓冲器24、第一水平滤波模块25、第二水平滤波模块沈、第三水平滤波模块27、垂直滤波模块观和第四缓冲器四;其中第一缓冲器22、第二缓冲器23和第三缓冲器M分别连接在第一存储单元1 的输出端;寄存器21的输出控制端连接至第一存储单元1的输出端,寄存器21根据外部的控制信号控制将一帧原始图像沿水平方向切割成N列后的像素值按照预定的时序分别被送入第一缓冲器22、第二缓冲器23或第三缓冲器M ;第一水平滤波模块25的输入端连接至第一缓冲器22的输出端,第一水平滤波模块25用于对第一缓冲器22输出的像素值进行水平方向滤波处理;第二水平滤波模块26的输入端连接至第二缓冲器23的输出端,第二水平滤波模块26用于对第二缓冲器23输出的像素值进行水平方向滤波处理;第三水平滤波模块27的输入端连接至第三缓冲器M的输出端,第三水平滤波模块27用于对第三缓冲器M输出的像素值进行水平方向滤波处理;垂直滤波模块观的第一输入端连接至第一水平滤波模块25的输出端,垂直滤波模块观的第二输入端连接至第二水平滤波模块沈的输出端,垂直滤波模块观的第三输入端连接至第三水平滤波模块27的输出端;垂直滤波模块观用于对第一水平滤波模块25、第二水平滤波模块沈和第三水平滤波模块27的输出进行垂直方向滤波处理;第四缓冲器四的输入端连接至垂直滤波模块观的输出端,第四缓冲器 29的输出端连接至外部的第二存储单元3 ;第四缓冲器四用于储存垂直滤波模块观输出的经垂直方向滤波后的像素值;其中N为大于等于2的正整数。本发明实施例提供的滤波电路选取在水平方向进行分段,然后在垂直方向上顺序进行滤波操作,大大节省了硬件资源;当采用该滤波电路对一幅输出至电视机显示的图像进行滤波操作时,可以降低电视画面的闪烁感。在本发明实施例中,把原始图像在水平方向上切割成若干列。其中,每一列的宽度并非要求均等;但为求电路实施方便,除最后一列以外,其他列的宽度应尽量相等,如图5 所示,最后一列宽度为S,其他列宽度为P ;占多数的列的宽度P与所使用的缓冲器的深度D 有关;当缓冲器的深度D确定之后,列宽P取(D-2);实际操作时,沿原始图像的水平方向, 以宽度(D-2)进行切割,切割到最后一列时,保留其尺寸S即可。图像切割成列后,滤波操作按照从左到右一列一列进行。图6示出了单独一列,该列中有若干行,是对水平尺寸进行切割后落在该列内的短行,以下表述中提到列中的行即指的是这样的短行,宽度为P或S ; 对单独每一列进行滤波操作时,按照从上到下一行一行的进行。在本发明实施例中,第一水平滤波模块25的内部结构如图3所示,为了便于说明, 仅示出了与本发明实施例相关的部分,详述如下。第一水平滤波模块25包括第一触发器251、第二触发器252、第三触发器253以及水平滤波结果输出单元254 ;其中,第一触发器251的输入端连接至第一缓冲器22的输出端,第二触发器252的输入端连接至第一触发器251的第一输出端,第三触发器253的输入端连接至第二触发器252的第一输出端,水平滤波结果输出单元254的第一输入端连接至第一触发器251的第二输出端,水平滤波结果输出单元254的第二输入端连接至第二触发器252的第二输出端,水平滤波结果输出单元254的第三输入端连接至第三触发器253 的输出端,水平滤波结果输出单元254的输出端连接至垂直滤波模块观的第一输入端。在本发明实施例中,第二水平滤波模块沈、第三水平滤波模块27和垂直滤波模块 28的内部结构与第一水平滤波模块25的内部结构相同,也是由一个结果输出单元和三个串联连接的触发器构成;在此就不再赘述。在本发明实施例中,第一水平滤波模块25对每一列中的行进行滤波操作时,在寄存器21的控制下先从第一存储单元1中取最上面两行分别装载进第一缓冲器22和第二缓冲器23中,然后从第一缓冲器22中把第一行数据读出来,读出来的过程中就开始由第一水平滤波模块25进行水平方向的滤波;具体地,从第一缓冲器22中把像素数据pixel data 读出来,在每一个时钟上升沿到来时,把pixel data送进第一触发器251,把第一触发器 251的数据送进第二触发器252,把第二触发器252的数据送进第三触发器253,这三个触发器中的数据就是做水平方向滤波操作时涉及到的三个点,数据准备需要两个时钟周期,即第一个点的值到达第二触发器252需要两个时钟周期。由于第一个点不需要滤波,可以直接送出;在下一个时钟周期,三个触发器中的数据都得到更新;也可以说,第二触发器252中的数据将一直是待滤波数据。把三个触发器中的数据取出来,做滤波操作即可,一个时钟周期即可得到结果。当缓冲器中所有数据全部经过触发器一遍,滤波操作就完成了。因为第一行是图像的上边界,不需要进行垂直方向滤波,直接把滤波结果送给第四缓冲器四,第四缓冲器四专门用于存放最终的滤波数据,把第四缓冲器四中的数据读出来,送回第二储存单元3即完成了一行的滤波操作;此时第一缓冲器22中依然保留着第一行的原始数据。在寄存器21的控制下从第一存储单元1中取新的一行(即第三行)放入第三缓冲器M中,此时滤波电路中的第一缓冲器22、第二缓冲器23、第三缓冲器M分别装载了第一行、第二行、第三行的原始数据;从三个缓冲器中分别把三行数据读出来,读出来后马上就开始进行水平方向的滤波;由于所采用的滤波算法较为简单,完成水平方向一个点的滤波运算只需要一个时钟周期,三个短行数据同时进行计算,三个时钟周期(含两个时钟周期做数据准备和一个时钟周期做滤波计算)之后,三个短行都可以完成各自的第一个点水平滤波的计算,这个结果就可以拿来直接为垂直滤波所用,垂直滤波也就开始操作;当水平滤波最后一个点的滤波操作完成之后,再用一个时钟周期,垂直滤波也就完成了,这也是要设定三个缓冲器的原因;此时,第二行的滤波完成,可以把第二行滤波后的像素数据送到内存中。此时,第一缓冲器22、第二缓冲器23、第三缓冲器M依然保留着第一行、第二行和第三行的原始数据。继续按照一列中从上到下的顺序取新的一行(即第四行)并覆盖掉第一缓冲器22 中的第一行作为新的垂直滤波计算的第三行,原来第二缓冲器23中的第二行此时为新的垂直滤波计算的第一行,原来第三缓冲器M中的第三行此时为新的垂直滤波计算的第二行。按照上面相同的方法,把三个缓冲器中的数据读出来进行水平滤波,紧接着水平滤波就可以进行垂直滤波,垂直滤波结束就把第二行的数据送到第二存储单元3中。按照上述步骤持续进行,每下载新的一行数据,就覆盖掉刚刚滤波完成的旧数据, 保持三个缓冲器中的数据为接下来垂直滤波涉及到的三行数据,直到一列中的所有行都完成。当第一列完成滤波操作之后,继续按照上述步骤的顺序进行下一列数据的滤波操作,直至所有的列都完成,此时整幅图像的滤波完成。与现有的滤波电路采用可以装载一整行图像数据量的缓冲器(比如,假设图像尺寸为720X 576,那么现有的滤波电路中的缓冲器容量为720个像素数据)相比,本发明实施例中所采用的四个缓冲器的容量都比较小;与现有的滤波电路是一行一行进行滤波操作相比,本发明实施例采用并行处理,将图像分成若干列,然后沿着每一列的垂直方向按行进行滤波操作,水平方向和垂直方向均采用的是相同的计算电路,大大节省了硬件资源。本发明实施例提供的滤波方法的实现流程如图4所示,该滤波方法主要包括下述步骤步骤Sl 将一帧原始图像沿水平方向切割成N列;步骤S2 对第1列中从第1行至第M行的像素值分别进行滤波操作;步骤S3 依次对第2列、第3列直至第N列分别进行步骤S2中从第1行至第M行的滤波操作;所述N为大于等于2的正整数,所述M为大于等于3的正整数。在本发明实施例中,将一帧原始图像沿水平方向切割成N列这个步骤可以通过寄存器来实现;具体地,可以通过软件接口(就是软件可配置的寄存器)来实现;在软件接口中有个寄存器cOlUmn_nUm[7:0],该寄存器表示原始图像沿水平方向一共划分为多少列,这个值是由软件计算好并配置给滤波电路;滤波电路拿到这个数值后,就知道需要进行多少列的滤波,也就是知道了原始图像在水平方向上切割成了多少列。作为本发明的一个实施例,步骤Sl具体为将一帧原始图像沿水平方向以宽度P 进行切割成N列,其中,P = D-2,D为缓冲器的深度。在本发明实施例中,步骤S2进一步包括下述步骤步骤S21 第一缓冲器读取第1列第1行的像素值,第二缓冲器读取第1列第2行的像素值;第一水平滤波模块将所述第一缓冲器输出的第1列第1行的像素值进行水平方向滤波后输出,第四缓冲器存储滤波后的第1列第1行的像素值;完成第1列第1行的滤波操作;步骤S22 第三缓冲器读取第1列第3行的像素值;第一水平滤波模块将所述第一缓冲器输出的第1列第1行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第2行的像素值进行水平方向滤波后输出,第三水平滤波模块将所述第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第2行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第2行的像素值;此时第一缓冲器、第二缓冲器和第三缓冲器依然分别保留着第1列第1行、第2行和第3行的原始数据;步骤S23 第一缓冲器读取第1列第4行的像素值,第三水平滤波模块将第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第2行的像素值进行水平方向滤波后输出,第一水平滤波模块将所述第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第3行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第3行的像素值;步骤S24 第二缓冲器读取第1列第5行的像素值,第一水平滤波模块将第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出,第二水平滤波模块将所述第二缓冲器输出的第1列第5行的像素值进行水平方向滤波后输出,第三水平滤波模块将第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第4行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第4行的像素值;步骤S25 第三缓冲器读取第1列第6行的像素值,第一水平滤波模块将第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第5行的像素值进行水平方向滤波后输出,第三水平滤波模块将所述第三缓冲器输出的第1列第6行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第5行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第5行的像素值;重复上述步骤直至第四缓冲器存储经垂直方向滤波后的第1列第M行的像素值。 即完成第1列的滤波操作。为了更进一步的说明本发明实施例提供的滤波方法是如何进行滤波操作的,现以输入尺寸为720X576的图像为例说明如下
10
水平尺寸720,在水平方向把图像切割成若干列。每一列的宽度与缓冲器的深度设置相关,假设缓冲器的深度设置为64,那么列宽为62 ;用水平尺寸720除以62得到11,余数38,那么我们需要进行的列数N为12,其中最后一列的宽度S为38,其他列的宽度P都是62 ;从第一存储单元1中下载第一列第一行到第一缓冲器22中;从第一存储单元1中下载第一列第二行到第二缓冲器23中;从第一缓冲器22中读取像素值,进行水平方向滤波, 滤波完成直接送出;从第一存储单元1中下载第一列第三行到第三缓冲器M中;从三个缓冲器中分别读取像素值,进行各自水平方向滤波,两个时钟周期后,开始垂直方向滤波,滤波完成后把第二行的滤波结果送出去;从第一存储单元1中下载第一列第四行到第一缓冲器22中,作为当次滤波的第三行,进行滤波;按照以上思路持续进行,直到本列滤波结束; 一列一列进行直至整帧图像滤波完成。本发明实施例提供的滤波电路采用水平滤波模块、垂直滤波模块以及容量小的缓冲器对沿水平方向切割后的图像数据按列进行滤波操作,电路结构简单、硬件资源少,电路
效率高。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
1权利要求
1.一种用于对视频图像进行滤波操作的滤波电路,其特征在于,包括 连接在第一存储单元的输出端的第一缓冲器、第二缓冲器和第三缓冲器;寄存器,其输出控制端连接至所述第一存储单元的输出端,根据外部的控制信号控制将一帧原始图像沿水平方向切割成N列后的像素值按照预定的时序分别被送入所述第一缓冲器、第二缓冲器或第三缓冲器;第一水平滤波模块,其输入端连接至所述第一缓冲器的输出端,用于对所述第一缓冲器输出的像素值进行水平方向滤波处理;第二水平滤波模块,其输入端连接至所述第二缓冲器的输出端,用于对所述第二缓冲器输出的像素值进行水平方向滤波处理;第三水平滤波模块,其输入端连接至所述第三缓冲器的输出端,用于对所述第三缓冲器输出的像素值进行水平方向滤波处理;垂直滤波模块,其第一输入端连接至所述第一水平滤波模块的输出端,所述垂直滤波模块的第二输入端连接至所述第二水平滤波模块的输出端,所述垂直滤波模块的第三输入端连接至所述第三水平滤波模块的输出端;所述垂直滤波模块用于对所述第一水平滤波模块、第二水平滤波模块和第三水平滤波模块的输出进行垂直方向滤波处理;以及第四缓冲器,其输入端连接至所述垂直滤波模块的输出端,所述第四缓冲器的输出端连接至外部的第二存储单元;所述第四缓冲器用于储存所述垂直滤波模块输出的经垂直方向滤波后的像素值;所述N为大于等于2的正整数。
2.如权利要求1所述的滤波电路,其特征在于,所述第一水平滤波模块包括 第一触发器,其输入端连接至所述第一缓冲器的输出端;第二触发器,其输入端连接至第一触发器的第一输出端; 第三触发器,其输入端连接至所述第二触发器的第一输出端;以及水平滤波结果输出单元,其第一输入端连接至所述第一触发器的第二输出端,所述水平滤波结果输出单元的第二输入端连接至所述第二触发器的第二输出端,所述水平滤波结果输出单元的第三输入端连接至所述第三触发器的输出端,所述水平滤波结果输出单元的输出端连接至所述垂直滤波模块的第一输入端。
3.一种采用权利要求1所述的用于对视频图像进行滤波操作的滤波电路的滤波方法, 其特征在于,所述滤波方法包括下述步骤步骤S 1 将一帧原始图像沿水平方向切割成N列,每列具有M行; 步骤S2 对第1列中从第1行至第M行的像素值分别进行滤波操作; 步骤S3 依次对第2列、第3列直至第N列分别进行步骤S2中从第1行至第M行的滤波操作;所述N为大于等于2的正整数,所述M为大于等于3的正整数。
4.如权利要求3所述的滤波方法,其特征在于,所述步骤S2进一步包括下述步骤 步骤S21 第一缓冲器读取第1列第1行的像素值,第二缓冲器读取第1列第2行的像素值;第一水平滤波模块将所述第一缓冲器输出的第1列第1行的像素值进行水平方向滤波后输出,第四缓冲器存储滤波后的第1列第1行的像素值;步骤S22 第三缓冲器读取第1列第3行的像素值;第一水平滤波模块将所述第一缓冲器输出的第1列第1行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第2行的像素值进行水平方向滤波后输出,第三水平滤波模块将所述第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1列第2行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第1列第2行的像素值;步骤S23 第一缓冲器读取第1列第4行的像素值,第三水平滤波模块将第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第2行的像素值进行水平方向滤波后输出,第一水平滤波模块将所述第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1 列第3行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第 1列第3行的像素值;步骤S24 第二缓冲器读取第1列第5行的像素值,第一水平滤波模块将第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出,第二水平滤波模块将所述第二缓冲器输出的第1列第5行的像素值进行水平方向滤波后输出,第三水平滤波模块将第三缓冲器输出的第1列第3行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1 列第4行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第 1列第4行的像素值;步骤S25 第三缓冲器读取第1列第6行的像素值,第一水平滤波模块将第一缓冲器输出的第1列第4行的像素值进行水平方向滤波后输出,第二水平滤波模块将第二缓冲器输出的第1列第5行的像素值进行水平方向滤波后输出,第三水平滤波模块将所述第三缓冲器输出的第1列第6行的像素值进行水平方向滤波后输出;垂直滤波模块对滤波后的第1 列第5行的像素值进行垂直方向滤波处理后输出;第四缓冲器存储经垂直方向滤波后的第 1列第5行的像素值;重复上述步骤直至第四缓冲器存储经垂直方向滤波后的第1列第M行的像素值。
5.如权利要求3所述的滤波方法,其特征在于,所述步骤Sl具体为将一帧原始图像沿水平方向以宽度P进行切割成N列,其中,P = D-2,D为缓冲器的深度。
全文摘要
本发明适用于视频图像处理技术领域,提供了一种用于对视频图像进行滤波操作的滤波电路及其滤波方法;滤波电路包括寄存器、第一缓冲器、第二缓冲器、第三缓冲器、第一水平滤波模块、第二水平滤波模块、第三水平滤波模块、垂直滤波模块和第四缓冲器。本发明提供的滤波电路采用水平滤波模块、垂直滤波模块以及容量小的缓冲器对沿水平方向切割后的图像数据按列进行滤波操作,电路结构简单、硬件资源少,电路效率高。
文档编号H04N5/213GK102215324SQ20101014681
公开日2011年10月12日 申请日期2010年4月8日 优先权日2010年4月8日
发明者李小明, 王强, 胡胜发, 许永永 申请人:安凯(广州)微电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1