Сравнивать две цифровые модели рельефа (ЦМР) из файлов LAS?

12

У меня есть два файла LiDAR (.las), один оригинальный, скажем, с X баллами. А другой - копия первого файла .las, но с точками Y, где Y меньше X.

Теперь я хочу сравнить цифровые модели рельефа (DEM) этих двух файлов .las и визуализировать, насколько они различны.

Я хочу получить информацию, как RMSE, стандартное отклонение, среди других типов сравнения.

Буду признателен, если кто-нибудь скажет мне, какие программы и способы получения информации для сравнения.

Андре Силва
источник
1
Возможно, вы могли бы отредактировать вопрос, чтобы использовать M и N (вместо X и Y). При первом чтении я подумал, что X и Y были значениями координат!
Марк Ирландия
1
Вам действительно нужно предоставить больше информации, чтобы получить соответствующую помощь. Ваш текущий вопрос делает очень маленькую сцену. Какое поле в вашем файле las содержит значения. Классификация грунта в формате las - это поле классификации, а не значения z (высоты). Поставщик должен был бы использовать одно из неназначенных полей для хранения разницы в значениях z.
Джеффри Эванс

Ответы:

8

Как сравнить две цифровые модели рельефа (ЦМР) в R.

#-------------------------------------------------------------------------
#Creating a reproducible example

library(raster)

  #simulating raster_1

  f = system.file("external/test.grd", package="raster")
  DEM_1 = raster(f)

  #simulating raster_2

  DEM_2 = DEM_1
  # replacing values from raster_1 to create a new raster sample (raster_2)
    DEM_2[(DEM_2>500 & DEM_2<900)] = 550
    DEM_2[(DEM_2>200 & DEM_2<300)] = 500

#-------------------------------------------------------------------------
# Comparison 1 (DEM_3 resulted from subtracting DEM_2 from DEM_1)

  DEM_3 = DEM_1 - DEM_2

    par(mfrow=c(1,3))

    plot(DEM_1, main = "DEM_1")
    plot(DEM_2, main = "DEM_2")
    plot(DEM_3, main = "DEM_3 = DEM_1 - DEM_2")

      dev.off()

введите описание изображения здесь

#-------------------------------------------------------------------------
#Comparison 2 (histogram)

  hist(DEM_1, prob=T, main="DEM_1", xlab="")
  hist(DEM_2, prob=T, main="DEM_2", xlab="")
  hist(DEM_3, prob=T, main="DEM_3 = DEM_1 - DEM_2", xlab="")

    par(mfrow=c(1,1))

  standard_deviation = sd(c(as.matrix(DEM_3)),na.rm=T)

    dev.off()

введите описание изображения здесь

#-------------------------------------------------------------------------
#comparison 3 (RMSE)

  library(hydroGOF)

  DEM_1_matrix = c(as.matrix(DEM_1))
  DEM_2_matrix = c(as.matrix(DEM_2))

  rmse = rmse(DEM_1_matrix,DEM_2_matrix)
  rmse
  [1] 135.3675 # this is the root mean squared error (RMSE) result.

Смотрите ответ @ whuber о сравнении двух TIN, созданных с помощью ArcGIS for Desktop? для теоретического понимания этого вопроса.

Андре Силва
источник
5

Это можно сделать с помощью расширения геостатистического анализа ESRI ArcGIS - в справке есть раздел, посвященный проверке подмножеств .

Вы могли бы сделать то же самое через GRASS через интерфейс R . Томислав Хенгл подробно описывает, как это сделать, в своей книге «Практическое руководство по геостатистическому картографированию» . Это открытый доступ, поэтому PDF-файл можно загрузить бесплатно.

om_henners
источник
2

Насколько я знаю, RMSE указывается только при создании матрицы высот, а не в качестве атрибута для дальнейших ссылок, поэтому вам придется «ловить» его вручную при создании матрицы высот (при этом я никогда не делал DEM от Лидар, только по другим данным).

Если вы хотите увидеть различия между DATA внутри двух DEMS, я бы использовал cut / fill, который находится в расширении Spatial Analyst ArcGIS (в разделе «Анализ поверхности»). Вырезать / заполнить показывает вам на простой тематической карте изменения между DEM.

jonatr
источник
3
Вырезать / заполнить слишком грубо, потому что это не количественно определить различия. RMSE - это общий способ сравнения двух наборов данных: он не только полезен для сравнения ЦМР с наземными данными, но и является одним из способов количественной оценки различий между двумя ЦМР.
whuber
2

Я бы сделал простую ЦМР разницы. DEM2-DEM1. Это покажет все области, которые отличаются и насколько.

Theres изображение с высоким разрешением дем разницы на домашней странице моего сайта. thadwester.com
Взгляните на красочное левое изображение.

Тад
источник