• matlab 对tif数据高程图的处理分析


    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块

  • 相关阅读:
    TCP协议与UDP协议的区别
    打印阵列
    Java的动态代理机制详解(转)
    Java内存模型(转载)
    Hibernate工作原理及为什么要用?(转http://www.cnblogs.com/javaNewegg/archive/2011/08/28/2156521.html)
    SpringMVC工作原理
    FPGrowth算法原理
    十大排序之快速排序
    python logging
    把字符串转换成整数
  • 原文地址:https://www.cnblogs.com/yezhaodan/p/7450937.html
Copyright © 2020-2023  润新知