基于FPGA 的图像处理算法的研究
基于FPGA 的图像处理算法的研究
安春燕 海口经济学院 海口 571127
【文章摘要】
随着科学技术不断发展,微电子技术取得了进一步发展,实时图像处理逐渐渗透在多媒体、图像等领域中,其中FPGA 作为一项硬件图像处理技术,在提高图像处理质量和效率等方面具有十分重要的作用,如何更好地使用FPGA 实现对图像的处理受到业内越来越多的重视。本文将对FPGA 概念和系统总体设计方案进行分析和研究,并提出基于FPGA 图像处理算法,从而为实际图像处理工作提供支持。
【关键词】
FPGA ;图像处理算法;图像分辨率
0 前言
近年来,图像分辨率日渐提高,传统软件难以实现图像处理的实时性要求,在相关技术快速发展背景下,FPGA
等可编程器件应运而生,在很大程度上提高了图像处理系统的速度、集成度,并在相关领域得到了广泛推广和普及。因此,加强对FPGA 图像处理算法的研究显得尤为重要。
1 FPGA 概念
FPGA 主要是指建立在PAL、GAL 等可编程器件基础之上的一种现场可编程门阵列。
FPGA 自身具有很多优点,能够进行反复编程、擦除,另外,其开发过程,资金投入量较小,规模日渐提升,且保密效果良好,不仅能够有效解决定制电路的不足之处,也在一定程度上突破了传统可编程器件门路数的限制,未来发展前景较好。不仅如此,其在图像处理系统当中的应用,能够有效提高处理质量和效率,在推动实时图像处理工作进一步发展方面占据不可替代的位置。
2 系统总体设计方案
利用FPGA 系统进行图像处理主要是通过数字CCD
相机、A/D 转换芯片等部分共同发挥作用,其中数据缓存、处理及控制等模块需要在本系统中实现。
文章针对图像处理方案的设计主要将FPGA 图像处理模块作为核心和基础, 利用此模块实现图像平滑、滤波等处理,
即CCD 相机拍照——A/D
将图像信号转为数字信号——模块去噪处理——数字信号转换为图像。由于图像处理类型存在一些差异,在选择相机等方面要结合实际情况进行选择,提高图像处理质量,例如: CCD 相机处处模式可以选择PAL 制式等, A/D 转换芯片可以选择可视频解码系列芯片,其能够将输入视频模拟信号解码成为数字信号,为图像处理工作奠定良好的基础。
3 基于FPGA 图像处理算法
3.1 FPGA 基本算法
结合图像噪声类型的不同,可以分为三个类型:椒盐、高斯及泊松噪声,不同的噪声类型相对应的算法也存在着一定差别。目前,图像处理滤波方法主要存在均值、中值以及维纳等滤波形式,其中中值滤波针对椒盐噪声处理具有明显的优势。
均值滤波算法主要是指线性滤波,针对图像当前像素,选择一个合适的窗口,
利用多个像素组成该窗口,代替源像素点灰度值的一种途径。另外,由于数据分布具有平衡性特征,滤波窗口可以选择方形、十字形等类型,在具体滤波过程中,普遍选择方形窗口,值得注意的一点是,在实际操作过程中,如果滤波器尺寸增加,
噪声消除效果势必会得到提升,但是,与此同时,图像锐化程度也会相应减少,图像也会变得模糊。因此,均值滤波算法并具有良好的性能,难以实现广泛推广和普及。
中值滤波方法是人们经常使用的预处理方法,在消除噪声、提高图像平滑度等方面表现突出,相比较而言,其比其他线性滤波器能够兼顾去除噪声和确保图像清晰度。中值滤波作为领域运算,将其中的像素按照灰度级别进行排序的一种方法,而后计算出组内中间值作为输出像素值,此方法的关键在于平均值决定整个图像的输出,基于此,中值滤波对极限像素值并不敏感,能够在消除独立噪声点的同时,兼顾图像清晰度,特别是在椒盐噪声处理方面,能够取得很好地效果。
直方图均衡化作为一种灰度数字图像增强方法,能够将灰度重新均衡的分布在整个区域内,其具有较强的通用性,能够有效提高任何图像的整体效果,受到人们越来越多的关注,特别是在一些实际运用中,还能够对图像的一个部分进行均衡化处理。
3.2 中值滤波算法与FPGA 结合
通过对基本算法进行分析,我们不难发现,中值滤波具有较为明显的优势,基于此,本文将对中值滤波算法在FPGA 的应用进行研究。中值滤波器在运用过程中,可以设置为3×3 方形窗口形成的9 个像素值进行平均值计算,并经过30 次比较,确定为中间输出值,诚然,经过30 次比对,耗时长、且容易造成资源浪费,基于此,提高处理速度和资源利用率,应选择一种快速种植滤波算法,仅需要19 次比对便能够获取中值,通过这种方式,不仅能够减少比对次数,提高工作效率,还能够节约成本,如下图:首先,A1、A2、A3 选择组内输入最大值、中值及最小值,而后将其输入到下线B1、B2、B3 和C 中, 进行有效的比对,得出9 个模块的中值, 从而实现对图像的处理。
快速中值滤波算法流程图
4 结论
根据上文所述,FPGA 作为一项可编程排列,在图像处理工作中的应用,不仅能够有效提高图像质量,还能够实现快速处理目标。因此,在具体操作过程中,要明确图像处理目标,选择不同的方法,进行科学、合理的处理,提高图像质量,消除噪声,从而促使系统能够最大程度发挥积极作用。
【参考文献】
[1] 刘洋,卫洪春,杜诚.VC++6.0 在灰度数字图像增强处理中的应用[J]. 计算机与信息技术,2010,
18(03):259-261.
[2] 李元帅,周国忠,刘儒贞. 图像中值滤波硬件算法及其在FPGA 中的实现[J]. 计算机应用,2012, 20(05):12-14.