MATLAB — 利用geotiffwrite將浮點型的高程數據寫成tif文件
。。。只是自己用一下以下的兩行代碼,發現能用後沒有深究,或許之後會深究8。。。
只是想要保存個tif圖而已,不在乎座標框架之類的時候:
R=[0,-1;1,0;0,6000];
geotiffwrite('result.tif', result, R, 'CoordRefSysCode', 21417);
-
test: 某個座標框架
-
geotiffwrite(輸出名稱,輸入數據,座標框架)
-
地理座標時:
R = georefcells(latlim,lonlim,rasterSize); %latlim,lonlim分別爲1*2的南北、東西經緯度界限。 -
投影座標時:
R = maprefcells(latlim,lonlim,rasterSize); %latlim,lonlim分別爲1*2的南北、東西座標界限。
-
-
PCS_Beijing_Gauss_zone_17 = 21417
-
(我用matlab2016的時候沒法存,但是2019a的時候就沒問題)
試圖深究時
- 情景:讀取某個tif影像,balabala操作後,想按照原來的地理參考存成tif。
-
geotiffread
:
[[A, R] = geotiffread(filename)
- A : 圖像矩陣
- R : 地理參考
-
現在對A進行了balabala運算後,想要把A存下來,該怎麼存?
如果還是按照地理參考R保存,且R爲投影座標系(Projected Coordinate System), 那麼按照代碼geotiffwrite(filename, A, R)
將返回錯誤結果,原因大意爲以投影座標系作爲地理參考的時候,保存時應該在函數中**指明’CoordRefSysCode’**或者’GeoKeyDirectoryTag’兩者任選其一。
其中,'CoordRefSysCode’是查詢Projected CS Type Codes座標系編碼得到的得到的。