hdfdf24
HDF 24 ビット ラスター イメージ (DF24) インターフェイスへのゲートウェイ
構文
[out1,...,outN] = hdfdf24(funcstr,input1,...,inputN)
説明
hdfdf24
は HDF 24 ビット ラスター イメージ インターフェイスへの MATLAB® ゲートウェイです。
[out1,...,outN] = hdfdf24(funcstr,input1,...,inputN)
は、functstr
で指定された HDF ライブラリの DF24 関数に対応する 1 つ以上の出力値を返します。
HDF ライブラリの DF24 関数と funcstr
の有効値の間には 1 対 1 の対応があります。たとえば、hdfdf24('lastref')
はC ライブラリの呼び出し DF24lastref()
に相当します。
書き込み関数
書き込み関数はラスター イメージ セットを作成して、新規ファイルに格納するか、既存ファイルに追加します。
funcstr の値 | 関数構文 | 説明 |
---|---|---|
'addimage' |
| ファイルに 24 ビット ラスター イメージを追加します。 |
'putimage' |
| 既存のデータをすべて上書きして、ファイルに 24 ビット ラスター イメージを書き込みます。 |
'setcompress' |
| ファイルに書き込む次のラスター イメージの圧縮法を設定します。compress_type は 'none' 、'rle' 、'jpeg' 、'imcomp' のいずれかです。compress_type が 'jpeg' である場合、2 つの追加パラメーターを指定しなければなりません。quality (0 ~ 100 のスカラー) と force_baseline (0 または 1) です。その他の圧縮タイプには追加パラメーターは必要ありません。 |
'setdims' |
| 次にファイルに書き込むラスター イメージの次元を設定します。 |
'setil' |
| ファイルに書き込む次のラスター イメージのインターレース形式を設定します。interlace は 'pixel' 、'line' 、'component' のいずれかです。 |
'lastref' |
| 24 ビット ラスター イメージに割り当てられた最後の参照番号がレポートされます。 |
読み取り関数
読み取り関数は、イメージ セットの次元とインターレース形式の判定、実際のイメージ データの読み取り、ラスター イメージ セットに対するシーケンシャルまたはランダムの読み取りアクセスの提供を行います。
funcstr の値 | 関数構文 | 説明 |
---|---|---|
'getdims' |
| 次のラスター イメージを読み取る前に、次元を取得します。interlace は 'pixel' 、'line' 、'component' のいずれかです。 |
'getimage' |
| 次の 24 ビット ラスター イメージを読み取ります。 |
'reqil' |
| 次のラスター イメージを読み取る前に、インターレース形式を指定します。interlace は 'pixel' 、'line' 、'component' のいずれかです。 |
'readref' |
| 指定されたラスター番号の 24 ビット ラスター イメージを読み取ります。 |
'restart' |
| ファイル内の最初の 24 ビット ラスター イメージに戻ります。 |
'nimages' |
| ファイル内の 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 より前に導入