Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用MATLAB读取和处理多个.TIFF文件_Matlab - Fatal编程技术网

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

使用MATLAB读取和处理多个.TIFF文件,matlab,Matlab,我在使用MATLAB读取和处理多个tiff文件方面有问题,因为我是MATLAM软件的初学者。我有300张相同尺寸的tiff图片。我想循环这个过程,但是,我无法得到它。直到现在,我每次读取和处理文件时都只更改文件名。我还是不知道该从哪里开始。有人能帮我吗。这里我附上我的编码 filename=('brd06330_s0239.tif'); fileinfo=imfinfo(filename); Nfiles=numel(fileinfo); Cloud=cell(Nfiles,1);

我在使用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)
尝试
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
希望有帮助