Main Content

hdfdf24

HDF 24 位光栅图像 (DF24) 接口的入口

语法

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

说明

hdfdf24 是 HDF 24 位光栅图像接口的 MATLAB® 入口。

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

HDF 库中的 DF24 函数与 funcstr 的有效值之间存在一对一的对应关系。例如,hdfdf24('lastref') 对应于 C 库调用 DF24lastref()

写入函数

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

funcstr 的值函数语法描述
'addimage'

status = hdfdf24('addimage',filename,RGB)

将一个 24 位光栅图像追加到文件。
'putimage'

status = hdfdf24('putimage',filename,RGB)

通过覆盖所有现有数据,将一个 24 位光栅图像写入文件。
'setcompress'

status = hdfdf24('setcompress',compress_type,...)

设置写入文件的下一个光栅图像的压缩方法。compress_type 可以是 'none''rle''jpeg''imcomp'。如果 compress_type'jpeg',则必须指定另外两个参数:quality(介于 0 和 100 之间的标量)和 force_baseline(0 或 1)。其他压缩类型没有额外参数。
'setdims'

status = hdfdf24('setdims',width,height)

设置写入文件的下一个光栅图像的维度。
'setil'

status = hdfdf24('setil',interlace)

设置写入文件的下一个光栅图像的交错格式。interlace 可以是 'pixel''line''component'
'lastref'

ref = hdfdf24('lastref')

报告上次分配给 24 位光栅图像的引用编号。

读取函数

读取函数确定图像集的维度和交错格式,读取实际图像数据,以及提供对任何光栅图像集的顺序或随机的读取访问。

funcstr 的值函数语法描述
'getdims'

[width,height,interlace,status] = hdfdf24('getdims',filename)

在读取下一个光栅图像之前检索维度。interlace 可以是 'pixel''line''component'
'getimage'

[RGB,status] = hdfdf24('getimage',filename)

读取下一个 24 位光栅图像。
'reqil'

status = hdfdf24('reqil',interlace)

指定在读取下一个光栅图像之前的交错格式。interlace 可以是 'pixel''line''component'
'readref'

status = hdfdf24('readref',filename,ref)

读取具有指定光栅编号的 24 位光栅图像。
'restart'

status = hdfdf24('restart')

返回到文件中的第一个 24 位光栅图像。
'nimages'

num_images = hdfdf24('nimages',filename)

报告文件中 24 位光栅图像的编号。

输入/输出参量

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

HDF 使用元素的 C 样式排序,其中沿最后一个维度的元素变化最快。MATLAB 使用 FORTRAN 样式的排序,其中沿第一个维度的元素变化最快。hdfdf24 不会自动从 C 样式排序转换为 MATLAB 样式排序,这意味着在使用 hdfdf24 从 HDF 文件读取或向其中写入时需要置换 MATLAB 图像数组。确切置换取决于 hdfdf24('setil',...) 等指定的交错格式。下列对 permute 的调用根据指定的交错格式将 HDF 数组转换为 MATLAB 数组。

RGB = permute(RGB,[3 2 1]);  
'pixel' 交错
RGB = permute(RGB,[3 1 2]); 
'line' 交错
RGB = permute(RGB,[2 1 3]);  
'component' 交错

版本历史记录

在 R2006a 之前推出