此页面上的内容需要较新版本的 Adobe Flash Player。

获取 Adobe Flash Player

实验二 图像变换(DFT、DCT变换)

一、实验目的

1、熟练掌握DFT、DCT变换的MATLAB实现;
2、利用MATLAB完成(DFT、DCT)变换,求出图像的频谱;


二、实验原理及内容

二维傅立叶变换的matlab实现:
fft: 一维DFT变换
ifft: 一维DFT反变换
fft2: 二维DFT变换
ifft2: 二维DFT反变换
fftn: N维DFT变换
fftn: N维DFT反变换
fftshift: 将经过fft、fft2和ffn变换后的频谱中心(0频)移到矩阵或向量的2、离散余弦变换(DCT)
离散余弦变换的matlab实现:
dct2:二维DCT变换
idct2:二维DCT反变换
内容
1、编程求给定图像lena.bmp的傅立叶频谱;
2、将给定图像lena.bmp旋转45度,求其傅立叶频谱;
3、编程求给定图像lena.bmp的DCT频谱;
4、利用DCT反变换求原始图像;
5、利用DCT实现对图像lena.bmp的压缩,压缩率为80%。


三、实验报告要求

1、显示原图、以及傅立叶变换后的图像的频谱,并分析说明;
2、显示旋转45度后的图像、以及傅立叶变换后的图像的频谱,并分析说明;
3、显示原图、以及图像lena.bmp的DCT频谱,并给出分析说明;
4、显示DCT反变换获得的图像,并比较变换前后图像的差异,求出平均差值。
5、显示利用DCT实现对图像lena.bmp的压缩后的图像。

四、思考题

1、离散傅立叶变换、离散余弦变换有什么区别和联系?
2、为什么一般的DCT变换采用的分块?分块过大或过小会出现什么问题?