matlab-图形采样及灰度级转换

目录

一、图像采样

1、实验内容

2、采样原理

3、实验程序

4.实验结果与分析

5.思考题

二、图像类型转换

1、实验内容

2.实验原理

3、程序

4.实验结果与分析

5. 思考题


一、图像采样

1、实验内容

试对任意一幅图像分别进行 4 倍和 16 倍减采样,查看其减采样效果。

2、采样原理

根据图像采样原理,给出图像实现图像采样的过程。

3、实验程序

  %%程序一
  a = imread('1.jpg');
  b = rgb2gray(a);
  [wid, hei] = size(b);
  figure
  imshow(b)
  % 4倍减采样
  quartimg = zeros(wid/2+1,hei/2+1);
  i1 = 1;
  j1 = 1;
  for i = 1:2:wid
      for j = 1:2:hei
          quartimg(i1,j1) = b(i,j);
          j1 = j1+1;
      end
      i1 = i1 +1;
      j1 = 1;
  end
  figure
  imshow(uint8(quartimg))
  
   % 16倍减采样
  quartimg = zeros(wid/4+1,hei/4+1);
  i1 = 1;
  j1 = 1;
  for i = 1:4:wid
      for j = 1:4:hei
          quartimg(i1,j1) = b(i,j);
          j1 = j1+1;
      end
      i1 = i1 +1;
      j1 = 1;
  end
  figure
  imshow(uint8(quartimg))

 matlab-图形采样及灰度级转换_第1张图片

  %%程序二
  a = imread('1.jpg');
  b = rgb2gray(a);
  [wid, hei] = size(b);
  figure
  imshow(b)

  % 4倍减采样
  b4 = b(1:2:end,1:2:end);
  subplot(235);
  imshow(b4);
  
  % 16倍减采样
  b16 = b(1:4:end,1:4:end);
  subplot(236);
  imshow(b16);

4.实验结果与分析

由图实验结果可知,在采用不同的减采样过程中,其图像的清晰度和图像尺寸均发生了变化。

5.思考题

将一幅图如果进行 4 倍、 16 倍和 64 倍增采样会出现什么情况?是否有其他方法可以实
现图像的采样?

二、图像类型转换

1、实验内容

试将一幅图转换成 256 级灰度图像, 64 级灰度图像, 32 级灰度图像, 8 级灰度图像
和 2 级灰度图像。

2.实验原理

根据图像分类原理,将给出的实验图像变换成为不同类型的图像。

3、程序

  a = imread('1.jpg');
  b = rgb2gray(a);
  [wid, hei] = size(b);
  img256 = zeros(wid, hei);
  img64 = zeros(wid, hei);
  img32 = zeros(wid, hei);
  img8 = zeros(wid, hei);
  img2 = zeros(wid, hei);
  for i=1:wid
      for j=1:hei
          img256(i,j)=floor(b(i,j)/1);
      end
  end
  figure
  subplot(151);
  imshow(uint8(img256),[0,255])
  for i=1:wid
      for j=1:hei
          img64(i,j)=floor(b(i,j)/4);
      end
  end
  subplot(152);
  imshow(uint8(img64),[0,63])
  for i=1:wid
      for j=1:hei
          img32(i,j)=floor(b(i,j)/8);
      end
  end
  subplot(153);
  imshow(uint8(img32),[0,31])
  for i=1:wid
      for j=1:hei
          img8(i,j)=floor(b(i,j)/32);
      end
  end
  subplot(154);
  imshow(uint8(img8),[0,7])
  for i=1:wid
      for j=1:hei
          img2(i,j)=floor(b(i,j)/128);
      end
  end
  subplot(155);
  imshow(uint8(img2),[0,1])

4.实验结果与分析

由图实验结果可知,在图像灰度转换过程中,其图像的清晰度随着灰度级的降低而降低。

matlab-图形采样及灰度级转换_第2张图片

5. 思考题 

如何将一副彩色图像转换成灰度图像?

答:采用 rgb2gray() 函数。

  %% 灰度转化
  a = imread('2.bmp');
  b = rgb2gray(a);
  figure;
  subplot(121);
  imshow(a);
  subplot(122);
  imshow(b);

matlab-图形采样及灰度级转换_第3张图片

★★★★ 感谢您的阅读!!!

你可能感兴趣的:(matlab图像处理,matlab,图像处理)