灰度图像、黑白图像、二值图像和彩色图像的区别

Python030

灰度图像、黑白图像、二值图像和彩色图像的区别,第1张

一、数值不是不同:

1、彩色图像:每个像素由R、G、B三个分量表示,每个通道取值范围0~255。数据类型一般为8位无符号整型。

2、二值图像(黑白图像):每个像素点只有两种可能,0和1。0代表黑色,1代表白色。数据类型通常为1个二进制位。

3、灰度图像:灰度图像通常是在单个电磁波频谱(如可见光)内测量每个像素的亮度得到的。用于显示的灰度图像通常用每个采样像素8位的非线性尺度来保存,这样可以有256级灰度。

二、色彩通道不同:

1、彩色图像每个像素通常是由红(R)、绿(G)、蓝(B)三个分量来表示的,分量介于(0,255)。RGB图像每一个像素的颜色值(由RGB三原色表示)直接存放在图像矩阵中,由于每一像素的颜色需由R、G、B三个分量来表示。

2、灰度图像是每个像素只有一个采样颜色的图像,这类图像通常显示为从最暗黑色到最亮的白色的灰度,尽管理论上这个采样可以任何颜色的不同深浅,甚至可以是不同亮度上的不同颜色。

3、黑白图像在计算机图像领域中黑白图像只有黑色与白色两种颜色。二值图像,即一幅二值图像的二维矩阵仅由0、1两个值构成,“0”代表黑色,“1”代白色。

三、应用不同:

1、彩色图像是多光谱图像的一种特殊情况,对应于人类视觉的三基色即红、绿、蓝三个波段,是对人眼的光谱量化性质的近似。三基色模型是建立图像成像、显示、打印等设备的基础,具有十分重要的作用。

2、当表示人物,风景的图像,二值图像只能展示其边缘信息,图像内部的纹理特征表现不明显。这时候要使用纹理特征更为丰富的灰度图像。一般二值化图像的应用领域在车牌识别,图像的字符提取。

参考资料来源:百度百科-灰度图像

参考资料来源:百度百科-二值图像

参考资料来源:百度百科-彩色图象

灰度图是用不同等级的灰度来显示整个图像,儿二值黑白图像里面只存在黑白两色,使用Matlab对现有图像进行处理的时候,如果对象是一个彩色图像,将会创建一个三维矩阵,如果是一个灰度图像,则创建一个二位矩阵,因为使用二维矩阵就能完全记录灰度图像像素信息。

如果对象是彩色的图像,生成的三维矩阵基本结构是这样的,按照RGB模式分成三层,其中R、G、B各占一层,单独将每一层拿出来显示都是灰度图,而常见图像一般都是点阵图像,每一个像素都需要用RGB模式来记录数据,如(255,255,255)就是白,(0,0,0)就是黑,我们的三维矩阵中R二位矩阵记录的就是所有像素点得R色数据记录,自然G、B层二维矩阵就是记录的所有像素点的G分色信息和B分色信息

如果源数据是彩色图像,则你只需要拿出一个二位矩阵,然后将这个二维矩阵的元素数据进行修改,将所有的点进行判断,如果大于128,则将此点数据赋值为255,如果小于128,则全部赋值为0,如此所有的像素点的数据就仅限于0和255,显示出来就是二值黑白图像

不知道你问的是在同一图形中添加点(类似画散点图)还是要把屏幕一分为多。

添加的话,用完plot,添加点用points,添加线用lines。

简单点的应用类似:

plot(X,Y)

points(X,Y1)

这样的感觉。

一分为多的话,用split.screen。

上我自己最近写的代码做个例子:

jpeg(filename="geeseP3.jpeg") #画jpeg图

split.screen(c(1,2)) #分屏幕为左右两边

screen(1) #屏幕1预备输出

plot(X2,Y,type="p",xlab="X2",ylab="Y",main="Plotting of X2 and Y")

screen(2) #屏幕2预备输出

plot(X2,Y,type="l")

dev.off()