Чтение символьной строки из файла H5 с использованием MATLAB - PullRequest
0 голосов
/ 13 февраля 2012

Мне нужно прочитать строковые символы, такие как флаг качества (хорошо, плохо, осторожно), из данных H5 с использованием matlab, аналогично чтению данных, считанному в idl, однако это не работает. Я использую версию matlab2009a. Пожалуйста, дайте мне знать, могу ли я прочитать строку символов файлов h5 как «байтовый массив» и поставить числа, такие как 0,1,2, для флагов символов (хорошо, осторожно, плохо). Я могу читать другие параметры, такие как широта, долгота, данные (все числовые), кроме строки символов. Ценю вашу помощь.

Для E.g '

FILE_NAME='acos_L2s_091101_17_Production_v050050_L 2s2800_r01_PolB_110305035627.h5'

file_id = H5F.open (FILE_NAME, 'H5F_ACC_RDONLY', 'H5P_DEFAULT');

Flag_NAME = 'RetrievalResults/master_quality_flag';

Flag_id = H5D.open (file_id, Flag_NAME);

flag=H5D.read (data_id,'H5T_NATIVE_DOUBLE', 'H5S_ALL', 'H5S_ALL', 'H5P_DEFAULT'); 
% (Doesn't work)

`enter code here`OR
flag=H5D.read (data_id,'H5T_C_S1', 'H5S_ALL', 'H5S_ALL', 'H5P_DEFAULT');
% (not working)

Я ценю вашу помощь.

1 Ответ

0 голосов
/ 13 февраля 2012

Непонятно, что именно вы хотите сделать, но, вероятно, будет проще использовать высокоуровневую функцию HDF5, такую ​​как hdf5read :

flag = hdf5read(FILE_NAME, Flag_NAME);
...