我有一个list.dat文件,其中包含大约1000个hdf文件的名称。我需要按顺序将它们逐个读入MATLAB,并将包含在其中的数据输入矩阵。如何在hdf文件中读取MATLAB?我知道如何让MATLAB读取一个文件,但是当它只是列表中的文件名(与实际文件在同一目录中)时,我不知道如何在变量中读取它。
这是我到目前为止所拥有的:
% Read in sea ice concentrations
% AMSR-E data format: 'asi-s6250-20110101-v5.hdf';
% AMSR2 data format: 'asi-AMSR2-s6250-20120724-v5.hdf';
% SSMI data format: 'asi-SSMIS17-s6250-20111001-v5.hdf';
fname = 'list.dat';
data = double(hdfread(fname, 'ASI Ice Concentration'));
这目前无效。它抛出错误说,
???使用==>时出错hdfquickinfo> findInsideVgroup at 156 HDF文件'/home/AMSR_SeaIceData_Antarctic/list.dat'可能无效或已损坏。
==>中的错误hdfquickinfo at 34 [found,hinfo] = findInsideVgroup(filename,dataname);
==>中的错误hdfread> dataSetInfo at 363 hinfo = hdfquickinfo(filename,dataname);
==>中的错误hdfread在210 [hinfo,subsets] = dataSetInfo(varargin {:});
当我只为fnames输入hdf文件的实际文件名时,代码就可以工作。
感谢。