8位和16位图像
索引图像
双精度浮点数(64位)默认MATLAB®数字数据的表示。然而,减少内存需求来处理图像,你可以将图片存储为8位或16位无符号整数使用数字类uint8
或uint16
,分别。图像数据矩阵的类uint8
被称为一个8位图像;图像数据矩阵的类uint16
被称为一个16位图像。
的图像
函数可以直接显示8位或16位的图像没有将他们转换为双精度。然而,图像
解释当图像矩阵是矩阵值略有不同uint8
或uint16
。具体的解释取决于图像类型。
如果类的X
是uint8
或uint16
之前,它的值是1所抵消被用作colormap指数。值0 colormap指向第一行,第二行值1点,等等。的图像
命令自动供应适当的补偿,所以显示方法是否相同X
是双
,uint8
,或uint16
:
图像(X);colormap(地图);
colormap指数抵消uint8
和uint16
数据是为了支持标准图像文件格式,通常将图万博1manbetx像数据存储在索引形式colormap 256条目。偏移量允许操作和显示图像的形式使用更节约内存uint8
和uint16
数组。
由于抵消,你必须将加1uint8
或uint16
索引图像双
。例如:
X64 =双(×8)+ 1;或X64 =双()+ 1;
相反,减去1把双
索引图像uint8
或uint16
:
×8 = uint8 (X64 - 1);或乘16 = uint16 (X64 - 1);
强度图像
的范围双
图像阵列通常是[0,1],但8位图像强度的范围通常是[0,255)和16位强度图像的范围通常是[0,65535]。使用以下命令来显示一个8位强度图像灰度colormap:
显示亮度图像(I, 255年[0]);colormap(灰色);
将强度图像双
来uint16
,乘以65535:
I16 = uint16(圆(I64 * 65535));
相反,转换后除以65535uint16
强度图像双
:
I64 = (I16) / 65535年翻一番;
RGB图像
一个8位RGB图像的颜色组件是整数的范围(0,255年)而不是浮点值的区间[0,1]。一个像素的颜色组件(255255255)显示为白色。的图像
命令显示一个RGB图像类是否正确双
,uint8
,或uint16
:
图像(RGB);
将RGB图像双
来uint8
,乘以255:
RGB8 = uint8(圆(RGB64 * 255));
相反,转换后除以255uint8
RGB图像双
:
RGB64 = (RGB8) / 255年翻一番
将RGB图像双
来uint16
,乘以65535:
RGB16 = uint16(圆(RGB64 * 65535));
相反,转换后除以65535uint16
RGB图像双
:
RGB64 = (RGB16) / 65535年翻一番;
支持uint8和uint16数学操作万博1manbetx
使用下面的MATLAB函数uint8
和uint16
数据,首先将数据转换为类型双
:
例如,如果X
是一个uint8
形象,把数据类型双
:
fft(双(X))
在这些情况下,输出总是双
。
的总和
函数返回的结果在同一类型作为输入,但提供了一个选择使用双精度计算。
MATLAB整数数学
看到对整数算术操作类更多信息在数学函数是如何工作的数据类型不翻倍。
大多数图像处理工具箱™函数接受uint8
和uint16
输入。如果你计划去做复杂的图像处理印尼
t8或uint16
数据,考虑包括工具箱MATLAB计算环境。
其他8位和16位数组的支持万博1manbetx
您可以执行其他操作uint8
和uint16
数组,包括:
将一个8位RGB图像转换为灰度
您可以对整数数据执行算术运算,这使您能够将图像类型没有首先将数字图像数据的类。
这个例子中读取一个8位RGB图像到一个MATLAB变量,并将其转换为灰度图片:
rgb_img = imread (“ngc6543a.jpg”);%加载图片图像(rgb_img)%显示RGB图像轴形象;
请注意
这张照片是太空望远镜科学研究所的支持下创建,由大学天文研究协会,万博1manbetxInc .)从美国宇航局合同nas5 - 26555,并与许可复制光环/太空望远镜科学研究所。数字再现的图像产生的光环/太空望远镜科学研究所获得免版税。学分:摩根大通(J.P.哈林顿和kj Orkowski(马里兰大学)和美国国家航空航天局。
计算单色亮度通过结合RGB值根据NTSC标准,这眼睛的灵敏度系数相关适用于RGB颜色:
我= .2989 * rgb_img (:,: 1)…+ .5870 * rgb_img (:: 2)……+ .1140 * rgb_img (:,:, 3);
我
是一个整数值从最小的强度图像的零:
分钟(我(:))ans = 0
255:
马克斯(我(:))ans = 255
显示图像,使用灰度colormap 256值。这样就避免了需要规模data-to-color映射,这是必需的,如果你使用colormap不同的大小。使用显示亮度图像
函数的情况下colormap不包含一个条目为每个数据值。
现在显示图像在一个新的图使用灰色colormap:
图;colormap(灰色(256));图像(I);轴形象;
相关信息
其他colormaps一系列不同颜色不断从黑暗到光明能产生可用的图像。例如,试着colormap(夏天(256))
对于一个典型的示波器。看到colormap
更多的选择。
的照亮
功能使您能够增加或减少的颜色强度colormap弥补计算机显示器差异或增强微弱或明亮的区域的图像的可见性(的范围)的另一端。
摘要图像类型和数字类
这个表总结了数据矩阵元素是如何解读为像素的颜色,这取决于图像类型和数据类。
图像类型 |
双数据 |
uint8或uint16数据 |
---|---|---|
索引 |
图像是一个米——- - - - - -n数组的整数范围[1,p]。 Colormap是一个p3的浮点值数组范围[0,1]。 |
图像是一个米——- - - - - -n数组的整数范围(0,p1]。 Colormap是一个p3的浮点值数组范围[0,1]。 |
强度 |
图像是一个米——- - - - - -n数组的浮点值的线性扩展生产colormap指数。典型的值范围是[0,1]。 Colormap是一个p3数组的浮点值区间[0,1],通常灰度。 |
图像是一个米——- - - - - -n的整数数组线性扩展生产colormap指数。典型的值范围是[0,255]或[0,65535]。 Colormap是一个p3数组的浮点值区间[0,1],通常灰度。 |
RGB(真彩) |
图像是一个米——- - - - - -n3的浮点值数组范围[0,1]。 |
图像是一个米——- - - - - -n3的整数数组范围[0,255]或[0,65535]。 |