zoukankan      html  css  js  c++  java
  • 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块

  • 相关阅读:
    dsp1
    数字信号处理中的常用方法
    近一星期的学习计划4-8 到 4-15
    近一个月的学习计划!4-8
    离散时间与系统-1
    python _列表
    2016-1-19
    fushioncharts 使用教程要点---使用JSON数据方式
    使用easeui dialog弹出框中使用CKeditor多次加载后无法编辑问题
    MVC之路随记3--Html辅助方法
  • 原文地址:https://www.cnblogs.com/yezhaodan/p/7450937.html
Copyright © 2011-2022 走看看