浅析数字图像带通滤波器的工作原理与设计.docVIP

  • 5
  • 0
  • 约1.7千字
  • 约 2页
  • 2017-05-10 发布于广东
  • 举报

浅析数字图像带通滤波器的工作原理与设计.doc

浅析数字图像带通滤波器的工作原理与设计.doc

  浅析数字图像带通滤波器的工作原理与设计   摘要:在数字技术极大 发展 的今天,利用硬件处理图像可以获得比纯软件处理高的多的速度。由于FPGA具有可重复编程,开发成本低,可迅速向ASIC转型等优点,越来越多的图像处理算法被应用到FPGA中。为此,本文提出了一种基于FPGA的数字图像带通滤波器。文中首先分析了Xilinx Virtex II器件的优点,然后具体讨论了带通滤波器的实现。结果证明方案可行。   关键词:数字图像;Virtex II 器件;FPGA;FFT;带通滤波   Virtex II是Xilinx公司设计的一系列FPGA芯片种类之一。Virtex II内部主要由可重构逻辑单元(CLB)、可编程输入输出模块(IOB)、数字时钟管理单元(DCM)、互联资源,以及内部的乘法器,块存储器组成。   可重构单元CLB:在器件中以阵列分布。提供基本的组合逻辑和时序,其基本元素包括两个寄存器和一个三态缓冲门。两个寄存器可配置为触发器或者锁存器。在实际应用中,单个的CLB通过外部连接矩阵与其他CLB构成复杂的逻辑单元。CLB是FPGA的核心部分,硬件的逻辑以及缓存功能都通过一定数目的CLB互联得以实现。   数字管理单元(DCM):主要部分是数字锁相环。通过对输入时钟进行锁相改善时钟质量,同时也能完成倍频、分频。   输入单元(IOB)负责对输入输出的信号的标准进行转换,可接收发送3.3V、2.5V、1.8V各种信号,也可以直接输入差分信号。   通过块存储器和乘法器设计,Virtex II器件在一定程度上解决了传统FPGA器件存储空间小,运算能力差的缺点。Virtex II器件内部的双口RAM有A、B两个端口,每个端口的信号包括时钟、使能、读写等际实现的时候采用同一模块来实现。   当图像输入模块输入图像数据满一帧时,将输出控制信号通知FFT模块对存放在RAM中的数据进行 行列FFT变换,同时图像输入模块再接收下一帧图像。FFT模块变换完成后通知带通滤波模块进行带通滤波运算,带通滤波运算完成后则通知图像输出模块取走数据。滤波的全过程实行流水作业模式。流水作业与乒乓操作保证了图像滤波的实时性。      二、FFT模块设计      提高FFT速度的两个主要途径是采用流水结构和并行运算,采用高基数结构也可以提高速度,只是用FPGA实现时必须综合考虑系统要求、结构特点及片内资源。针对本系统自身特点,这里按时间抽选算法进行分析。本系统采用基-2DIT行列算法。   N点基-2DIT行列算法信号流图如图4。       根据上面的流图可以设计出FFT/IFFT模块框图如图5。   其中系数寄存单元保存富里叶变换的系数。循环单元负责循环寻址,蝶形处理单元负责蝶形运算。地址发生器、循环单元和控制器一起产生RAM地址和系数地址。蝶形处理单元根据地址发生器提供的地址对RAM和系数寄存单元进行访问,先按行后按列对图像数据进行碟形运算,处理后的数据存放进RAM。   三、带通滤波器设计      由于乘法运算需要消耗大量的FPGA内部资源而且速度也很慢,而LUT查找表法虽然需要消耗一定的内存空间但可以获得较高的处理速度,又因为实际的图像滤波并不需要全范围的滤波,所以我们将预先划定带通滤波器的窗口并做成查找表的形式。       地址发生器根据象素(X,Y)的频率坐标产生地址,读取ROM中的对应位与0作比较,然后根据判断结果决定是否改动存放在RAM中的富里叶变换系数。为简单起见,本系统只设计了一张滤波器表。      四、硬件测试结果      本系统带通滤波部分采用一片XC2V1500实现,当对一幅256 256Lena图像滤波,lThreshold和hThreshold分别取100,20000时。       本文采用的流水作业模式和乒乓操作保证了图象处理的实时性,带通滤波器原理简单,具有一定的通用性。值得进一步研究的地方在于FFT变换模块的结构精简和快速化。

文档评论(0)

1亿VIP精品文档

相关文档