Thursday, 15 March 2012

Matlab Batch Processing for HDF data - Could not open file Error -



Matlab Batch Processing for HDF data - Could not open file Error -

matlab batch processing hdf info gives error. if utilize single operation works. not working in batch operation. code here

files = dir('/upload/server/php/files/*.hdf'); k = 1:numel(files) l_865 = hdfread(files(k).name, '/geophysical data/l_865', 'index', {[1 1],[1 1],[6120 1243]}); l_620 = hdfread(files(k).name, '/geophysical data/l_620', 'index', {[1 1],[1 1],[6120 1243]}); ndvi = (l_865- l_620) ./ (l_865 + l_620); ndvi=ndvi-min(ndvi(:)); ndvi=ndvi./max(ndvi(:)); [j,~]=gray2ind(ndvi); imwrite(j,jet,['/server/php/files/images/'files(k).name],'jpg'); end

error is

error using hdfread>datasetinfo (line 348) not open file 'oxxxst_s.hdf'. error in hdfread (line 209) [hinfo,params] = datasetinfo(varargin{:}); error in batchndvi (line 7) l_865 = hdfread(files(k).name, '/geophysical data/l_865', 'index', {[1 1],[1 1],[6120 1243]});

you utilize dir in specific directory, /upload/server/php/files/ find files. later write out same directory (with imwrite).

however, don't specify directory when utilize hdfread, can't find file. may have been in right directory when running code, didn't notice. quick fix, can concatenate strings imwrite.

l_865 = hdfread([`/upload/server/php/files/`,files(k).name,], ...);

matlab batch-file image-processing hdf

No comments:

Post a Comment