2015-05-19 58 views
3

有沒有什麼辦法「使用R編程將IMG格式圖像從WGS84轉換爲NAD83」如何使用R將WGS84轉換爲NAD83?

輸入圖像:

名稱:LST_2011-03-30_WGS.img

格式:IMG (ERDAS)

投影:UTM, Zone 12

球體:WGS 84

基準:WGS 84


輸出圖像:

名稱:LST_2011-03-30_NAD.img

格式:IMG (ERDAS)

投影:UTM, Zone 12

球體:GRS 1980

基準:NAD 83

+0

也許[這](http://gis.stackexchange.com/questions/45263/converting-geographic-coordinate-system-in-r)會有所幫助。 – r2evans

回答

0

您可以使用它假定用戶系統上工作GDAL包gdalUtils。如果已經設置了「gdalUtils_gdalPath」選項(通常由gdal_setInstallation),那麼將使用在該路徑中找到的GDAL。如果沒有找到,gdal_setInstallation將被執行以試圖找到一個正常工作的GDAL,它具有用「of」(輸出格式)參數指定的正確驅動程序。

更多關於inside-r.org

這裏的功能gdalwarp()似乎做的工作:

gdalwarp(srcfile="/your/path/LST_2011-03-30_WGS.img", #source file 
     dstfile="/your/path/LST_2011-03-30_NAD.img", #destination file 
     s_srs="+proj=utm +zone=12 +datum=WGS84 +no_defs +ellps=WGS84", #input spatial reference 
     t_srs="+proj=utm +zone=12 +datum=NAD83 +no_defs +ellps=GRS80") #output spatial reference 

N.b:因爲我沒有你的圖片,我不能確保它真正的工作原理與上面提供的參數。不過,我用另一個.tif柵格和其他空間參考系統對它進行了測試,結果很有效。

0

你可以做到這一點

library(raster) 
r <- raster('LST_2011-03-30_WGS.img') 

## crs is normally defined, see 
r 
## but if it is not, you can set it 
## crs(r) <- "+proj=utm +zone=12 +datum=WGS84 +no_defs +ellps=WGS84" 

# set up an output RasterLayer 
x <- raster(r) 
crs(x) <- "+proj=utm +zone=12 +datum=NAD83 +no_defs +ellps=GRS80" 

# compute  
x <- projectRaster(r, x) 
+0

你真的必須指定所有的參數,呵呵?令人驚訝的是,沒有像crs(地圖,名稱=「NAD_1983_StatePlane_Pennsylvania_South_FIPS_3702_Feet」)這樣的更優雅的解決方案,並不需要我知道所有這些。 – MichaelChirico

+1

如何輕鬆或簡單地知道「NAD_1983_StatePlane_Pennsylvania_South_FIPS_3702_Feet」?無論哪種方式,這個網站都很容易發現:http://spatialreference.org/ – RobertH

+0

無可否認它很長。但對我來說,至少,這個名爲CRS的地方總是有很多適合我的具體應用 - 當我在密歇根州製作地圖時,它是'NAD_1983_StatePlane_Michigan ...'。這比我提到的列表更直觀(對我而言)。無論如何,你提供的鏈接是一個很好的參考。謝謝! – MichaelChirico