Main Content

hdfdfr8

HDF 8 位光栅图像 (DFR8) 接口的入口

语法

[out1,...,outN] = hdfdfr8(funcstr,input1,...,inputN)

说明

hdfdfr8 是 HDF 8 位光栅图像 (DFR8) 接口的 MATLAB® 入口。

[out1,...,outN] = hdfdfr8(funcstr,input1,...,inputN) 返回与 HDF 库中由 functstr 指定的 DFR8 函数对应的一个或多个输出。

HDF 库中的 DFR8 函数与 funcstr 的有效值之间存在一对一的对应关系。例如,hdfdfr8('setpalette',map) 对应于 C 库调用 DFR8setpalette(map)

写入函数

写入函数创建光栅图像集并将其存储在新文件中,或者将它们追加到现有文件。

funcstr 的值函数语法描述
'writeref'status = hdfdfr8('writeref',filename,ref)使用指定的引用编号存储光栅图像。
'setpalette'status = hdfdfr8('setpalette',colormap)设置多个 8 位光栅图像的选项板。
'addimage'status = hdfdfr8('addimage',filename,X,compress)将一个 8 位光栅图像追加到文件。compress 可以是 'none''rle''jpeg''imcomp'
'putimage'status = hdfdfr8('putimage',filename,X,compress)将一个 8 位光栅图像写入现有文件或创建该文件。compress 可以是 'none''rle''jpeg''imcomp'
'setcompress'status = hdfdfr8('setcompress',compress_type,...)设置压缩类型。compress_type 可以是 'none''rle''jpeg''imcomp'。如果 compress_type'jpeg',则必须传入另外两个参数:quality(介于 0 和 100 之间的标量)和 force_baseline(0 或 1)。其他压缩类型没有额外参数。

读取函数

读取函数确定图像集的维度和选项板分配,读取实际图像数据,以及提供对任何光栅图像集的顺序或随机的读取访问。

funcstr 的值函数语法描述
'getdims'[width,height,hasmap,status] = hdfdfr8('getdims',filename)检索 8 位光栅图像的维度。
'getimage'[X,map,status] = hdfdfr8('getimage',filename)检索 8 位光栅图像及其选项板。
'readref'status = hdfdfr8('readref',filename,ref)获取具有指定引用编号的下一个光栅图像。
'restart'status = hdfdfr8('restart')忽略所访问的最后一个文件的信息并从头重新启动。
'nimages'num_images = hdfdfr8('nimages',filename)返回文件中光栅图像的编号。
'lastref'ref = hdfdfr8('lastref')返回所访问的最后一个元素的引用编号。

输入/输出参数

status 或标识符输出为 -1 表示操作失败。

HDF 使用元素的 C 样式排序,其中沿最后一个维度的元素变化最快。MATLAB 使用 FORTRAN 样式的排序,其中沿第一个维度的元素变化最快。hdfdfr8 不会自动从 C 样式排序转换为 MATLAB 样式排序,这意味着在使用 hdfdfr8 从 HDF 文件读取或向其中写入时需要转置 MATLAB 图像和颜色图矩阵。

hdfdfr8 中读取和写入选项板信息的函数需要使用范围 [0,255] 中的 uint8 数据,而 MATLAB 颜色图包含范围 [0,1] 中的双精度值。因此,必须将 HDF 选项板转换为 double 并缩放为可用作 MATLAB 颜色图。

版本历史记录

在 R2006a 之前推出