找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2900|回复: 1

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

[复制链接]

19

主题

10

回帖

760

积分

村里打铁的

UID
219
威望
0
机械币
149
活力
0
发表于 2012-7-12 11:42:58 | 显示全部楼层 |阅读模式
  摘要:在数字技术极大发展的今天,利用硬件处理图像可以获得比纯软件处理高的多的速度。由于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两个端口,每个端口的信号包括时钟、使能、读写等控制信号以及完全独立的地址线和数据线。这种完全的双口RAM为滤波算法所需的数据缓存提供了硬件基础。
  
  一、数字图像带通滤波原理
  
  首先对图像进行二维FFT变换,对其频域系数按照如下规则修正然后再将其逆FFT 变换得到滤波后的图像。
  IF(U^2+V^2))hThreshold) W(U,V)=0;(1)
  其中U,V为数字频域坐标,lThreshold,hThreshold分别为频率下限,频率上限,W(U,V)为富里叶变换系数。算法的复杂度为3N*Log2N+2N+N2,其中N为图像每行像素数(假定图像长宽比为1)。
  本系统硬件框图如图3.1。
  
  其中控制寄存器保存带通滤波的滤波器表索引号,详见下面带通滤波器设计部分。双口SDRAM负责存储外部输入的原始数据及经过FFT&IFFT运算后的中间数据。图像输入模块,双口RAM,控制逻辑三者之间采用乒乓操作模式,如图3.2所示。FFT/IFFT模块在实际实现的时候采用同一模块来实现。
  当图像输入模块输入图像数据满一帧时,将输出控制信号通知FFT模块对存放在RAM中的数据进行 行&列FFT变换,同时图像输入模块再接收下一帧图像。FFT模块变换完成后通知带通滤波模块进行带通滤波运算,带通滤波运算完成后则通知图像输出模块取走数据。滤波的全过程实行流水作业模式。流水作业与乒乓操作保证了图像滤波的实时性。
  
  二、FFT模块设计
  
  提高FFT速度的两个主要途径是采用流水结构和并行运算,采用高基数结构也可以提高速度,只是用FPGA实现时必须综合考虑系统要求、结构特点及片内资源。针对本系统自身特点,这里按时间抽选算法进行分析。本系统采用基-2DIT行列算法。
  N点基-2DIT行列算法信号流图如图4。
  
  根据上面的流图可以设计出FFT/IFFT模块框图如图5。
  其中系数寄存单元保存富里叶变换的系数。循环单元负责循环寻址,蝶形处理单元负责蝶形运算。地址发生器、循环单元和控制器一起产生RAM地址和系数地址。蝶形处理单元根据地址发生器提供的地址对RAM和系数寄存单元进行访问,先按行后按列对图像数据进行碟形运算,处理后的数据存放进RAM。

19

主题

10

回帖

760

积分

村里打铁的

UID
219
威望
0
机械币
149
活力
0
 楼主| 发表于 2012-7-12 11:43:24 | 显示全部楼层
  三、带通滤波器设计
  
  由于乘法运算需要消耗大量的FPGA内部资源而且速度也很慢,而LUT查找表法虽然需要消耗一定的内存空间但可以获得较高的处理速度,又因为实际的图像滤波并不需要全范围的滤波,所以我们将预先划定带通滤波器的窗口并做成查找表的形式。
  
  地址发生器根据象素(X,Y)的频率坐标产生地址,读取ROM中的对应位与0作比较,然后根据判断结果决定是否改动存放在RAM中的富里叶变换系数。为简单起见,本系统只设计了一张滤波器表。
  
  四、硬件测试结果
  
  本系统带通滤波部分采用一片XC2V1500实现,当对一幅256 256Lena图像滤波,lThreshold和hThreshold分别取100,20000时。
  
  本文采用的流水作业模式和乒乓操作保证了图象处理的实时性,带通滤波器原理简单,具有一定的通用性。值得进一步研究的地方在于FFT变换模块的结构精简和快速化。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|机械村 ( 渝ICP备17010994号-1|渝公网安备50022702001048号 )

GMT+8, 2024-11-21 23:22 , Processed in 0.013451 second(s), 3 queries , Gzip On, Redis On.

Powered by 机械村

Copyright © 2012- Jixiecun.com

快速回复 返回顶部 返回列表