基于VC的补零DFT在图像处理中的应用
2014-04-29金昊
金昊
引言:随着当前计算机技术不断发展和成熟,运用现代科技进行图像处理变得越来越频繁。但是在图像处理过程中,图像中的宽度和高度不能够均是2的整数次幂,那么这就需要通过一种计算技术来使得其高度和宽度变成2的整数次幂,这就是我们所说的补零DFT,通过此种方法来解决二维图像中数据长度不等于2的整数次幂的问题。本文针对补零DFT在图像处理中的应用情况进行研究,为实现图像处理合理化打下基础。
离散傅立叶变换(DFT)一直在数字信号处理领域中占据着非常重要的位置,即使科技快速发展,各种数字理论不断涌现,也难以磨灭其成为很多数字信号处理系统的基础。随着DFT理论不断发展和完善,傅立叶变换算法将N点DFT的乘法计算量从N2直接降低为N/2log2N次,而在实际的图像处理过程中,其长度远远不能够满足这一要求,因此在所需要处理的数据后面进行补零,可以达到原来长度的2整次幂倍,这样在不改变其实际长度的情况下增加数据的长度,如此处理对于结果其本身没有很大的差异,而使用FFT算法可以有效的提高数据的处理速度和分析效率[1]。
一、理论相关分析
(一)一维离散信号傅立叶变换
若一个一维长度为N的序列,x(n)={x0,x1,···xn-1}傅里叶,将其定义为:
我们在进行讨论长度的时候以N不被2的整次幂情况,如果N不是2的整次幂,那么就必然存在着一个正整数r使得r2-1 (二)二维离散信号傅立叶变换 引入二维傅立叶变换,其主要是在处理数字图像中进行频谱研究,并且将其作为傅立叶变换进行推广,二维傅立叶变化定义为: 二维的DFT这种可分离性为我们提供了计算二维DFT的方法,当然这也是二维傅立叶变换运算分解为垂直方向和水平方向上的两次以为DFT计算,不满足条件要求的点可以进行补零,使得其均能够满足2的整次幂[3]。 二、程序设计 对于获取到的数字图像,在计算机中的保存形式是以多维图文件形式保存,具体的保存顺序如下:先是位图文件头BITMAPFILEHEADER到位图信息头BITMAPINFOHEADER,然后到调色板RGBQUAD,最后到图像数据[4]。 我们采用的Visual C是一种基于面向对象的编程工具,其特点是可视化、基于类、面向对象等。对图像进行处理时,必须需要开发的软件具备基本的处理功能,该功能由类CBitmap_dib来实现,类CBitmap_dib对图像的读取和存储流程如下图所示: 利用类CBitmap_dib可以对图像进行二维离散快速傅里叶变换,其具体的操作步骤为以下几个方面: 1、首先是获得原未处理图像数据区的首地址pBitmapData以及图像高度和宽度; 2、计算出采用傅里叶变换的图像高度与宽度,然后对图像的高度与宽度进行判断,为了计算方便,先将图像高度和宽度扩展为同一数值,如果判断的高度和宽度都不为2的整数次幂,那么需要对图像的垂直与水平方向补0,促使其为2的整数次幂; 3、按照行列的顺序读取数据区中的值,将读取的值存储到复数存储区f中; 4、将复数存储区中的值按照行方向统一调用一维FFT函数,得到的数据存储在复数存储区t中; 5、将复数存储去t中的数据按照列方向统一调用一维FFT函数,得到的数据存储在复数存储区f中; 6、将整个得到的变换后的数据转化为图像数据,并显示出来。 三、处理结果 我们在对限制长度序列的后面进行补零,其实质并未改变其有效长度,同时也没有改变所需要处理的数据信息,而是通过补零方法来提高DFT的分辨率,但是其没有改变信号频谱的分辨率[5]。根据序列的补零操作,使得序列的长度呈现2的整次幂倍数,此时则可以使用FFT算法来提高其分辨率。實际的数字图像处理过程中,不仅降低了整个补零操作的计算难度,而且还有效的提升了计算的速度,实际运算过程中将要避免数字图像处理过程中序列长度必须以2的整次幂作为标准的限制。计算的过程中根据傅立叶的变化高度和宽度来对图像的数据进行判定,即使高度和宽度之间的不是2的整次幂,可以通过补零方法来使得其符合计算的要求,从而实现计算过程中将宽度和高度扩展为一定的数值,使得其满足计算的标准。本次研究主要是基于VC程序设计,结合了两种FFT计算方法,将补零DFT应用于数字图像的处理之中,从而将传统的以2整次幂为标准的数据图像处理进行了改进,使得一些不是2整次幂的数据图像进行补零,然后再进行计算,通过DFT补零方法改进了图像处理的传统路径,应用新型计算方法结合计算机VC计算进行运算,为图像处理提供重要保障。 结束语 随着计算机技术的不断发展,对于数据图像处理也获得了极大的进步,传统的数据图像处理多以高宽为2的整次幂为基础。但是随着数字时代的来临,图像处理上出现了很多不是以2的整次幂的标准图像,这就需要跳出传统数据图像处理的限制,寻求满足于非2整次幂的图像处理。因此补零DFT算法在这类非2整次幂的图像处理上得到了很好的应用。通过本文的研究,希望能够为研究补零DFT在数据图像上的应用相关人员提供借鉴。 参考文献 [1]李亚平.VC与MATLAB的混合编程在图像处理中的应用[J].电脑知识与技术,2011,24:6010-6012. [2]唐苏湘.图像处理常用软件的比较与应用[J].四川兵工学报,2009,05:140-141+144. [3]陈凯.基于竞选算法的图像匹配的研究及应用[D].广东工业大学,2014. [4]高艳红.图和数学形态学在图像预处理中的应用研究[D].西安电子科技大学,2014. (作者单位:南京总参第六十研究所)