matlab计算正交变换,图像的正交变换matlab.pdf

图像的正交变换matlab

《数字图像处理》课程实验报告

实验名 :图像的正交变换实验

1

院系: 自动化测试与控制系

班级: 1201132

姓名: 李丹阳

学号: 1120110113

哈尔滨工业大学

电气工程及自动化学院

光电信息工程

2015 年12月13 日

一、实验原理

二、实验内容

三、实验结果与分析

1、傅立叶变换

A) 绘制一个二值图像矩阵,并将其傅立叶函数可视化。

(傅里叶变换A)的实验结果

B)利用傅立叶变换分析两幅图像的相关性,定位图像特征。读入图像‘cameraman.tif’,

抽取其中的字母‘a’。

1

(傅里叶变换B)的实验结果

离散余弦变换(DCT)

使用dct2对图像 ‘linyichen.jpg’进行DCT变换。

5

0

-5

(离散余弦变换A)的实验结果

将上述DCT变换结果中绝对值小于 10的系数舍弃,使用idct2重构图像并与原图像

比较。

离散余弦变换

2

附主要程序代码:

f=zeros(30,30);

f(5:24,13:17)=1;

imshow(f,'notruesize')

F=fft2(f);

F2=log(abs(F));

figure,imshow(F2,[-15],'notruesize');colormap(jet);

F=fft2(f,256,256);

figure,imshow(log(abs(F)),[-15],'notruesize');colormap(jet);

F2=fftshift(F);

figure,imshow(log(abs(F2)),[-15],'notruesize');colormap(jet);

B)利用傅立叶变换分析两幅图像的相关性,定位图像特征。读入图像‘cameraman.tif’,

抽取其中的字母‘a’。

bw=imread('cameraman.tif');

a=bw(59:71,81:91);

imshow(bw);

figure,imshow(a);

C=real(ifft2(fft2(bw).*fft2(rot90(a,2),256,256)));%求相关性

figure,imshow(C,[]);

thresh=max(C(:));

figure,imshow(C>thresh-10)

figure,imshow(C>thresh-15)

1. 离散余弦变换(DCT)

A) 使用dct2对图像 ‘linyichen.jpg’进行DCT变换。

RGB=imread('linyichen.jpg');

imshow(RGB)

I=rgb2gray(RGB);%转换为灰度图像

figure,imshow(I)

J=dct2(I);

figure,imshow(log(abs(J)),[]),colormap(jet(64));colorbar;

B) 将上述DCT变换结果中绝对值小于 10的系数舍弃,使用idct2重构图像并与原

图像比较。

RGB=imread('linyichen.jpg');

I=rgb2gray(RGB); %转换为灰度图像

J=dct2(I);

figure,imshow(I)

你可能感兴趣的:(matlab计算正交变换)