数字图像处理

五、实验实施步骤

(一) 将工作路径设为D:\你的名字的拼音,把指定的图像放入该路径下。

(二) 建一个.m文件,完成如下操作:

1、 读取图片,分别将之转换为灰度图和二值图,存留转换结果图。

代码:

>> a=imread('D:\tianlinyu\lena.jpg');%读入图像

aGrayPic = rgb2gray(a);%转换为灰度

I = im2bw(a,0.5); %转换为二值图

subplot(1,3,1); %subplot(a,b,c)中a代表所画图形的行数 b代表 所画图形的列数c代表所画图形的序号

imshow(a);%显示原图像

title('原图像');%加图像标题

subplot(1,3,2);

imshow(aGrayPic);%显示灰度像

title('灰图像');

>> subplot(1,3,3);

>> imshow(I);%二值图

>> title('二值图');

效果图:

2、 将灰度图重新采样,分别为4倍和16倍,存留重采样结果图。

代码:

a=imread('D:\tianlinyu\00104.bmp');%读入

b=rgb2gray(a);%转灰度

figure %新建

imshow(b);%显示图片

title('灰度图像');%显示

for m=1:2

figure

[width,height]=size(b);% 读取图像的尺寸信息quartimage=zeros(floor(width/(2*m)),floor(height/(2*m)));%采取宽和高

k=1;

n=1;

for i=1:(2*m):width %扫描图像的每一行

for j=1:(2*m):height %扫描图像的每一列

quartimage(k,n)=b(i,j);

n=n+1;

end %结束列扫描

k=k+1;

n=1;

end %结束列扫描

imshow(uint8(quartimage));%显示

if m==1

title(''4倍采样''); %显示采样后的图像

else

title('16倍采样'); %显示采样后的图像

end %结束列扫描

end %结束列扫描

3、 将原256级灰度转为128、64、32级灰度,存留重量化结果图。

代码:

%读入照片

a=imread('D:\tianlinyu\00107.bmp');

%量化128级灰度

c=(0.5)*a;c1=floor(c);

%64级灰度

d=(0.25)*a;d1=floor(c);

%32级灰度

e=(0.125)*a;e1=floor(e);

figure %建立一个新的图形

subplot(1,3,1),imshow(c1,[0,127]);title('128级灰度图像');%显示图片标题

subplot(1,3,2),imshow(d1,[0,63]);title('64级灰度图像');

subplot(1,3,3),imshow(e1,[0,31]);title('32级灰度图像');

(三)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180809A11JV500?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励