使用MATLAB读取和处理多个.TIFF文件

时间:2014-02-13 08:36:26

标签: matlab

我在使用MATLAB读取和处理多个tiff文件时遇到问题,因为我是MATLAM软件的初学者。我有300张具有相同尺寸的tiff图像。我想循环这个过程,但是,我无法得到它。到现在为止,我每次只更改文件名来阅读和处理。我仍然没有得到应该从哪里开始。谁能帮我。在这里,我附上我的编码。

filename=('brd06330_s0239.tif');
fileinfo=imfinfo(filename);
Nfiles=numel(fileinfo); 
Cloud=cell(Nfiles,1); 

   for n=1:Nfiles

     A=imread(filename);
     [rimg cimg]=size(A);
% Read by band (for this task only use band 1)    
      B1Channel = A(:, :, 1);


 %  A=imread(filename);
 % [rimg cimg]=size(A);

%for channel 1
 W_countB1 = sum(sum(B1Channel == 0)) % W= water
 NW_countB1 = sum(sum(B1Channel > 0)) % NW= non water (cloud and land)


   end

   %save in text format(excel)
   d=[W_countB1,NW_countB1]
   colname={W_countB1,NW_countB1}
   xlswrite('brd06330_s0239',d)

1 个答案:

答案 0 :(得分:1)

尝试dir('*.tif'),它将为您提供目录中所有TIFF的列表,然后您可以按照您的需要循环整个事物。

看起来像是:

files=dir('*.tif');

for i=1:length(files)

   A=imread(file(i).name);

   %//... whatever you want to do with your TIFFs

end
希望有所帮助。