Определение голой матрицы высот из несекретного файла LAS?


10

У меня есть данные в формате LAS со значениями RGB, созданными с помощью аэрофотограмметрии с использованием БПЛА. Я пытаюсь найти решение для извлечения голой ЦМР из облака точек.

Я пробовал SAGA, Fusion, MCC-LIDAR, но кажется, что им нужен файл LAS, который уже классифицирован (чего, естественно, нет). Кто-нибудь может указать мне правильное направление с кратким объяснением процесса?

Как правило, мне нужно обрабатывать около 100 точек за раз (можно при необходимости разбить их на плитки).


MCC или Fusion не требуют, чтобы ваши очки были засекречены. Однако код программы MCC заполняет поле классификации. Что заставило вас поверить, что это так? Возможно, у вас возникла проблема с версией файла las, которую было бы хорошо определить сейчас.
Джеффри Эванс

Ответы:


16

Генерация LiDAR DEM из несекретных облаков точек с:

MCC-LIDAR - это инструмент командной строки для обработки данных LIDAR с дискретным возвратом в лесных средах (Evans & Hudak, 2007).

Процедура:

  • а) несекретное облако точек.
  • б) земля возвращается.
  • в) голая ЦМР (растр).

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


Давайте создадим гипотетическую ситуацию для дальнейшего предоставления примера с кодом.

MCC-LIDAR устанавливается в:

C:\MCC

Неклассифицированное облако точек LiDAR (файл .las) находится в:

C:\lidar\project\unclassified.las  

Выход, который будет представлять собой матрицу высот, находится в:

C:\lidar\project\dem.asc  

В приведенном ниже примере классифицируется возврат по земле с помощью алгоритма MCC и создается голая матрица высот с разрешением 1 метр.

#MCC syntax: 
#command
#-s (spacing for scale domain)
#-t (curvature threshold)
#input_file (unclassified point cloud) 
#output_file (classified point cloud - ground -> class 2 and not ground -> class 1)
#-c (cell size of ground surface)
#output_DEM (raster surface interpolated from ground points)

C:\MCC\bin\mcc-lidar.exe -s 0.5 -t 0.07 C:\lidar\project\unclassified.las C:\lidar\project\classified.las -c 1 C:\lidar\project\dem.asc

Чтобы лучше понять, как работают масштаб (ы) и параметры порога кривизны (t), прочитайте: Как запустить MCC-LiDAR и; Эванс и Худак (2007).

Параметры должны быть откалиброваны, чтобы избежать ошибок при вводе / маркировке (когда точка классифицируется как принадлежащая земле, но фактически она принадлежит растительности или зданиям). Например:

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

MCC-LIDAR использует метод интерполяции тонких пластин (TPS) для классификации точек заземления и генерации матрицы высот на поверхности земли.


Ссылки:

Для получения дополнительной информации об алгоритмах классификации наземных точек см. Meng et al. (2010):


МКК лидар, похоже, сражается с количеством очков. Это говорит о недостаточной памяти, попробуйте больший интервал между сообщениями. Я пробовал использовать сетку с шагом 5 из 1 м. На сильной рабочей станции у меня память 96 Гб, так что проблем быть не может.
user32307

@ user32307, см. этот пост , в котором сообщается о той же проблеме. Ответ там может помочь вам.
Андре Сильва

8

Я думаю, что LasTools может удовлетворить ваши потребности, см. LASGround . Лицензия немного смешная в зависимости от того, какие инструменты. Инструменты могут быть загружены и оценены до покупки; Также продукт является относительно недорогим.


7

Мне повезло с командой FUSION (руководство здесь ) GroundFilter. У меня не было проблем с обработкой 40 миллионов баллов (неклассифицировано), поэтому я не ожидал бы проблемы с 100 миллионами.


2

Это можно сделать с помощью фильтра с использованием алгоритмов простого морфологического фильтра (SMRF) или прогрессивного морфологического фильтра (PMF) .

Быстро

pdal ground --cell_size=5 --extract input.laz out-bare-earth.laz

Создает файл LAS со сжатием без заземления с размером ячейки 5 единиц заземления, используя PMF. ( документы )

Для более подробного объяснения см. Идентификацию возвратов основания с помощью учебника по сегментации ProgressiveMorphologicalFilter .

Более вовлечены, используя SMRF

Пример конвейера, который:

  • применяет фильтр SMRF, увеличивает параметр cellразмера до 2,0 (единицы системы координат) и порог 0,75
  • выбирает только недавно классифицированные точки заземления ( 2это стандартное значение LAS для земли)
  • записывает выделение в несжатый выходной файл LAS (просто измените расширение на .laz для сжатого)

Команда: pdal pipeline "classify-ground-smrf.json"

Файл параметров JSON:

{
    "pipeline": [
        "inputfile.laz",
        {
            "type":"filters.smrf",
            "cell": "2.0",
            "threshold": "0.75"
        },
        {
            "type":"filters.range",
            "limits":"Classification[2:2]"
        },
        "out/smurf_classifed.las"
    ]
}

Извлекать только надземный

В этом примере а) классифицируется как земля / не земля, б) добавляется атрибут «Высота над землей», и в) экспортируются только точки 2.0 (единицы системы координат) над землей.

{
    "pipeline": [
        "input.laz",
        {
            "type": "filters.assign",
            "assignment": "Classification[:]=0"
        },
        {
            "type": "filters.smrf"
        },
        {
            "type": "filters.hag"
        },
        {
            "type": "filters.range",
            "limits": "HeightAboveGround[2:]"
        },
        {
            "filename":"above-ground.laz"
        }
    ]
}

Адаптировано из Брэда Чамберса, https://lists.osgeo.org/pipermail/pdal/2017-July/001367.html


Я обнаружил, что определенные геометрии структурных объектов (например, зданий) идентифицированы достаточно хорошо, но морфологические подходы работают довольно плохо в лесных районах, особенно с переменными склонами. Если бы лидарные данные были получены по городской территории, я бы, конечно, рекомендовал MF, но другие алгоритмы намного более эффективны, учитывая другие физические параметры.
Джеффри Эванс

@JeffreyEvans, можете ли вы рассказать, какие еще алгоритмы вы считаете лучше в негородских условиях? (и, возможно, какие виды вне города, например, лесные, гористые, ...)
Matt Wilkie
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.