索引图像由一个数据矩阵组成,X
,和颜色映射矩阵,地图
.地图
是一个米类的-by-3数组双
包含范围为[0,1]的浮点值。每行地图
指定单一颜色的红色、绿色和蓝色组件。索引图像使用像素值到颜色映射值的“直接映射”。每个图像像素的颜色是通过使用对应的值来确定的X
作为一个索引地图
.的值X
因此必须是整数。值1指向中的第一行地图
,值2指向第二行,依此类推。使用语句显示索引图像
图像(X);colormap(地图)
颜色映射通常与索引图像一起存储,并在使用索引图像时自动加载该图像imread
函数。但是,您不局限于使用默认颜色映射—使用您选择的任何颜色映射。属性的描述CDataMapping
描述如何更改所使用的映射类型。
下一个图说明了索引图像的结构。图像中的像素由整数表示,这些整数是存储在颜色图中的颜色值的指针(索引)。
图像矩阵中的值与颜色映射之间的关系取决于图像矩阵的类。如果图像矩阵是一类的双
,值1指向颜色映射中的第一行,值2指向第二行,依此类推。如果图像矩阵是一类的uint8
或uint16
,有一个偏移量-值0指向颜色映射中的第一行,值1指向第二行,依此类推。偏移量也用于图形文件格式,以最大限度地增加可支持的颜色数量。金宝app在上面的图像中,图像矩阵是一类的双
.因为没有偏移量,所以值5指向颜色映射的第五行。
一种灰度图象,有时称为灰度图象强度图像,是一个数据矩阵我
其值表示一定范围内的强度。灰度图像表示为单个矩阵,该矩阵的每个元素对应于一个图像像素。矩阵可以是一类的双
,uint8
,或uint16
.虽然灰度图像很少用色图保存,但仍然使用色图来显示它们。本质上,灰度图像被视为索引图像。
该图描述了类的灰度图像双
.
要显示灰度图像,请使用显示亮度图像
(“图像尺度”)函数,它使您能够设置强度值的范围。显示亮度图像
缩放图像数据以使用完整的色彩图。使用的双输入形式显示亮度图像
要显示灰度图像,例如:
显示亮度图像(我[0,1]);colormap(灰色);
的第二个输入参数显示亮度图像
指定所需的强度范围。的显示亮度图像
功能显示我
通过将范围内的第一个值(通常为0)映射到第一个颜色映射项,将第二个值(通常为1)映射到最后一个颜色映射项。介于两者之间的值在其余色图颜色中呈线性分布。
虽然通常使用灰度色图显示灰度图像,但也可以使用其他色图。例如,下面的语句显示灰度图像我
蓝色和绿色的阴影:
显示亮度图像(我[0,1]);colormap(冬季);
显示一个矩阵一个
将任意范围的值作为灰度图像,使用的单参数形式显示亮度图像
.有一个输入参数,显示亮度图像
将数据矩阵的最小值映射到第一个颜色映射项,并将最大值映射到最后一个颜色映射项。例如,这两行是等价的:
显示亮度图像(一);colormap(灰色)imagesc(A,[min(A(:))) max(A(:))]);colormap(灰色)
RGB图像,有时称为RGB图像真彩图像,存储为米——- - - - - -n-by-3数据数组,为每个像素定义红色、绿色和蓝色组件。RGB图像不使用调色板。每个像素的颜色是由存储在像素位置的每个颜色平面中的红色、绿色和蓝色强度的组合决定的。图形文件格式将RGB图像存储为24位图像,其中红色、绿色和蓝色组件各为8位。这将产生1600万种颜色。现实生活中的图像可以被精确复制,因此被称为“真彩色图像”。
RGB MATLAB®数组可以是类双
,uint8
,或uint16
.在类的RGB数组中双
,每个颜色分量都是0到1之间的值。颜色分量为(0,0,0)的像素显示为黑色,颜色分量为(1,1,1)的像素显示为白色。每个像素的三个颜色分量沿数据数组的第三维存储。例如,像素(10,5)的红色、绿色和蓝色分量被存储在RGB(10、5、1)
,RGB (10 5 2)
,RGB(10、5、3)
,分别。
显示真彩色图像RGB
,使用图像
功能:
图像(RGB)
下一个图显示了类的RGB图像双
.
要确定(2,3)处像素的颜色,查看存储在(2,3,1:3)中的RGB三元组。假设(2,3,1)包含该值0.5176
,(2,3,2)包含0.1608
,(2,3,3)包含0.0627
.(2,3)处像素的颜色为
0.5176 0.1608 0.0627