爱滋美食网
您的当前位置:首页数字图像处理实验报告精选模板

数字图像处理实验报告精选模板

来源:爱滋美食网


数字图像处理实验报告精选模板

实验报告

实验名称

课程名称图像变换及频域滤波数字图像处理

姓名成绩

班级学号

日期2012.11.15地点综合实验楼4楼

1.实验目的

(1)编写快速傅里叶变换算法程序,验证二维傅里叶变换的平移性和旋转不变性;

(2)实现图像频域滤波,加深对频域图像增强的理解;

(3)总结实验过程(实验报告,左侧装订):方案、编程、调试、结果、分析、结论。

2.实验环境(软件、硬件及条件)

Windows_P

Matlab7.1

3.实验方法

运用数字图像处理所学的图像变换及滤波知识,运用MATLAB工具,编写程序并实现要求。

4.实验题目和分析

实验题目:

(1)产生实验图像f1(_,y)(128_12小,黑色区域灰度值为0,中心白色区域大小为16_,灰度值等于255),用MATLAB中的fft2函数对其进行FFT:

①同屏显示原图f1和FFT(f1)的幅度谱图;

②若令f2(_,y)=(-1)f1(_,y)重复以上过程,比较二者幅度谱的异同,简述理由;

③若将f2(_,y)顺时针旋转45度得到f3(_,y),试显示FFT(f3)的幅度谱,并与FFT(f2)的幅度谱进行比较。

(2)对实验图像XXX(256_256大小、256级灰度)进行频域的理想低通、高通滤波,同屏显示原图、幅度谱图和低通、高通滤波的结果图。分析:

a.先用矩阵构建图像,再对图像进行二维快速傅XX变换,最后用MATLAB中的mesh函数显示其幅度谱图;

b.对原图像进行频谱中心化,再进行二维快速傅XX变换显示其频谱图,与前面对比;

c.用最邻近插值法旋转图像再进行频谱中心化,显示其幅度谱图,观察幅度谱的变化;

e.用fopen函数打开XXX图像,imshow显示原图像,mesh显示幅度谱图;f.低通滤波:图像的能量大部分集中在幅度谱的低频和中频部分,而图像的边缘和噪声对应于高频部分。因此能降低高频成分幅度的滤波器就能减弱噪声的影_+y

高通滤波:由于图像中的细节部分与其高频分量相对应,所以高通滤波可以对图像进行锐化处理。高通滤波与低通滤波相反,它是高频分量顺利通过,使低频分量受到削弱。

对理想高通滤波后的图像用直接灰度变换方法作了灰度范围的扩展。利用循环和选择语句将距离中心点一定距离之内或之外的点置为0,然后用上述函数显示结果图。

5.实验结论

(1)构建图像幅度谱时注意mesh函数的使用,并使用代码为mesh(log(abs(filter1)+1)),否则图像经滤波后无明显变化;

(2)频谱中心化后的频谱谱中心出现峰值;观察频谱发现,频谱也随着图像顺时针旋转了45度;

(3)对图像频域进行理想低通滤波:当R=5时,滤波后的图像很模糊,无法分辨;当R=11时,滤波后的图像比较模糊,但基本能分辨出人脸的形状;当R=24时,滤波后的图像有些模糊,能分辨出脸上的器官轮廓,但由于理想低通滤波器在频域的锐截止特性,滤波后的图像有较明显的振铃现象;当R=88时,滤波后的图像比较清晰,但高频分量损失后,图像边沿与文字变的有些模糊,在图像的边框附近仍有振铃现象。

对图像频域进行理想低通滤波:当R=2时,滤波后的图像无直流分量,但灰度的变化部分基本上都保留了;当R=8时,滤波后的图像在文字和图像边缘部分的信息仍然保留;当R=24时,滤波后的图像只剩下文字和白条边缘等信号突变的部分。

1.实验结果显示

1.(1)

(2)令f2(_,y)=(-1)_+yf1(_,y),则图像f2与FFT(f2)的幅度谱图如下:

(3)将f2(_,y)顺时针旋转45得到f3(_,y),则f3及FFT(f3)的幅度谱图如下:

2.原图像及其幅度谱图

R=88时的理想低通滤波结果图和滤波频谱图

R=24时的理想低通滤波结果图和滤波频谱图

R=11时的理想低通滤波结果图和滤波频谱图

R=5时的理想低通滤波结果图和滤波频谱图

理想高通滤波图像:

R=2时的理想高通滤波结果图和滤波频谱图

R=8时的理想高通滤波结果图和滤波频谱图

R=24时的理想高通滤波结果图和滤波频谱图

2.实验代码

第一题.(1)

imgBlk=zeros(128,128);

imgBlk(33:96,57:72)=1;

f1=abs(fft2(imgBlk));

figure('Name','原始图像及其幅度谱','NumberTitle','off');subplot(1,2,1);

imshow(imgBlk,[]);

title('原图像f1');

subplot(1,2,2);

mesh(f1);

title('FFT(f1)的幅度谱图');

tmp=imgBlk;

fori=1:128

forj=1:128

ifmod(i+j,2)

tmp(i,j)=-tmp(i,j);end

f2=abs(fft2(tmp));

figure('Name','频谱中心化及其幅度谱图','NumberTitle','off');subplot(1,2,1);

imshow(tmp,[]);

title('图像f2');

subplot(1,2,2)

mesh(f2);

title('FFT(f2)的幅度谱图');

imgRot=zeros(size(imgBlk,1),size(imgBlk,2));

theta=-pi/4;

M=round(size(imgBlk,1)/2);N=round(size(imgBlk,2)/2);

foru=-M:M-1

forv=-N:N-1

i=cos(-theta)u-sin(-theta)v;

j=sin(-theta)u+cos(-theta)v;

i=round(i);

j=round(j);

ifabs(i)

imgRot(u+M+1,v+N+1)=imgBlk(i+M,j+N);end

tmp1=imgRot;

fori=1:size(imgRot,1)

forj=1:size(imgRot,2)

ifmod(i+j,2)

tmp1(i,j)=-tmp1(i,j);

f3=abs(fft2(tmp1));

figure('Name','旋转图像及其幅度谱图','NumberTitle','off');subplot(1,2,1);

imshow(tmp1,[]);

title('f1旋转45度再中心化后得到的图像f3');

subplot(1,2,2);

mesh(f3);

title('FFT(f3)的幅度谱图');

第二题.

clear;closeall;

fid=fopen('XXX','r');

image0=fread(fid,[256,256],'uint8');

Im=fft2(image0);

Imr=abs(fftshift(Im));

figure();

subplot(1,2,1);

imshow(image0,[]);

subplot(1,2,2);

mesh(log(Imr));

%理想低通滤波

filter1=fftshift(Im);

R1=input('输入低通滤波半径:');

for_=1:256

fory=1:256

if(_-128)^2+(y-128)^2>R1^2

filter1(_,y)=0;

image1=abs(ifft2(filter1));subplot(1,2,1);

imshow(image1,[]);

subplot(1,2,2);

mesh(log(abs(filter1)+1))

%理想高通滤波

filter2=fftshift(Im);

R2=input('输入高通滤波半径:');for_=1:256

fory=1:256

if(_-128)^2+(y-128)^2

image2=abs(ifft2(filter2));subplot(1,2,1);

imshow(image2,[]);

subplot(1,2,2);

mesh(log(abs(filter2)+1));

显示全文