hdfread
HDF4 ファイルまたは HDF-EOS2 ファイルからのデータの読み取り
構文
data = hdfread(filename, datasetname)
data = hdfread(hinfo)
data = hdfread(...,param,value,...)
data = hdfread(filename,EOSname,param,value,...)
[data,map] = hdfread(...)
説明
data = hdfread(filename, datasetname)
は、filename
で指定された HDF4 ファイルまたは HDF-EOS2 ファイルから、datasetname
で指定されたデータ セットのすべてのデータを返します。HDF4 ファイルのデータ セットの名前を判定するには、関数 hdfinfo
を使います。
メモ
hdfread
は、HDF4 ファイルまたは HDF-EOS2 ファイルに使用できます。HDF5 ファイルからデータを読み取るには、h5read
を使用します。
data = hdfread(hinfo)
は、関数 hdfinfo
で返された、構造体 hinfo
によって指定されたデータ セットのすべてのデータを返します。データ セットが複数ある場合、データ セットのタイプを記述する構造体 hinfo
のフィールドを指定し、インデックスを使用してデータ セットを指定します。詳細については、読み取るデータ セットの指定を参照してください。
data = hdfread(...,param,value,...)
は、指定されたパラメーターと値のペアに従ってデータのサブセットを返します。さまざまな型のデータ セットの使用可能なパラメーターと値については、次の表を参照してください。
data = hdfread(filename,EOSname,param,value,...)
は、EOSname
で指定された HDF-EOS のポイント、グリッドまたは swath からデータ フィールドをサブセット化します。
[data,map] = hdfread(...)
は 8 ビット ラスター イメージのイメージ data
およびカラーマップ map
を返します。
サブセット化パラメーター
次の表は、特定の種類の HDF4 データに対して、関数 hdfread
で使用できるサブセット化パラメーターを示します。これらのデータ型を以下に示します。
次の点には、注意してください。
1 つのパラメーターで複数の値が必要な場合、cell 配列を使用して、値を保存する必要があります。たとえば
'Index'
パラメーターは 3 つの値start
、stride
およびedge
を必要とします。これらの値は、cell 配列として、中かっこで囲みます。hdfread(..., 'Index', {start,stride,edge})
インデックス付けされたすべての値は、1 ベースです。
HDF Scientific Data(SD) データ セット用のサブセット化パラメーター
HDF SD ファイルと共に起動する場合、関数 hdfread
は、次の表に示されているパラメーターをサポートしています。
パラメーター | 説明 |
---|---|
| 3 要素の cell 配列
|
たとえば、以下のコードは、HDF ファイル example.hdf
からデータ セット Example SDS
を読み込みます。'Index'
パラメーターは、関数 hdfread
が、個々の次元の最初の部分で、データを読み始める位置を指定し、個々の次元の終わりまで読み込みます。
data = hdfread('example.hdf','Example SDS','Index',{[],[2 1],[]})
HDF Vdata セット用のサブセット化パラメーター
HDF Vdata ファイルを使う場合、関数 hdfread
は以下のパラメーターをサポートしています。
パラメーター | 説明 |
---|---|
| 読み取るフィールドの名前を指定する文字ベクトルまたは string スカラー。複数のフィールド名を指定する場合は、文字ベクトルの cell 配列または string 配列を使用します。 |
| どの記録から読み始めるかを指定する 1 ベースの数字。 |
| 読み込むレコードの総数を指定する数字。 |
たとえば、以下のコードは、HDF ファイル example.hdf
から Vdata セット Example Vdata
を読み取ります。
data = hdfread('example.hdf','Example Vdata','FirstRecord', 2,'NumRecords', 5)
HDF-EOS グリッド データ用のサブセット化パラメーター
HDF-EOS グリッド データを使う場合、関数 hdfread
は、以下の 3 つのパラメーターをサポートします。
必須パラメーター
オプション パラメーター
排他的なパラメーター — 関数
hdfread
への 1 つの呼び出しの中で、これらのパラメーターの 1 つのみを設定することができ、オプションのパラメーターと組み合わせてこれらのパラメーターを使うことはできません。パラメーター
説明
必須パラメーター
'Fields'
読み取るフィールドを指定する文字ベクトルまたは string スカラー。Grid データ セットに対して、1 つのフィールド名のみ指定できます。
排他的なパラメーター
'Index'
3 要素の cell 配列
{start,stride,edge}
で、データ セットから読み込む位置、範囲、値を指定します。start
— ファイルの中で、読み始める位置を指定する配列。既定の設定:
1
で、個々の次元の最初の要素で開始する位置。指定された値は、データ セットの任意の次元のサイズを超えてはなりません。stride
— 読み込む値の間を指定する配列。既定の設定:
1
で、データ セットのすべての要素。edge
— 読み込む個々の次元の長さを指定する配列。既定の設定: 対応する次元の長さを含む配列。
'Interpolate'
2 要素 cell 配列
{longitude,latitude}
で、双一次内挿用の領域を定義する点の経度と緯度を表すものです。個々の要素は、経度座標と緯度座標を指定する長さ N のベクトルです。'Pixels'
2 要素 cell 配列
{longitude,latitude}
で、領域を定義する点の経度と緯度の座標を表します。個々の要素は、経度座標と緯度座標を指定する長さ N のベクトルです。この領域は、グリッドの左上隅に原点をもつピクセル単位の行と列に変換します。メモ: これは、
'Box'
領域を設定するものとピクセルで等価になります。'Tile'
タイルをサポートしている HDF-EOS Grid ファイルに対して、読み込むタイルの座標を指定するベクトル。
オプション パラメーター
'Box'
2 要素 cell 配列
{longitude,latitude}
で、領域を定義する経度座標と緯度座標を指定します。longitude
およびlatitude
は、経度座標と緯度座標を指定するそれぞれ 2 要素のベクトルです。'Time'
2 要素 cell 配列
[start stop]
です。ここで、start
およびstop
は、時間の範囲の最初と最後を指定する数値です。'Vertical'
2 要素 cell 配列
{dimension, range}
dimension
— 読み取るデータ セット フィールドの名前を指定する文字ベクトルまたは string スカラー。Grid データ セットに対して、1 つのフィールド名のみ指定できます。range
— 2 要素配列で、サブセットの最小と最大を設定します。dimension
が次元の名前の場合、range
は、抽出する要素の範囲を指定します。dimension
がフィールド名の場合、range
は、抽出する値の範囲を指定します。'Vertical'
のサブセット化は、単独で使用するか、'Box'
または'Time'
と組み合わせて使用できます。複数の次元に沿っての領域のサブセット化に対して、垂直のサブセット化は、関数hdfread
への 1 回の呼び出しで、8 回まで使うことができます。
以下に例を示します。
data = hdfread('grid.hdf','PolarGrid','Fields','ice_temp','Index', {[5 10],[],[15 20]})
HDF-EOS ポイント データ用のサブセット化パラメーター
HDF-EOS ポイント データを使って、関数 hdfread
は、2 つの必須パラメーターと 3 つのオプション パラメーターを使用します。
パラメーター | 説明 |
---|---|
必須パラメーター | |
| 読み取るデータ セット フィールドの名前を含む文字ベクトルまたは string スカラー。複数のフィールド名の場合は、文字ベクトルの cell 配列または string 配列を使用します。 |
| HDF-EOS ポイント データ セットの中から読み込まれるレベルを指定する 1 ベースの数値 |
排他的なパラメーター | |
| 2 要素 cell 配列 |
| 読み込まれるレコード数を指定するベクトル |
| 2 要素 cell 配列 |
以下に例を示します。
hdfread(...,'Fields',{field1, field2},... 'Level',level,'RecordNumbers',[1:50, 200:250])
HDF-EOS Swath データ用のサブセット化パラメーター
HDF-EOS Swath データを使う場合、関数 hdfread
は、以下の 3 つのパラメーターをサポートします。
必須パラメーター
オプション パラメーター
排他的なパラメーター
hdfread
への 1 つの呼び出しの中で、排他的なパラメーターの 1 つのみを設定することができ、オプションのパラメーターと組み合わせてこれらのパラメーターを使うことはできません。
パラメーター | 説明 |
---|---|
必須パラメーター | |
| 読み取るデータ セット フィールドの名前を含む文字ベクトルまたは string スカラー。Swath データ セットに対して、1 つのみのフィールド名を指定することができます。 |
排他的なパラメーター | |
| 3 要素の cell 配列
|
| 3 要素 cell 配列
|
オプション パラメーター | |
| 3 要素 cell 配列
|
| 2 要素 cell 配列
|
以下に例を示します。
hdfread('swath.hdf', 'Example Swath', 'Fields', 'Temperature', ... 'Time', {5000, 6000, 'midpoint'})
例
バージョン履歴
R2006a より前に導入