文档

8位和16位图像

索引图像

双精度(64位)浮点数是默认的MATLAB®数字数据的表示。但是,为了减少处理图像所需的内存,可以使用numeric类将图像存储为8位或16位无符号整数uint8要么UINT16,分别。数据矩阵具有类的图像uint8称为8位图像;数据矩阵具有类的图像UINT16被称为16位图像。

图像功能可以显示8位或16位的图像直接不转换为双精度。然而,图像当图像矩阵是解释矩阵值略有不同uint8要么UINT16。具体的解释取决于图像类型。

如果Xuint8要么UINT16,它的值在用作颜色映射索引之前偏移1。值0指向colormap的第一行,值1指向第二行,依此类推。的图像命令自动提供适当的偏移量,因此显示方法是否相同X,uint8,或UINT16:

图像(X);colormap(地图);

的颜色映射索引偏移量uint8UINT16数据是为了支持标准图形文件格式,其典型地万博1manbetx在索引形式的图像数据存储与256项颜色表。偏移允许您操作和使用这种形式的显示图像中的多个存储器高效uint8UINT16数组。

由于偏移量,必须加上1才能转换auint8要么UINT16索引图像。例如:

X64 =双(X8) + 1;或者X64 =双(X16) + 1;

反过来,用减1来转换a索引图像uint8要么UINT16:

X8 = uint8(X64 - 1);或X16 = uint16(X64 - 1);

强度图像

范围图像阵列通常为[0,1],但8位强度的图像的范围通常为[0,255]和16位的强度的图像的范围通常为[0,65535]。使用下面的命令与灰度颜色表,以显示一个8位强度图像:

于imagesc(I,[0 255]);颜色表(灰色);

要转换的强度图像从UINT16首先乘以65535:

I16 = uint16(圆(I64 * 65535));

相反地​​,除以65535转换后UINT16强度图像:

I64 = (I16) / 65535年翻一番;

RGB图像

一个8位的RGB图像的颜色分量是在范围[0,255]的整数,而不是在[0,1]的范围内的浮点值。的像素,其颜色分量是(255,255,255)显示为白色。的图像命令正确地显示一个RGB图像,不管它的类是,uint8,或UINT16:

图像(RGB);

转换一个RGB图像uint8,先乘以255:

RGB8 = uint8(圆(RGB64 * 255));

相反地​​,除以255转换后uint8RGB图像:

RGB64 = (RGB8) / 255年翻一番

转换一个RGB图像UINT16首先乘以65535:

RGB16 = uint16(圆(RGB64 * 65535));

相反地​​,除以65535转换后UINT16RGB图像:

RGB64 = (RGB16) / 65535年翻一番;

对uint8和uint16的数学操作支持万博1manbetx

要使用以下功能的MATLAB与uint8UINT16数据,首先将数据转换为类型:

例如,如果X是一个uint8图像,铸的数据类型:

fft(双(X))

在这些情况下,输出总是

总和函数返回的结果与其输入的结果类型相同,但是提供了一个对计算使用双精度的选项。

MATLAB整数数学

看到整型类算术运算关于数学函数如何与数据类型不属于双打工作的更多信息。

大多数图像处理工具箱™功能接受uint8UINT16输入。如果你打算做复杂的图像处理上印尼T8或UINT16数据,请考虑将该工具箱包含在MATLAB计算环境中。

其他8位和16位数组支持万博1manbetx

您可以执行其他几个操作uint8UINT16阵列,包括:

  • 使用函数整形,重新排序,并串联阵列重塑,,置换,[]运营商

  • 保存和加载uint8UINT16使用在马特文件中的数组保存负载。(请记住,如果要加载或保存图形文件格式的图像,您必须使用命令imreadimwrite代替。)

  • 中查找非零元素的索引uint8UINT16数组的使用。然而,返回的数组类的总

  • 关系运算符

转换一个8位RGB图像的灰度

您可以对整数数据执行算术操作,这使您能够在不首先转换图像数据的数值类的情况下转换图像类型。

本实施例中读取的8位RGB图像转换为MATLAB变量并将其转换为灰度图像:

rgb_img = imread(“ngc6543a.jpg”);%负荷图像图像(rgb_img)%显示的RGB图像轴形象;

请注意

此图像的支持下,太空望远镜科学研究所,由大学协会的天文研究公司,万博1manbetx从美国航空航天局合同NAs5-26555操作创建,转载来自AURA / STScI的许可。通过AURA / STScI提供所产生的图像的数字引渡可获得无版税。积分:J.P.哈灵顿和K.J.Orkowski(马里兰大学)和NASA。

根据NTSC标准,结合RGB值计算单色亮度。NTSC标准应用了与眼睛对RGB颜色的敏感性有关的系数:

我= .2989 * rgb_img(:,: 1)…+ .5870 * rgb_img(:: 2)……+ .1140 * rgb_img (:,:, 3);

是一个整数范围从最小值0的强度图像:

最小(I(:)) ans = 0

到最大的255:

MAX(I(:))ANS = 255

要显示图像,请使用具有256个值的灰度彩色映射。这样就不需要缩放数据到颜色的映射,如果使用不同大小的colormap,就需要缩放数据到颜色的映射。使用于imagesc功能在颜色表不包含每个数据值一个条目的情况。

现在显示的图像在一个新的数字使用灰色色彩地图:

数字;颜色表(灰色(256));图像(I);轴形象;

相关信息

其他颜色的地图,其颜色范围从暗到光连续变化,可以产生可用的图像。例如,试着colormap(夏天(256))对于一个典型的示波器的外观。看到色彩表对于更多的选择。

照亮功能使您可以增加或减少色彩图中的色彩强度,以补偿计算机显示差异,或增强图像中模糊或明亮区域的可见度(以牺牲范围的另一端为代价)。

图像类型和数字类的摘要

这个表总结了如何根据图像类型和数据类将数据矩阵元素解释为像素颜色。

图像类型

双数据

UINT8或UINT16数据

索引

图像是一个-通过-n范围[1的整数数组,p]。

色彩图是p由范围内的浮点值[0,1]组成的-乘3数组。

图像是一个-通过-n范围为[0的整数数组,p1]。

色彩图是p由范围内的浮点值[0,1]组成的-乘3数组。

强度

图像是一个-通过-n一组浮点值,线性缩放以生成颜色映射索引。值的典型范围是[0,1]。

色彩图是p由范围[0,1]的浮点值组成的-乘3数组,通常是灰度值。

图像是一个-通过-n阵列被线性缩放,以产生颜色表的索引的整数。值的典型范围是[0,255]或[0,65535]。

色彩图是p由范围[0,1]的浮点值组成的-乘3数组,通常是灰度值。

RGB(真彩)

图像是一个-通过-n由范围内的浮点值[0,1]组成的-乘3数组。

图像是一个-通过-n范围为[0,255]或[0,65535]的整数的-乘3数组。

是这个主题有帮助吗?