其他分享
首页 > 其他分享> > matlab 对图像进行批量剪切

matlab 对图像进行批量剪切

作者:互联网

如:将图像“ocean.jpg”切割成10*10=100张小图,并保存。
请添加图片描述
切割后的效果:
在这里插入图片描述
代码:

% ********************************************************
% Filename    : cut_sekuai
% Author      : 批量截图
% Description : 将一个10X10的图CUT成各个小块
% Revision    : 2021/09/08
% *********************************************************

%% 将一个10X10的色块图CUT成各个小块
clc; close all;
% mkdir test_data7 %创建新的文件夹

%% 读入数据
mh_img = imread('ocean.jpg');
Wid = size(mh_img,2)
Hig = size(mh_img,1) 

sek_wid = floor((Wid/10))   % 新色块的宽下取整
sek_hig = floor((Hig/10))     % 新色块的高下取整

%% 算法处理
save_path = '.\oceann\'    % 存储文件夹
newimg_wid = 30;  % 剪切图的宽
newimg_hig = 30;  % 剪切图的高
for i = 1:10
    for j = 1:10
        rect = [0+(j-1)*sek_wid,0+(i-1)*sek_hig,newimg_wid,newimg_hig];
		%同一行,j列变动在前,i行在后
        cut_img = imcrop(mh_img,rect);  % 开始剪切 
        imwrite(cut_img,strcat(save_path,int2str((i-1)*10+j),'.jpg'));  %剪切一个保存一个
    end
end

标签:10,wid,批量,img,newimg,matlab,剪切,sek
来源: https://blog.csdn.net/guangwulv/article/details/120181800