temp=z(101:2200,101:2200)
根据图像属性可得此为2300*2300的tif图像,由于需要将其划分为9宫格,所以begin点设置为101,end点设置为2200,temp转化为可均分的2100*2100矩阵
for i=1:9 switch i case {1,2,3} G{i}=temp(1:700,1+(i-1)*700:i*700); case {4,5,6} G{i}=temp(701:1400,1+(i-4)*700:(i-3)*700); case {7,8,9} G{i}=temp(1401:end,1+(i-7)*700:(i-6)*700); end end
首先明确概念,:在此处,举例i=1,temp(1:700, 1:700)表示的是截取矩阵1行到1行,1到700列的元素
for i=1:9 b=i; a=330+i; subplot(a); imshow(G{1,i}); end
//明确subplot的使用方法:说明划分为3*3的图像块,p决定了每一图像块的显示位置
参考代码:
%% 第一张数字高程图的处理
clc;clear;close all;tic;
z=imread('附件3 距2400m处的数字高程图.tif');
%z=double(z);imshow(z);
% x=1:length(z);y=x;
% [X2,Y2]=meshgrid(x,y);
% %mesh(X2,Y2,double(z));
% %meshc(X2,Y2,double(z));
% [C,h]=contour(X2,Y2,double(z));
% axis([0 2300 0 2300 ]);
% colormap(gray);colorbar;
% toc;
%% 划分区域
temp=z(101:2200,101:2200);%转化为可均分的2100X2100九宫格矩阵
for i=1:9
switch i
case {1,2,3}
G{i}=temp(1:700,1+(i-1)*700:i*700);
case {4,5,6}
G{i}=temp(701:1400,1+(i-4)*700:(i-3)*700);
case {7,8,9}
G{i}=temp(1401:end,1+(i-7)*700:(i-6)*700);
end
end
for i=1:9
b=i;
a=330+i;
subplot(a);
imshow(G{1,i});
end
图像处理结果为:将整个tif图像文件平均分为9块