数字图像的图像类型及变换


 

空间色彩:RGB空间色彩、CMY空间色彩、HSI空间色彩

颜色模型的分类:RGB模型、HSV模型、YCbCr模型、NTSC模型

 搞清楚这几种彩色模型的原理和转换

图像在计算机上的显示类型:二值图像、灰度图像、彩色图像(伪彩色图像和真彩色图像)

matlab中的四种基本图像类型:索引图像、灰度图像、RGB图像、二值图像  

搞清楚这几种图像类型的原理和转换

 

0、图像的读入与显示

函数:

A=imread('1.jpg');

imshow(A)%显示图片

 



 

1、彩色图片转换为灰度图片

函数:rgb2gray()

  我们通过计算机显示屏看到的图像,都是由RBG三通道图片组合而成(可以仔细看显示屏,都会有红蓝绿三种小LED组合),这就是三基色,每个颜色都有255个取值,共有255*255*255中庞大的颜色群。而灰度图像,只有255个灰度级,通过公式就可以把RBG的图像转换成灰度图了

    GRAY=0.2989*R+0.5870*G+0.1140*B

  matlab为我们提供rbg2gray这个函数来实现他们之间的转化


例子:

 

实验结果:

如果图片本来是灰度图像,那又是什么结果呢

显然没有任何变化

小结:

  把RBG彩色图像变成灰度图像,能够节省下很多的数据量,方便下一步的处理。变成灰度图片后,再转换成二值图像,就更加方便了。 

 



  2、图像的二值化处理

  二值化是对图像纯粹的黑白处理,也就是像素上点的灰度值全部是0或255,减少图像的数据量,突出目标的轮廓特征。

  图像上的点是黑是白,就需要一个中间值来判断,这个值就是阈值,用函数lev=graythresh(imdata),然后就是二值化了 bwimg = im2bw( imdata, lev)。

例子:

运行结果:

 

小结:

  1、二值化的这个阈值的选择很重要,看,这个图片并不能很好的反应出照片的特征,这能显示大体的轮廓,这个的适用范围很有限

  2、彩色图像是m*n^255*255*255(RBG模型),灰度图像是m*n^255,二值化的图像是m*n^2,需要处理的数据量逐渐减少



3、图片转化为负片

函数:imadjust()

  首先,知道一下负片的概念,就是以前胶卷的底片,它的颜色和正常照片的正好相反,比如黑色就变成白色,浅黑就变成浅白色,红色变成青色等等

  然后,了解下背后的原理,如灰度图片,是由很多像素组成,每个像素都是在0~255之间的一个值,0是黑色,255就是白色,中间的就是灰色地带,0的负片就变成了255,(纯黑变纯白),黑白图片看起来很容易解释,但彩色图片就很少见到它的负片了,一般是RGB图像,RGB三个值都取反一下,就变成我们不知道的色彩,有些陌生,今天拿几种颜色实验一下:

    

  最后就用实例,看图解释


 

A=imread('star.jpg');
A1=imadjust(A,[0,1],[1,0]); 
figure,
subplot(211);imshow(A);title('原图');
subplot(212);imshow(A1) ;title('负片');

实验结果:

  

小结:

  1、以前好看的图片变成负片以后,开始一看,真不知道是什么鬼,吓死人,但了解原理后知道,这只是对照片色彩的相反颜色,看来颜色的效果不容忽视

   2、另外就是imadjust(A,[0,1],[1,0]) 这里了,这里可以自己设置数字,而[0,1]和[1,0]是系统默认值,就是原来的54变成了(255-54)了




 

总结: 

 1、收获

  今天的实验,了解matlab中彩色图像,灰度图像和二值图像,逐级的转化,和他们之间的特征:

  彩色图像到灰度图像—— GRAY=0.2989*R+0.5870*G+0.1140*B

  灰度图像到二值图像—— 找到lev

  另外,通过对负片的了解,知道255这个值得变化对图片产生很大的影响

 2、遗憾

  对RBG模型,HSV模型缺乏感性的认识,要对它做实验了解

  对索引图像缺乏了解


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM