Matlab数字图像处理尝试之:[2]DFT变换

2025-10-15 10:40:29

1、 

>> I=imread('原始图像'); 读取图像

>>  X=rgb2gray(I);%图像灰度转换

>>subplot(2,2,1);

>>  imshow(I);显示原始图像

>>  title('原始图像');

>>  subplot(2,2,2);

>>  imshow(X);显示灰度图像

>>  Y=fft2(X);灰度图像傅里叶变换

>>  title('图像傅里叶变换');

>>  subplot(2,2,3);

>>  imshow(log(abs(Y)),[]);显示变换结果

>>  title('变换结果');

>>colormap(jet);设置彩色索引图

>>colorbar;显示彩色索引条

>>Z=fftshift(Y);傅里叶变换结果平移

>>subplot(2,2,4);

>>  imshow(log(abs(Z)),[]);显示平移结果

>>  title('图像傅里叶变换结果平移');

>>colormap(jet);设置彩色索引图

>>colorbar;显示彩色索引条

2、 

以上程序段是对傅里叶变换的结果进行平移,如下图DFTtest1、DFTtest2显示。对于一幅图像,图像中灰度变化比较缓慢的区域可以用较低频谱的正弦信号近似,而灰度变化比较大的边缘地带则要用高频正弦信号近似。一幅图像中大部分都是灰度变化缓慢的区域,只有一小部分是边缘,因此,其变换域的图像能量主要集中在低频部分(对应幅值较高),只有一小部分能量集中在高频部分(对应幅值较低)。

以下是DFTtest1

Matlab数字图像处理尝试之:[2]DFT变换

3、 以下是DFTtest2

Matlab数字图像处理尝试之:[2]DFT变换

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢