[英]Using gdal_grid in Python with np array
我使用Python 2.7。 安裝了gdal 2.1.2庫。
我有一個像這樣的np數組:
[[ 2.34845824 48.84626174 15.20369 ]
[ 2.34966283 48.84910128 13.88528 ]
[ 2.35120647 48.85098931 15.76322 ]
...,
[ 2.3556567 48.8415611 15.42184 ]
[ 2.34394085 48.84248672 15.51128 ]
[ 2.34926763 48.85128456 15.0685 ]]
其中第一列和第二列表示我的坐標(具體地說,緯度和經度),第三列表示與位置關聯的變量值。 我想在Python中直接使用gdal_grid來獲得一個圖像,在每個像素處我都使用像反距離加權的方法對數組的值進行插值。
如果我的數據是在csv文件中收集的(我將稱之為'test.csv'),並且如果我創建一個'test.vrt'文件,我發現如何使用gdal_grid執行此操作:
<OGRVRTDataSource>
<OGRVRTLayer name="test">
<SrcDataSource>test.csv</SrcDataSource>
<GeometryType>wkbPoint</GeometryType>
<LayerSRS>WGS84</LayerSRS>
<GeometryField separator=" " encoding="PointFromColumns" x="field_1" y="field_2" z="field_3"/>
</OGRVRTLayer>
</OGRVRTDataSource>
我嘗試使用命令在python中運行它:
gdal.Grid('test_python.tiff', 'test.vrt', layers='test', algorithm='invdistnn:max_points=10:min_points=1:radius=0.001', format='GTiff', width=333, height=240)
它的工作原理。 問題是我想避免將np數組轉換為.csv,因為我需要多次復制此操作。 我怎么能直接使用我的np數組呢?
非常感謝您的幫助。
你不能。
gdal_grid
的輸入必須是GDAL可讀格式,其中VRT是一種格式。 或者,您可以將numpy數組保存為Tiff / GeoTiff文件。
GDAL> = 2.1的另一種選擇是使用python綁定而不是命令行實用程序,以及從numpy數組填充的'MEM'數據集(至少避免將其保存到磁盤)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.