Перепроектируйте растровое изображение с эквинактуального на латлонный, используя R
Привет, я пытался перепроектировать растровое изображение из Equirectangular в EPSG:4326 (Latlon), проблема в том, что каждый раз, когда я запускаю свой код на R, я получаю неправильные координаты на новом изображении; я не знаю, где ошибка в коде, также я делаю тот же процесс с Qgis, и я получил тот же результат, это странно, у меня была возможность сделать тот же процесс перепроектирования в ENVI, и результат удалось, помогите пожалуйста!!!
a <- raster("C:/Users/<username>/Documents/imageexample.tif")
> a
class : RasterLayer
dimensions : 1800, 1800, 3240000 (nrow, ncol, ncell)
resolution : 1100, 1100 (x, y)
extent : -988900, 991100, 1677577, 3657577 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=eqc +lat_ts=0 +lat_0=24 +lon_0=-112 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0
data source : C:/Users/<username>/Documents/imageexample.tif
names : imageexample
g1 <- projectRaster(a, crs="+init=epsg:4326")
> g1
class : RasterLayer
dimensions : 1810, 1810, 3276100 (nrow, ncol, ncell)
resolution : 0.00988, 0.00988 (x, y)
extent : -120.9328, -103.05, 39.02317, 56.90597 (xmin, xmax, ymin, ymax)
coord. ref. : +init=epsg:4326 +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0
data source : in memory
names : imageexample.tif
values : -5.000117, 39.87529 (min, max)
Правильные координаты должны быть такими:
class : RasterLayer
dimensions : 1793, 1803, 3232779 (nrow, ncol, ncell)
resolution : 0.0108098, 0.009931556 (x, y)
extent : -121.735, -102.245, 15.08612, 32.8934 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
data source : C:/Users/<username>/Documents/CORRECTimageexample.tif
names : CORRECTimageexample
Спасибо!!!
1 ответ
Это немного особый случай, но обычно не определяется (по данным) экстент и разрешение для перепроецирования растра. Вы должны указать это. Например, вы можете сделать:
library(raster)
r <- raster(xmn=-121.735, xmx=-102.245, ymn=15.08612, ymx=32.8934, nrow=1793, ncol=1803, crs='+proj=longlat +ellps=WGS84')
g2 <- projectRaster(a, r)