Tarama rasterini lat / lon'dan UTM'ye yeniden mi döndürür?


13

Ben tampon işlevsel hale getirmek için bir UTM dönüştürmek zorunda.

wets<-readOGR(dsn=".",layer="shapefile")
r.raster <- raster()
extent(r.raster) <- extent(wets)
res(r.raster) <- 100 

wets.r <- rasterize(wet,r.raster)
plot(wets.r)
wetsbuf<-buffer(wets.r,width=500)

Son kod satırı olan arabellek oluşturma sırasında şu uyarıyı verir:

Warning message:  
In couldBeLonLat(x) :
  raster has a longitude/latitude CRS, but coordinates do not match that

işte bilgi

  summary(wets.r)
          layer
 Min.        1
 1st Qu.     1
 Median      2
 3rd Qu.     9
 Max.       11
 NA's    52629

summary(wets)

  Object of class SpatialPolygonsDataFrame
Coordinates:
      min       max
 x  683705  714088.8
 y 4326266 4343768.0
 Is projected: TRUE 
 proj4string :
 [+proj=tmerc +lat_0=0 +lon_0=24 +k=0.9996 +x_0=500000 +y_0=0 +datum=GGRS87
 +units=m +no_defs +ellps=GRS80 +towgs84=-199.87,74.79,246.62]
 Data attributes:
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
    0.0     2.5     5.0     5.0     7.5    10.0 






 wets.r

class       : RasterLayer 
dimensions  : 175, 304, 53200  (nrow, ncol, ncell)
resolution  : 100, 100  (x, y)
extent      : 683705, 714105, 4326268, 4343768  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
data source : in memory
names       : layer 
values      : 1, 11  (min, max)
attributes  :
   ID FID
 from:  1   0
 to  : 11  10

Arabellek yapabilmek için önü değiştirmeliyim.


Öngörülen bir koordinat sistemindeki veya coğrafi bir CS'deki veriler misiniz?
Aaron

İlk vektör verileri bence bir öngörülen koordinat sistemindedir.
GSA

Öngörülen (örn. UTM) veya Coğrafi (enlem / boylam)?
Aaron

Bunu nasıl kontrol edeceğimi bilmiyorum UTM bu emin değilim
gsa

koordinatlar nelerdir ve hangi bölgede (eyalet, şehir) bulunuyorsunuz?
ed.hank

Yanıtlar:


16

Raster paketini kullanarak R'deki bir raster bu şekilde yeniden projekte edilebilir . Bu örnekte, giriş geotiff bir NAD83 coğrafi koordinat sisteminde idi ve bir NAD 83 UTM 15 öngörülen koordinat sistemine yeniden kopyaladım. RGDAL tarafından kullanılan Proj4 formatındaki projeksiyonlar için iyi bir referans spatialreference.org adresinde bulunabilir .

library(raster)

# Create RasterLayer object
r <- raster('C:/temp/binary_nad83.tif')

# Define the Proj.4 spatial reference 
# http://spatialreference.org/ref/epsg/26915/proj4/
sr <- "+proj=utm +zone=15 +ellps=GRS80 +datum=NAD83 +units=m +no_defs" 

# Project Raster
projected_raster <- projectRaster(r, crs = sr)

# Write the RasterLayer to disk (See datatype documentation for other formats)
writeRaster(projected_raster, filename="C:/temp/binary_utm15.tif", datatype='INT1U', overwrite=TRUE)

Cevabınız için teşekkürler, bunu döndürür: projectExtent (from, projto) hatası: bu dönüşümü yapamaz Ek olarak: Uyarı iletisi: rgdal :: rawTransform (projfrom, projto, nrow (xy), xy [, 1], xy [,: 218 tahmin edilen nokta sınırlı değil
gsa

Tek bantlı bir raster veya çoklu bant mı kullanıyorsunuz? Bu örnek tek bantlı bir raster içindir.
Aaron

Bir uydu görüntüsünün değil, bir vektörün (sulak alanlar) rasterleştirme işleminden geliyor, bu yüzden tek bantla gideceğim.
GSA

Raster / rgal paketlerinizi güncellemeyi deneyin: r-sig-geo.2731867.n2.nabble.com/…
Aaron

@gsa, eğer bu işe yararsa cevabı onaylamak ve kabul etmek iyi bir fikirdir! Aksi takdirde, orijinal sorunuzu düzenleyin ve açıklığa kavuşturun.
Simbamangu
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.