实验一 Matlab_图像处理基本操作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一Matlab 图像处理基本操作和付立叶变换
一、matlab基本操作
1. 显示图像
>> I1=imread('D:\图像\LENA.BMP');
>> imshow(I1);
>> I2=imread('D:\图像\***.BMP');
>> imshow(I2);
2、检查内存(数组)中的图像:
>> whos
3、保存图像:
>> imwrite(I2,'lena_2G.png'); % 将图像由原先的bmp格式另存为png格式
4、多幅图像显示
>> I1=imread('D:\图像\LENA.BMP');
>> figure //出现图形显示窗口>> subplot(1,2,1),imshow(I1);
>> I2=imread('D:\图像\**.BMP');
>> subplot(1,2,2),imshow(I2);
二、傅里叶变换
1.目的:
a、理解傅里叶变换的原理
b、掌握傅里叶变换的性质
2.实验步骤:
a. 首先构造一幅黑白二值图像,在128×128的黑色背景中心产生一个4×4的白色方块,对其进行傅里叶变换;(Matlab中用fft2实现2D傅里叶变换)
b.把低频分量移到图象中心,而把高频分量移到四个角上;(方法有两种:
其一,在FT以前对测试图象逐点加权(-1)^(i+j);其二,利用FFTSHIFT函数);
c.利用图象增强中动态范围压缩的方法增强2DFT;(Y=C*log(1+abs
(X)));
d.构造一幅黑白二值图像,在128×128的黑色背景中令第32行至36行、第
32列至第36列的值为1(即产生一个4×4的白色方块),对其进行傅里叶
变换;
e. 将上图旋转300,再进行傅里叶变换 (imrotate )
f. 构造二幅黑白二值图像,在128×128的黑色背景中分别令第60行至68行、第60列至第68列的值为1,第64行至65行、第64列至第65列的值为1产生两幅图像,分别对这两幅图像进行傅里叶变换
3、原理分析、技术讨论、回答问题
a. 对于第二幅图像(第一步与第四步图像的比较),说明FOURIER 变换具有以下性质:
)//(20000),(),(N vy M ux j e v u F y y x x f +-⇔--π
b. 对于第三幅图像(第一步与第五步图像的比较),说明FOURIER 变换具有以下性质:
θcos r x = θs i n r y = αωc o s =u αωs i n
=v ),(),(00θαωθθ+⇔+F r f
c. 对于第四幅图像(第一步与第六步图像的比较),说明FOURIER 变换具有以下性质:
)/,/(|
|1),(b v a u F ab by ax f = 4、结果如下
六、M文件如下:
a=zeros(128,128);
a(63:66,63:66)=1;
A=fft2(a);
b=fftshift(A);
for i=1:128
for j=1:128
B(i,j)=log(1+abs(A(i,j)));
end
end
h=zeros(128,128);
h(32:36,32:36)=1;
H=fft2(h);
h1=imrotate(h,30);
H1=fft2(h1);
i=zeros(128,128);
i(60:68,60:68)=1;
I=fft2(i);
j=zeros(128);
j(64:65,64:65)=1;
J=fft2(j);
figure;
subplot(221),imshow(a);title('原图');
subplot(222),imshow(A);title('FT');
subplot(223),imshow(b);title('低中高角FT'); subplot(224),imshow(B);title('增强2DFT');
figure;
subplot(221);imshow(a);title('Step 1原图'); subplot(222);imshow(A);title('Step 1FT'); subplot(223);imshow(h);title('Step 4原图'); subplot(224);imshow(H);title('Step 4FT');
figure;
subplot(221),imshow(a);title('Step 1原图'); subplot(222),imshow(A);title('Step 1FT'); subplot(223),imshow(h1);title('Step 5原图'); subplot(224),imshow(H1);title('Step 5FT');
figure;
subplot(321);imshow(a);title('Step 1原图'); subplot(322);imshow(A);title('Step 1FT'); subplot(323),imshow(i);title('Step 6原图1'); subplot(324),imshow(I);title('Step 6原图1FT'); subplot(325),imshow(j);title('Step 6原图2'); subplot(326),imshow(J);title('Step 6原图2FT');