• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 数字 像空域滤波算法的FPGA设计与实现

数字 像空域滤波算法的FPGA设计与实现

录入:edatop.com     点击:

在图像通信、遥感图像分析、医学成像诊断等应用领域,为了便于显示、观察或进行进一步的处理,常常需要对原始的数字图像进行特征提取(如边缘检测、边缘锐化)、噪声平滑滤波、几何校正等处理,这类图像处理技术称为图像的预处理。在实际应用中,空域滤波算法被广泛地应用于图像的预处理技术中。

空域滤波算法是图像增强技术的一种,直接对图像的象素进行处理,不需要进行变换。常见的滤波算子如锐化算子、高通算子、平滑算子等,可以完成图像的边缘提取、噪声去除等处理。这些滤波算子尽管功能不同,实现方法却都是类似的,都是通过模板卷积的方法来实现的。

VLSI技术的迅猛发展为数字图像实时处理技术提供了硬件基础,其中FPGA(现场可编程门阵列)的特点使其非常适用于数字图像处理。本文研究的就是在FPGA设计平台上设计硬件电路,实现数字图像的空域滤波算法。

1 数字图像空域滤波算法

数字图像空域滤波算法的实现步骤如图1所示,左边的部分是要处理的图像的某一部分,中间是对图像进行处理的3×3模板。

\

具体的处理步骤是:

将模板在图像上漫游,并将模板中心与图中某个象素位置重合;

将模板上的系数与模板下对应的象素相乘;

将所有的乘积相加。

把和(模板的输出响应)赋给图像中对应模板中心位置的象素。图1中所示是图像的一部分,S0~S8是象素点的灰度值,K0~K8是3×3的模板系数。用这个3×3模板来进行空域滤波的过程是:将模板中心点,即模板系数为K0的点所在位置,与图像中灰度值为S0的点重合,模板的输出响应R为:

R=K0*S0+K1*S1+…+K8*S8 (1)

这样增强后的图像在原来位置为(x,y)处的象素点的灰度值就由S0变为R。如果对图像中的每个象素点都这样进行模板操作,就可以得到增强后的图像在所有位置的新灰度值。如果在设计滤波器时给模板系数赋予不同的值,就可以得到不同的高通、低通效果。

本文采用的图像是256×256大小的灰度图像,滤波模板3×3大小。如何设计硬件电路来完成上述空域滤波算法,分析上述算法实现过程,可以得出结论,实现空域滤波算法可采用3个三阶的FIR滤波器+延时单元来描述。

2 FIR数字滤波器的FPGA设计

在设计实现空域滤波算法的3个三阶的FIR滤波器+延时单元的电路时,要考虑的主要问题是:如何缩短硬件电路设计时的关键路径以及提高系统的数据吞吐率。为解决这些实际的FPGA设计中的关键问题,在具体设计电路时,主要从以下几个方面进行考虑:

2.1 FIR数字滤波器与流水线结构

现代微处理器、数字信号处理器、高速数字系统设计中都广泛应用了流水线(Pipelining)技术,其核心设计思想是把一个周期内执行的逻辑操作分成几步较小的操作,在多个高速的时钟周期内完成。每一次逻辑小操作的结果都存储在寄存器中,被高速时钟同步,在下一流水线单元使用,因而是速度优化中最常用的技术之一,可以大大地提高数字系统的总体运行速度。

下面分析一下三阶的FIR滤波器的基本结构和采用了流水线技术后的FIR结构,以及FIR滤波器的数据广播结构。

三阶有限冲击响应(FIR)数字滤波器可以表示如下:

y(n)=ax(n)+bx(n-1)+cx(n-2) (2)

这个三阶的FIR滤波器实现的结构,如图2所示。

\

 

来源:现代电子技术

上一篇:60Hz时基信号发生器
下一篇:Hi-Fi功率放大器电路和电源供电电路

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图