Считывание данных из файла HDF4 или HDF-EOS
data = hdfread(filename, datasetname)
data = hdfread(hinfo)
data = hdfread(...,param,value,...)
data = hdfread(filename,EOSname,param,value,...)
[data,map] = hdfread(...)
data = hdfread(filename, datasetname) возвращает все данные в наборе данных, указанном datasetname из файла HDF4 или HDF-EOS, указанного filename. Чтобы определить имя набора данных в файле HDF4, используйте hdfinfo функция.
Примечание
hdfread может использоваться в файлах HDF версии 4.x или HDF-EOS версии 2.x. Для чтения данных из файла HDF5 используйте h5read.
data = hdfread(hinfo) возвращает все данные в наборе данных, указанном структуройhinfo, возвращенный hdfinfo функция. Укажите поле в поле hinfo структуру, которая относится к определенному типу набора данных, и использовать индексирование, чтобы указать, какой набор данных, когда их более одного. Дополнительные сведения см. в разделе Указание набора данных для чтения.
data = hdfread(...,param,value,...) возвращает подмножества данных в соответствии с указанными парами параметров и значений. Для поиска допустимых параметров и значений для различных типов наборов данных см. таблицы ниже.
data = hdfread(filename,EOSname,param,value,...) подмножества поля данных из точки HDF-EOS, сетки или свата, указанные EOSname.
[data,map] = hdfread(...) возвращает изображение data и карта цветов map для 8-битного растрового изображения.
В следующих таблицах показаны параметры подстановки, которые можно использовать с hdfread функция для определенных типов данных HDF4. Эти типы данных:
Обратите внимание на следующее:
Если для параметра требуется несколько значений, используйте массив ячеек для хранения значений. Например, 'Index' параметр требует трех значений: start, stride, и edge. Заключите эти значения в фигурные скобки как массив ячеек.
hdfread(..., 'Index', {start,stride,edge})Все значения, являющиеся индексами, основаны на 1.
При работе с файлами HDF SD hdfread поддерживает параметры, перечисленные в этой таблице.
Параметр | Описание |
|---|---|
| Массив трехэлементных ячеек,
|
Например, этот код считывает набор данных Example SDS из файла HDF example.hdf. 'Index' параметр указывает, что hdfread начните считывать данные в начале каждого измерения, считывайте до конца каждого измерения, но считывайте только каждое другое значение данных в первом измерении.
data = hdfread('example.hdf','Example SDS','Index',{[],[2 1],[]})При работе с файлами HDF Vdata hdfread поддерживает эти параметры.
Параметр | Описание |
|---|---|
| Вектор символов или строковый скаляр, указывающий имя считываемого поля. При указании нескольких имен полей используйте массив ячеек из символьных векторов или строковый массив. |
| Число на основе 1, указывающее запись, с которой начинается чтение |
| Число, указывающее общее количество считываемых записей |
Например, этот код считывает набор Vdata Example Vdata из файла HDF example.hdf.
data = hdfread('example.hdf','Example Vdata','FirstRecord', 2,'NumRecords', 5)При работе с данными сетки HDF-EOS hdfread поддерживает три типа параметров:
Обязательные параметры
Дополнительные параметры
Взаимоисключающие параметры - можно указать только один из этих параметров в вызове hdfread, и нельзя использовать эти параметры в сочетании с любым дополнительным параметром.
Параметр | Описание |
|---|---|
Обязательный параметр | |
| Вектор символов или строковый скаляр, указывающий считываемое поле. Для набора данных Grid можно указать только одно имя поля. |
Взаимоисключающие необязательные параметры | |
| Массив трехэлементных ячеек,
По умолчанию:
По умолчанию:
По умолчанию: массив, содержащий длины соответствующих размеров |
| Массив двухэлементных ячеек, |
| Массив двухэлементных ячеек, Примечание: Это пиксельный эквивалент чтения |
| Вектор, задающий координаты считываемой плитки для файлов сетки HDF-EOS, поддерживающих плитки |
Дополнительные параметры | |
| Массив двухэлементных ячеек, |
| Массив двухэлементных ячеек, |
| Массив двухэлементных ячеек,
|
Например,
data = hdfread('grid.hdf','PolarGrid','Fields','ice_temp','Index', {[5 10],[],[15 20]})При работе с данными точки HDF-EOS hdfread имеет два обязательных и три необязательных параметра.
Параметр | Описание |
|---|---|
Обязательные параметры | |
| Вектор символов или строковый скаляр, содержащий имя считываемого поля набора данных. Для нескольких имен полей используйте массив ячеек из символьных векторов или строковый массив. |
| Число на основе 1, указывающее уровень для считывания в наборе данных точки HDF-EOS |
Взаимоисключающие необязательные параметры | |
| Массив двухэлементных ячеек, |
| Вектор, указывающий считываемые номера записей |
| Массив двухэлементных ячеек, |
Например,
hdfread(...,'Fields',{field1, field2},...
'Level',level,'RecordNumbers',[1:50, 200:250])При работе с данными HDF-EOS Swath hdfread поддерживает три типа параметров:
Обязательные параметры
Дополнительные параметры
Взаимоисключающие
При вызове можно использовать только один из взаимоисключающих параметров hdfread, и нельзя использовать эти параметры в сочетании с любым дополнительным параметром.
Параметр | Описание |
|---|---|
Обязательный параметр | |
| Вектор символов или строковый скаляр, содержащий имя считываемого поля набора данных. Для набора данных Swath можно указать только одно имя поля. |
Взаимоисключающие необязательные параметры | |
| Массив трехэлементных ячеек,
|
| Массив трехэлементных ячеек,
|
Дополнительные параметры | |
| Массив трехэлементных ячеек,
|
| Массив двухэлементных ячеек,
|
Например,
hdfread('swath.hdf', 'Example Swath', 'Fields', 'Temperature', ...
'Time', {5000, 6000, 'midpoint'})