P1:
[FileName,PathName] = uigetfile('*.*','Select the image');
Im=imread([PathName FileName]);
imshow(Im)
hold on
L = size(Im);
height=32;
width=32;
max_row = floor(L(1)/height);
max_col = floor(L(2)/width);
seg = cell(max_row,max_col);
%分块
for row = 1:max_row
for col = 1:max_col
seg(row,col)= {Im((row-1)*height+1:row*height,(col-1)*width+1:col*width,:)}; % 分块公式,得到一组seg
end
end
for i=1:max_row*max_col
aa=seg{i}
imwrite(seg{i},strcat('m',int2str(i),'.bmp'));
end
%画出分块的边界
for row = 1:max_row
for col = 1:max_col
rectangle('Position',[160*(col-1),160*(row-1),160,160],...
'LineWidth',2,'LineStyle','-','EdgeColor','r');
end
end
hold off
P2:
clc% [FileName,PathName] = uigetfile('*.*','Select the image');
% Im=imread([PathName FileName]);
% imshow(Im)
% hold on
L = size(Im);
height=64;
width=64;
max_row = floor(L(1)/height);
max_col = floor(L(2)/width);
seg = cell(max_row,max_col);
ab=zeros(height,width);
%分块
for row = 1:max_row
for col = 1:max_col
seg(row,col)= {Im((row-1)*height+1:row*height,(col-1)*width+1:col*width,:)};
end
end
for i=1:max_row*max_col
seg{i}
imwrite(seg{i},strcat('m',int2str(i),'.bmp'));
end
% for ro=1:max_row
% for co=1:max_col
% ab(ro)=[ab(ro),seg(ro,co),zeros(32,10)];
% end
% end
%
% aaa=[ab(1);ab(2);ab(3);ab(4);ab(5);ab(6);ab(7);ab(8);ab(9);];
% imshow (aaa);
%画出分块的边界
for row = 1:max_row
for col = 1:max_col
rectangle('Position',[1600*(col-1),1600*(row-1),1600,1600],...
'LineWidth',2,'LineStyle','-','EdgeColor','r');
end
end