裁剪DEM高程数据
裁剪DEM高程數據方法
對DEM高程數據(tif文件)方法較多,現將使用的方法進行總結,內容主要包括三個方面:
1、使用ARCGIS裁剪
Arcgis將一幅影像裁剪成一幅或多幅,此時可以應用ArcGIS中的工具箱ArcToolbox進行相關裁剪操作,ArcToolbox提供了許多可以應用的工具。
裁剪工具提取
總的步驟為:“數據管理工具”——“柵格”——“柵格處理”——"裁剪"工具
①"輸出范圍"項可以選擇一個矢量要素,選擇之后下面的最小外包矩形數值將自動填寫;
②勾選"使用輸入要素裁剪幾何(可選)"則不會沿著外包矩形裁剪,而是沿著面要素周長裁剪,面要素以外則變為NoData,更多干貨敬請關注:水經注GIS 故此操作會提升像素深度;
③"NoData值(可選)"與"保持裁剪范圍(可選)"兩項對于一般操作來說不經常用到。
按矩形提取工具提取
總的步驟為:“空間分析”——“提取分析”——“按矩形提取"工具
此種方法相對容易理解,功能也相對簡單,可以提取矩形內的區域或矩形外的區域。但需提前建立一個有關于“面”shapefile的矢量文件,此文件需將在被裁剪的tif文件中進行選擇框選裁剪范圍,此時的shp就是將被裁剪的范圍,但ARCGIS的裁剪工具手動框選存在一定的誤差,如果精確裁剪到某一具體的像素值(行或列),此時的裁剪工具相對會體現出精度不足的問題。
按掩膜提取工具提取
總的步驟為"空間分析”——“提取分析”——"按掩膜提取"工具
掩膜在制圖中是一種遮蓋工具,用于處理要素在顯示上的沖突,最典型的應用就是等高線的標注。掩膜可以理解為一種看不見的面要素,它遮擋住了不需要顯示的圖形。用這個工具可以將影像按面要素周長裁剪。(適用于省界等邊界的區分)
分割柵格工具提取
總的步驟為:“數據管理工具”——“柵格”——“柵格處理”——"分割柵格"工具
這個工具用于將影像分幅輸出到一個文件夾里。
分割柵格
①"輸出文件夾"與"輸出基本名稱"中定義輸出文件夾與前綴,在輸出結果的前綴后會自動加上編號;
②"分割方法"有兩種,SIZE_OF_TILE按指定分割后影像的大小分割,選擇此項之后需要在"輸出柵格的大小(可選)"輸入柵格大小,這樣末尾可能會有像元數不夠的影像,更多干貨敬請關注:水經注GIS 而NUMBER_OF_TILES按照指定的行數和列數平均分割柵格,選擇此項后需要在"輸出柵格數(可選)"輸入行數和列數;
③"重采樣技術(可選)"中有三項,NEAREST、BILINEAR、CUBIC復雜程度和計算時間依次上升,但平滑效果也越來越好,可根據需要進行選擇。
2、使用globalmapper裁剪
globalmapper界面友好,交互性強,對圖像進行裁剪,可以大大減少地圖容量,提高處理速度及指定范圍的數據輸出。但裁剪會出現縫隙,精度會打折扣。(注意必須是Geotiff文件,如果不是還需轉換)
總體步驟如下:
3、使用MATLAB裁剪
對圖像(tif格式)進行裁剪函數(TIF文件須是geotiff格式):
function newpic = croptif(path,lon1,lat1,lon2,lat2)
% path為圖片絕對路徑,lon1,lat1為裁剪圖片左上角經緯度,lon2,lat2為圖右下角經緯度
[A,R] = geotiffread(path);
a = (lon1-R.LongitudeLimits(1,1))./R.CellExtentInLongitude+1;
b = (R.LatitudeLimits(1,2)-lat1)./R.CellExtentInLatitude+1;
c = (lon2-lon1)./R.CellExtentInLongitude+1;
d = (lat1-lat2)./R.CellExtentInLatitude+1;
newpic = imcrop(A,[a b c d]);
end
函數使用舉例:
從圖中截取規定經緯度范圍內的圖像,并顯示出來,經緯度范圍如下:
左下角經緯度坐標(單位:度):112.928123474, 28.156242371
左上角經緯度坐標(單位:度):112.928123474, 28.157272339
右上角經緯度坐標(單位:度):112.929153442, 28.157272339
右下角經緯度坐標(單位:度):112.929153442, 28.156242371
調用函數:
path = ‘D:\study\data\CSUpark.tif’;
newpic1 = croptif(path,112.928123474,28.157272339,112.929153442,28.156242371);
imshow(newpic1);
原文鏈接:https://blog.csdn.net/weixin_45662485/article/details/106187327
總結
- 上一篇: PHP读取Excel和导出数据至Exce
- 下一篇: 基于stm32F4的项目总结:控制层设计