1.
进入
Matlab 7.11
集成开发环境,并打开脚本编辑器。
2.
在脚本编辑器中编写一段程序,要求:
(1)
读入存放在
lena.jpg
中的原始图像,将其假象为一幅连续图像;
(2)
以采样间隔
(16, 16)
对原始图像进行采样,要求采样点的值为原图像
16
×
16
块的均值,像点大小为原来的
16
×
16
倍;这样的采样要求就意味着对原始
图像进行
16
×
16
的块处理,且用
uint8
函数对块均值取整量化后,取代块中所
有原像素的值;
(3)
显示该采样图像;
(4)
以采样间隔
(8, 8)
对原始图像进行采样,要求采样点的值为原图像
8
×
8
块的均值,像点大小为原来的
8
×
8
倍;
(5)
在另一个窗口中显示该采样图像;
(6)
以采样间隔
(4, 4)
对原始图像进行采样,要求采样点的值为原图像
4
×
4
块的均值,像点大小为原来的
4
×
4
倍;
(7)
在另一个窗口中显示该采样图像;
(8)
在另一个窗口中显示原始图像。
3.
将编写的程序保存为
Example2_1Digitize1.m
。
4.
运行该程序,并比较原始图像与各采样图像,以结果来检验采样的效果。
5.
修改原来的程序,将四幅图像放置在一个窗口中显示对比,并将结果保存在
Example2_1Digitize2.m
中。
%%Example2_1Digitize1
I=imread('greenleaf.jpg');%%读入图片
I=rgb2gray(I);%%图像灰度化
J=blkproc(I,[16 16],'uint8(ones(16).*mean2(x))');%%采样间隔16*16
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
imshow(J);
title('采样间隔16*16')
F=blkproc(I,[8 8],'uint8(ones(8).*mean2(x))');%%采样间隔8*8
figure(H);
imshow(F);
title('采样间隔8*8')
P=blkproc(I,[4 4],'uint8(ones(4).*mean2(x))');%%采样间隔4*4
figure(H);
imshow(P);
title('采样间隔4*4')
figure(H);
imshow(I);
title('原图像')
%%Example2_1Digitize2
I=imread('greenleaf.jpg');%%读入图片
I=rgb2gray(I);%%图像灰度化
J=blkproc(I,[16 16],'uint8(ones(16).*mean2(x))');%%采样间隔16*16
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(221);
imshow(J);
title('采样间隔16*16')
F=blkproc(I,[8 8],'uint8(ones(8).*mean2(x))');%%采样间隔8*8
subplot(222);
imshow(F);
title('采样间隔8*8')
P=blkproc(I,[4 4],'uint8(ones(4).*mean2(x))');%%采样间隔4*4
subplot(223);
imshow(P);
title('采样间隔4*4')
subplot(224);
imshow(I);
title('原图像')