傅里叶变换与反变换在点阵图像信息压缩处理中应用.docVIP

傅里叶变换与反变换在点阵图像信息压缩处理中应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
傅里叶变换与反变换在点阵图像信息压缩处理中应用

傅里叶变换与反变换在点阵图像信息压缩处理中应用   【摘要】本文采用MATLAB软件编写程序,利用一维或二维的傅里叶变换函数,实现了对二维图像信息的傅里叶变换,通过程序对其频谱结果进行处理,利用傅里叶反变换函数,实现了对二维图像信息的压缩,进而展示了傅里叶变换与反变换在信号的时域、频域处理方面的作用。本文有助于对信号处理原理的学习与理解。   【关键词】二维信号 二维离散 傅里叶变换 傅里叶反变换 图像压缩 MATLAB      一、引言   对信号的分类,可以从不同的角度进行,通常可以分为时域信号、频域信号,一维信号、二维或多维信号,连续信号、离散信号等。将信号采用数学函数表达式表示,给信号的连续性、确定性的研究提供了必要的研究基础,而常见的一维或二维的信号,如连续的一维声音信号、连续的二维图像信号,它们在时域上离散表示时,通常采用相关的数据表示。本文研究的内容,主要是时域上离散的二维图像信号数据与其频域信号的变换、处理问题。      二、二值化离散   对于二维离散数据可以理解为:它们原先是时间函数在一定采样频率下离散的结果。对一张图像、一个指纹、一个汉字等二维平面上的信息采样,可得到二维离散数据。离散后的数据,一般为正实数内的数据,为简便起见,下面对一个汉字进行二维数据进行二值化离散,即非0即1的离散。   将汉字“王”字的二维二值化数据,可用如图1(a)所示的矩阵描述,在f(m,n)矩阵中,将汉字中的笔画上的点用“1”表示,无笔画的地方用“0”表示。图1(b)为将图1(a)中“0”去掉以后的情形,由此可见,图1(a)所示的矩阵能基本表示出“王”字的信息。当然,点阵数越多,所描述出的汉字信息也越多,准确性越好,失真越小。      图1 “王”字的16*16点阵矩阵      对二维连续信号的傅里叶变换,定义为   (1)   其中p、q为空间频率,通常f(m,n)为空间频率的复数值函数,它也有模值与相角,其模值为二维幅度谱(能量谱、密度谱)。由于式(1)可表示为      因此,对二维连续信号f(m,n)的傅里叶变换可视为先沿一个方向进行一维的傅里叶变换,再沿另一个方向进行一维的傅里叶变换。同理,对傅里叶反变换也可以两次按一维进行。   与一维连续傅里叶变换相似,式(1)为二维连续信号的傅里叶变换,要想用计算机处理,必须将其离散化,二维离散傅里叶变换为   (2)   式(2)中,离散矩阵f(m,n)的行与列为M行、N列,M与N可以不相等,但都为正整数。如在图1中M=N=16。      三、软件实现   在MATLAB软件中,对一维数组a进行傅里叶变换使用函数fft(a)进行,对二维数组c进行傅里叶变换,可以利用对一维数组进行傅里叶变换的函数,进行二维数组的傅里叶变换函数,其形式为:fft(fft(c).′).′,也可以直接利用对二维数组的傅里叶变换函数fft2(c)进行;对二维数组c的傅里叶反变换函数,其形式为ifft2(c)。下面的MATLAB程序实现对图1所示的二维离散数据的进行显示、傅里叶变换、能量谱的显示、频谱压缩、傅里叶反变换、还原显示等处理,程序行右边以“%”开头的是程序的注释。      imshow(f,notruesize)%显示矩阵f点阵图,如图2所示。   a=input(aaaaa=)%等待从命令窗口输入任意数,目的是看清图2结果。   F = fft2(f);%对矩阵f进行2维傅里叶变换,赋值到F中   F0=F;%将F保存到F0中,后续还要用到F   F1 = log(abs(F));%对变换结果取模值,并取常用对数,数越大,幅度越强   imshow(F1,[-1 4],notruesize);%以五种颜色显示频谱,   colormap(jet); colorbar%结果如图3所示   a=input(bbbbb=) %等待从命令窗口输入任意数      由图3可知,频谱的中心部分对应图像的高频分量,其能量较低,它们在傅里叶变换反变换中作用较小,为此,可将中心部分的频谱去掉,清空为零,,然后进行傅里叶变换反变换,得到点阵图案。为此,可继续执行如下程序。   for i=8:1:10;%对第8到第10行   for j=6:1:12;%对第6到第12列   F( i,j )=0;%频谱的中间清空(为0)   end%列循环结束   end%行循环结束   f1=ifft2(F)%对中空的频谱做傅里叶反变换   f2=abs(f1)%对变换结果取绝对值,因为变换结果为有正、负的实数   imshow(f2,notruesize) %将矩阵f2中的数据显示出来,结果与图2完全相同   a=input(

文档评论(0)

151****1926 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档