Main Content

readRGBAStrip

使用 RGBA 接口读取条带数据

说明

示例

[RGB,alpha] = readRGBAStrip(t,row) 使用 RGBA 接口从与 Tiff 对象 t 关联的 TIFF 文件中读取由 row 指定的图像数据的条带。

readRGBAStrip 函数剪除条带中超出 ImageLength 边界的区域。因此,来自图像底边缘的条带的图像数据可以具有不同维度。

示例

全部折叠

使用 RGBA 接口从 TIFF 文件读取数据条带。

为图像文件创建一个 Tiff 对象。

t = Tiff('peppers_RGB_stripped.tif','r');

获取条带数量和条带大小。readRGBAStrip 函数剪除条带中超出 ImageLength 边界的区域。因此,来自图像底边缘的条带的图像数据可以具有不同维度。

numberOfStrips(t)
ans = 6
getTag(t,'RowsPerStrip')
ans = 35

读取包含图像的第四行的条带。由于每个条带包含 35 个行,指定 135 之间的任何行都将返回数据的第一个条带。

[RGB,A] = readRGBAStrip(t,4);

显示图像。

imshow(RGB)

Figure contains an axes object. The axes object contains an object of type image.

关闭 Tiff 对象。

close(t);

输入参数

全部折叠

代表 TIFF 文件的 Tiff 对象。使用 Tiff 函数创建该对象。

行号,指定为正整数。将 row 指定为条带中任一行的行号(行号从 1 开始)。

示例: 25

数据类型: double

输出参数

全部折叠

图像条带数据,以 m×n×3 数值数组形式返回。其中 mn 分别为条带的高度和宽度。

RowsPerStrip 标记中的值决定条带的高度,ImageWidth 标记决定条带的宽度。

readRGBAStrip 函数可以根据下列标记中的设定来转换像素值:

PhotometricInterpretation
BitsPerSample
SamplesPerPixel
Orientation
ExtraSamples
ColorMap

与图像条带关联的 alpha 抠图,以数值数组形式返回。alpha 抠图数据中的行数和列数与条带数据相同。

如果图像没有相关的 alpha 抠图,则 alpha 是其所有值都设为 255(透明)的矩阵。

算法

全部折叠

参考

此函数对应于 LibTIFF C API 中的 TIFFReadRGBAStrip 函数。要使用此函数,您必须熟悉 TIFF 规范和技术说明。请访问 LibTIFF - TIFF 库和实用工具查看此文档。

版本历史记录

在 R2009b 中推出