數(shù)字圖像處理:圖像的基本運(yùn)算2
實(shí)驗(yàn)?zāi)康模?/strong>
1、掌握?qǐng)D像的點(diǎn)運(yùn)算。
2、掌握?qǐng)D像的代數(shù)運(yùn)算。
3、掌握?qǐng)D像的縮放運(yùn)算。
4、掌握?qǐng)D像的旋轉(zhuǎn)運(yùn)算。

實(shí)驗(yàn)內(nèi)容及要求:
1、求圖像的線性點(diǎn)運(yùn)算、非線性點(diǎn)運(yùn)算、反白及二值化,給出實(shí)驗(yàn)結(jié)果并進(jìn)行分析。
參考代碼如下:
I=imread('lenna.bmp');
figure;
subplot(1,3,1);
imshow(I);
title('原圖');
J=imadjust(I,[0.3;0.6],[0.1;0.9]);
subplot(1,3,2);
imshow(J);
title('線性運(yùn)算');
I1=double(I);
I2=I1/255;
C=2;
K=C*log(1+I2);
subplot(1,3,3);
imshow(K);
title('非線性運(yùn)算');
M=255-I;
figure;
subplot(1,3,1);
imshow(M);
title('反白');
N1=im2bw(I,0.4);
N2=im2bw(I,0.7);
subplot(1,3,2);
imshow(N1);
title('二值化閾值0.4');
subplot(1,3,3);
imshow(N2);
title('二值化閾值0.7');

2、加法運(yùn)算,給出實(shí)驗(yàn)結(jié)果并進(jìn)行分析。
參考代碼如下:
I=imread('i_lena.jpg');
I=rgb2gray(I);
J=imread('rice.png');
I=im2double(I);
J=im2double(J);
K=I+0.3*J;
subplot(1,3,1);
imshow(I);
title('人物圖');
subplot(1,3,2);
imshow(J);
title('背景圖');
subplot(1,3,3);
imshow(K);
title('相加后的圖');
imwrite(K,'i_lena1.jpg');

3、減法運(yùn)算,給出實(shí)驗(yàn)結(jié)果并進(jìn)行分析。
參考代碼如下:
A=imread('i_lena1.jpg');
B=imread('rice.png');
C=A-0.3*B;
subplot(1,3,1);
imshow(A);
title('混合圖');
subplot(1,3,2);
imshow(B);
title('背景圖');
subplot(1,3,3);
imshow(C);
title('分離后的圖');

4、乘法運(yùn)算,給出實(shí)驗(yàn)結(jié)果并進(jìn)行分析。
參考代碼如下:
A=imread('i_lena.jpg');
A=rgb2gray(A);
A=im2double(A);
subplot(1,3,1);
imshow(A);
title('原圖');
B=zeros(256,256);
B(40:200,40:200)=1;
subplot(1,3,2);
imshow(B);
title('掩模圖');
K=A.*B;
subplot(1,3,3);
imshow(K);
title('局部圖');

5、縮放運(yùn)算,給出實(shí)驗(yàn)結(jié)果并進(jìn)行分析。
參考代碼如下:
A=imread('i_lena.jpg');
B1=imresize(A,1.5);
B2=imresize(A,[420 384]);
C1=imresize(A,0.7);
C2=imresize(A,[150 180]);
figure;
imshow(B1);
title('全比例放大圖');
figure;
imshow(B2);
title('非全比例放大圖');
figure;
imshow(C1);
title('全比例縮小圖');
figure;
imshow(C2);
title('非全比例縮小圖');




6、旋轉(zhuǎn)運(yùn)算,給出實(shí)驗(yàn)結(jié)果并進(jìn)行分析。
參考代碼如下:
I=imread('i_lena.jpg');
J=imrotate(I,45);
K=imrotate(I,90);
subplot(1,3,1);
imshow(I);
subplot(1,3,2);
imshow(J);
subplot(1,3,3);
imshow(K);
