仲恺农业工程学院图像处理实验二 联系客服

发布时间 : 星期三 文章仲恺农业工程学院图像处理实验二更新完毕开始阅读7c365a45ed630b1c58eeb543

实验二 图像灰度、滤波处理、MATLAB自制动画

一、实验目的

1、掌握图像灰度转换、去色;

2、了解图像频率域高斯低通滤波、空域高斯低通滤波、sobel空域滤波器、sobel频域滤波器的操作实例; 3、了解MATLAB自制一些微小的动画; 4、了解自制动画的一些相关算法及实现操作;

二、实验内容

1、取一幅风景图片; 2、将这幅图像进行灰度处理;

3、之后依次进行频率域高斯低通滤波、空域高斯低通滤波、sobel空域滤波器滤波、sobel频域滤波器滤波操作;

4、取十几张大小一致,且具有联系的图片,图片内容在先后顺序上具有一定联系;

5、通过算法把这些图片进行连接起来,形成动画效果;

三、实验工具

PC机,MATLAB软件

四、实验原理与步骤

1、打开MATLAB,新建M文件,之后进行灰度处理(要求512*512) ,得到如下结果:

>> f=imread('yp.JPG'); >> f=rgb2gray(f);

>> f=imresize(f,[512 512],'bicubic'); >> imshow(f);

>> imwrite(f, 'huidu.jpg');

2、进行频率域高斯低通滤波,结果如下:

Y=fft2(double(f));

Imshow(log(1+abs(fftshift(Y)))); figure, imshow(real(ifft2(Y))); H=fspecial('gaussian', 15, 7); Imshow(imfilter(f,H));

title('频率域高斯低通滤波');

imwrite(imfilter(f,H),'频率域高斯低通滤波.jpg');

3、接着进行空域高斯低通滤波处理,结果如下:

Hf= freqz2(H,size(f)); G=Hf.*Y

Imshow(real(ifft2(G))); title('空域高斯低通滤波');

imwrite(real(ifft2(G)),'空域高斯低通滤波.jpg');

4、接着再进行sobel空域滤波器滤波和sobel频域滤波器滤波,结果如下:

sobel空域滤波器 h=fspecial('sobel') freqz2(h)

PQ = 2*size(f);

H = freqz2(h,PQ(1),PQ(2)); H1 = ifftshift(H);

gs = imfilter(double(f),h);

gf=dftfilt(f,H1); imshow(gs,[ ]);

title('sobel空域滤波器'); sobel频域滤波器

figure,imshow(gf,[ ]); title('sobel频域滤波器')

5、打开MATLAB,新建M文件,之后进行一下算法运算,得到一个微小动画:

I=cell(1,15); for b=1:15

m1=imread([int2str(b),'.jpg']); I{b}=m1; imshow(I{b}); M(:,b)=getframe; s=0;

for t=1:1000000 s=s+t; end end

movie(M,3)

五、实验总结

在这个实验中,我对图像处理技术有了更多的了解了,掌握了灰度处理,了解了图像频率域高斯低通滤波、空域高斯低通滤波、sobel空域滤波器、sobel频域滤波器的滤波操作,其次我还认识了MATLAB自制动画的相关算法,同时也这个软件有了更多的了解,对一些基本操作有了更全面的认识,在实验中,我学到了MATLAB这个软件编译运行的快捷操作,也自行调试了界面的人性化,这样能提高工作效率对

MATLAB这个软件在图像处理方面有了更深层次的了解,也加深对该软件的基本操作的认识,对今后学习有更大的帮助。