MATLAB:批量读取文件夹下tif图像并对其进行计算

使用matlab批量读取文件夹下的TIFF图像并进行批量计算处理的代码如下:

%遍历循环读取所有tiff文件
file_path = 'E:\';% 图像文件夹路径 
img_path_list = dir(strcat(file_path,'*.tif'));%获取该文件夹中所有TIF格式的图像 
img_num = length(img_path_list);%获取图像总数量
II=cell(1,img_num);
if img_num > 0
        for jj = 1:3 
                 image_name = img_path_list(jj).name;% 图像名 
                 [image,geo] = geotiffread(strcat(file_path,image_name)); 
                 II{jj}=image;
                 maxTif=max(max(image));  %最大值               
                 image(find(image<0))=[];%去除小于0的数
                 minTif=min(min(image)); %最小值              
                 meanTif=mean2(image); %平均值
                 fprintf(' %d %f %f',jj,maxTif,minTif,meanTif);
                 fprintf(' %d %s\n',jj,strcat(file_path,image_name));% 显示正在处理的图像名 
end
end

使用geotiffread函数读取带有地理信息的tiff图像,如遥感图像等,该方法返回两个参数,第一个参数image是图像的二维矩阵,第二个参数geo是地理信息;如使用imread读取则不能读取地理信息,写入文件时较麻烦。

上一篇:envi提取纹理信息并进行地物可分离性指数分析,选取最合适窗口的纹理特征


下一篇:ModisLC流程