ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

MATLAB如何利用DEM生成地形三维模型(DEM+Landsat_5+MATALB)

MATLAB如何利用DEM生成地形三维模型(DEM+Landsat_5+MATALB) 一、基础介绍关于3维地形模型 三维地形是描述地球表面及其特征的曲面模型。模型中的特征点和特征线都是三维的可以直观测量或查询任意特征点的平面坐标和高程模型能够真实的反映地表特征和地表现象。注意其和传统的DEM不同DEM只具有地表空间特征但不具有地表属性特征其只能反映地形不能反映该处的样貌、色彩等。下面简单列举一下能够作为建立模型的基础数据分类方法DEMDEM可以看作N×M个高程数据集Hiji∈1N,j∈1MMATLAB中是完全支持使用surf(DEM)进行绘制地形图其转为地形图的原理可以参考我以前的文章生成地形图之后可以将有坐标系统的影像图或者其他纹理图进行浮动在地形图表面实现建模。地表高程点高程点和DEM有异曲同工之处但是相比于DEM这种二维数据高程点可以看作是一维的。其可以表示为Hii∈1N*M而在MATLAB中也可以利用高程点进行绘制地形图方法可以参考我以前的文章其他和以上无异。激光点云激光点云比较特殊其可以被用于精密场所的建模使用在MATLAB中利用surf或者mesh类的函数显示则会大大减小的其建模后的精度因此在MATLAB中可以之间利用PCshow函数读取显示之后将其所在地区的纹理图进行贴附可以实现高精度建模。同样随着倾斜摄影测量的发展其高精度的优势渐渐渗入到数字城市的建模中。其他NONE其实上面所说的纹理图贴图类似于arcGIS中的按高程在表面浮动其原理一样我们再看看matlab是如何进行纹理贴图的首先PsurfDEM注意以下三个设置接下来我们看看三个属性值分别表示的是什么1Facecolor所属于Surface的面属性其下属有四个值分别是‘Flat’、‘interp’、‘none’、‘texturmap’本次只对第四个值进行说明其主要是为了变化CData中的数据使其符合曲面可以理解为拉伸2CData所属于Surface的颜色属性其分为二维和三维数组两种形式注意在此说明一下我们将纹理图保存为JPG、PNG或者其他影像图时其表面的颜色时对应于[R,G,B]颜色体现在将其赋值给CDdata使Surface其顶点的颜色为纹理图的颜色若未赋值则CData为默认值3Linestyle所属于Surface的边缘属性本次就将其设置为‘none’使其为空以至于其表面的线条隐藏。二、代码段及其结果1读取显示DEMclc;clear all;%读取显示DEM数据剔除边缘异常数据[data,R1]geotiffread(gansu.tif);figure;datacopdata(8:432-8,7:603-7);imagesc(datacop);title(DEM显示图);2读取显示以及合成Landsat_5影像landsat_band_1adapthisteq(geotiffread(landsat_b1.tif).*0.5);landsat_band_2adapthisteq(geotiffread(landsat_b2.tif));landsat_band_3adapthisteq(geotiffread(landsat_b3.tif));imagcat(3,landsat_band_3,landsat_band_2,landsat_band_1);figure;imshow(imag);imwrite(imag,landsat.jpg);title(landsat合成图);3)读取显示山体阴影图[data_shale,R2]geotiffread(gansu_shale.tif);datacop_shaledata_shale(8:432-8,7:603-7);figure;imagesc(datacop_shale);colormap(gray);imwrite(datacop_shale,datacop_shale.jpg);title(山体阴影显示图);4)三维显示地形模型figure;Psurf(datacop);colormap(gray);map_dataimread(landsat.jpg);P.CDatamap_data;P.FaceColortexturemap;P.LineStylenone;title(真实地形3D模型图);view(120,70)figure;Psurf(datacop);colormap(jet);map_dataimread(datacop_shale.jpg);P.CDatamap_data;P.FaceColortexturemap;P.LineStylenone;title(山体坡向3D模型图(pitch-angle45° direction-angle225°));view(30,70)
返回列表