批量裁剪高光谱图片使其大小可以被32整除存储裁剪后的图片图片名与原图片相同

批量裁剪高光谱图片,使其大小可以被32整除,存储裁剪后的图片,图片名与原图片相同。

clear
clc

pathstr1 = fileparts('.\icvl');  %当前路径
dirname1 = fullfile(pathstr1, 'icvl','*.mat'); 
imglist1 = dir(dirname1);
sf=32; %scale factor
Test_file={'icvl'}; %原图像数据集
Result_dir ='crop'; %裁剪图像存放位置
Out_dir=fullfile(Result_dir); 
for i=1:length(imglist1) 
    im_structure1 =load(fullfile(pathstr1, 'icvl', imglist1(i).name));
    S = im_structure1.rad;  %rad为图像文件重mat名称
    [h0,w0,c0]=size(S);     %获取原图像大小
    h=h0-rem(h0,sf);        %使得裁剪后图像大小可以被scale factor整除
    w=w0-rem(w0,sf);
    radc=S(1:h,1:w,:);      %裁剪后mat名为radc
    str=imglist1(i).name;   
    save( fullfile(Out_dir, str),'radc'); %存储裁剪后图片,文件名与原图像名相同
end
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页