matlab怎么做傅里叶变换及其可视化
的有关信息介绍如下:在做图像处理时通常需要将图像转化一下,以方便提取图像信息,如利用傅里叶变换对图像变换提取其特征,下面给大家介绍简单一下matlab做傅里叶变换的方法。
首先,对图像而言其在matlab中就是一个矩阵,故首先建立一个简单的矩阵将其图像显示;如图所示,建立一个50×50的0矩阵,并将其中的元素值设为1。
f=zeros(50,50);
f=(6:24,13:17);
再设置图像显示位置,使用函数subplot()控制,如subplot(m,n,p);表示将图像显示区域设置为m行n列,放在第p个位置。
subplot(1,2,1);
然后就是将创建的矩阵显示为图像,使用imshow()函数,标题title();如图所示。
imshow(f);%显示图像
title('图像显示');%设置标题
对此二值图像进行二维傅里叶变换,即 F=fft2(f); %对图像进行二维傅里叶变换。变换结果(复数)如图所示。
再对二维傅里叶变换结果(复数),取绝对值abs(F)然后再取其对数,将其可视化,如图所示
F2=log(abs(F));%对傅里叶变换结果取对数可视化
最后一步即是将取对数后的变换结果以图像显示,将其放在第二个位置
subplot(1,2,2);%设置第二个图像显示区域
imshow(F2,[-1 5],'notruesize');
title('频域结果显示');
如图所示。notruesize表示不安图像实际大小显示,适应窗口大小。