LidR'de bir LAS dosyasını yeniden tasarlayabilir miyim

Aug 16 2020

2 projeksiyonda sağlanan 2 bitişik 2014 LAS veri kümesiyle çalışıyorum:

Ancak espg (las) yazdığımda döndürdüğüm cevabım 0

Özet (las) yazarsam koordinatım.Ref .: NA

Bunların ikisini de NAD83 / UTM18'e yeniden projelendirmek ve LiDR aracılığıyla birlikte işlemek istiyorum. LiDR'de bunun mümkün olup olmadığından emin değilim? En iyi nasıl devam edilir? Başa çıkmam gereken 1000 1 km kiremit var.

Yanıtlar

3 JRR Aug 17 2020 at 04:02

Bir CRS'yi LAS nesnenize atayabilirsiniz. epsg()<-

epsg(las) <- 12345

spTransform()İle yeniden projelendirebilirsiniz, ancak bu işlev mevcut uygulamasında yetersizdir. Aslında, ' LASyi a' ya dönüştürür SpatialPoints, kullanır sp::spTransform()ve LAS. Ben kullanmayı tavsiye las2lasden LAStoolsLAS dosya işleme görevleri bu tür ama küçük veri kümesi için spTransformuygun olabilir.

library(lidR)
LASfile <- system.file("extdata", "Megaplot.laz", package="lidR")
las = readLAS(LASfile)
las
#> class        : LAS (v1.2 format 1)
#> memory       : 6.2 Mb 
#> extent       : 684766.4, 684993.3, 5017773, 5018007 (xmin, xmax, ymin, ymax)
#> coord. ref.  : +proj=utm +zone=17 +datum=NAD83 +units=m +no_defs 
#> area         : 53112.69 m²
#> points       : 81.6 thousand points
#> density      : 1.54 points/m²
las2 = spTransform(las, sp::CRS(SRS_string = "EPSG:26918"))
las2
#> class        : LAS (v1.2 format 1)
#> memory       : 6.2 Mb 
#> extent       : 214261.7, 214504.9, 5021517, 5021767 (xmin, xmax, ymin, ymax)
#> coord. ref.  : +proj=utm +zone=18 +datum=NAD83 +units=m +no_defs 
#> area         : 53174.62 m²
#> points       : 81.6 thousand points
#> density      : 1.53 points/m²

Not - lidR 3.0.4işlevden önce biraz hatalı. Kontrol las2ederseniz, artık spesifikasyonlara tam olarak uygun olmadığını göreceksiniz. Sabitlendi lidR 3.0.4.

las_check(las2)