Редагування хмари точок LiDAR для видалення шуму / залишків, присутніх під і над землею?


10

У мене є "брудні" дані LiDAR, що містять перше та останнє повернення, а також неминуче помилки під і над рівнем поверхні. (скріншот)

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

У мене під рукою є SAGA, QGIS, ESRI та FME, але реального методу немає. Який би був хороший робочий процес для очищення цих даних? Чи є повний автоматизований метод чи я б якось видалив вручну?


Чи класифікуються ваші точкові хмарні дані з низьким / високим рівнем шуму (класи 7 та 8 від las specs 1.4 R6)?
Аарон

Що ви спробували з будь-яким із цих програмних продуктів і де ви застрягли в ньому? Ви, здається, хочете обговорити варіанти, а не задавати цілеспрямоване питання. Обговорення варіантів завжди добре робити в чаті GIS.
PolyGeo

1
Голосуючи за повторне відкриття, модератор помиляє питання, які задає програмне забезпечення із запитаннями, які задають методи / способи щось зробити. Відповіді, у яких перераховано лише програмне забезпечення, не є реальними відповідями в цьому контексті. Я краще пояснити мій POV в gis.meta.stackexchange.com/questions/4380 / ... .
Андре Сільва

1
Крім того, здається, надто широке одностороннє закриття було використане надмірно: gis.meta.stackexchange.com/questions/4816/… . Я думаю, що тут справа стосується. Питання є особливим - це наявність усіх типів випускників у хмарі точок.
Андре Сільва

Відповіді:


9

У вас, здається, є люди, що пережили:

  • і) нижче поверхні землі;
  • ii) над поверхнею землі та вертикально серед інших реальних наземних рис;
  • iii) над точками землі, висота яких більша, ніж усі об'єкти, що цікавлять, наприклад, ті, що викликані хмарами чи птахами (це не показано на малюнку, але я припускаю, що це теж може бути).

Для "i" можливим є використання алгоритму наземного фільтра, який може враховувати "негативні помилки", щоб отримати чисту хмару основних точок LiDAR. Дивіться алгоритм Класифікації викривлення багатомасштабних даних (MCC) від Evans and Hudak (2007). Це сказано на сторінці 4:

Негативні помилки - поширене явище в даних LiDAR, яке може бути викликане розсіюванням фотонів у поверненому лазерному імпульсі. Розсіювання подовжує час повернення випромінюваного лазерного імпульсу до датчика літального апарату, надуваючи обчислення пройденої відстані, отже, спричиняючи помилку вимірювання, коли підняття поверхні помилково фіксується як таке, що знаходиться нижче навколишніх вимірювань. Слід зазначити, що підходи до класифікації кривизни можуть потенційно видалити дійсні прибутки, що оточують негативні помилки, що може розширити крайовий артефакт навколо негативного промаху, щоб створити чіткий ефект «кратера бомби». Щоб вирішити негативні помилки, Хагергер та Хардінг запропонували встановити параметр допуску кривизни до чотирьохкратного розміру інтерпольованої комірки та вибрати повернення, що перевищує цей негативний поріг кривизни. Однак слід зазначити, що за певних обставин віддача, яка здається негативною помилкою, може бути фактично прибутковою (наприклад, раковини). Отже, попередня пропозиція щодо видалення потенційних негативних помилок може бути реалізована як необов'язковий цикл останньої моделі, який можна використовувати на розсуд користувача, якщо це необхідно.

Нижче є публікація з прикладом використання MCC-LIDAR:

Після того, як у вас є точна хмара точок земної точки LiDAR, щоб зробити точну DEM, можна нормалізувати хмару точок і виключити точки, що знаходяться під поверхнею DEM (ті, що мають негативні значення). Використовуючи той самий підхід, можна також звернутися до точки "iii", видаляючи точки вище деякого фіксованого порогу. Див., Наприклад:

Тоді це залишає нам "ii", на що йдеться у відповіді AlecZ, яка рекомендує lasnoiseLAStools. Він також буде обробляти "iii", можливо, також частину "i" (LAStools вимагає ліцензії). Тут були цитовані інші інструменти, спеціально створені для перевірки / вилучення залишків: filters.outlierінструмент PDAL у відповіді Чарлі Парра, в якому детально роз'яснюється, як працює цей інструмент, і з перевагою PDAL - це вільне програмне забезпечення.

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


Еванс, Джефрі С .; Худак, Ендрю Т. 2007. Алгоритм викривлення багатомасштабних даних для класифікації дискретного повернення LiDAR у лісових середовищах . Угоди IEEE з питань геології та дистанційного зондування. 45 (4): 1029-1038.


3

Я рекомендую PDAL точку бібліотеки абстракції даних. Я мав добрий успіх у використанні PDAL для подібної проблеми з фільтрацією. Мені подобається PDAL, оскільки він є відкритим кодом, забезпечує підтримку Python та полегшує мені відтворення обробки та відстеження моїх параметрів фільтрації. Мені це також подобається, оскільки в ньому є "трубопроводи", де ви можете з'єднати кілька кроків (наприклад, обрізати, потім відфільтрувати, а потім експортувати) та виконати їх відразу. Зауважте, що якщо у вас дійсно, дійсно великі хмари точок PDAL можуть бути не настільки швидкими, як деякі інші рішення (LASTools, QTM тощо).

Ви можете вирішити питання про вихідні точки за допомогою трубопроводу PDAL, подібного до наступного:

{
"pipeline": [
    "input_utm.las",
    {
        "type":"filters.crop",
        "bounds":"([401900,415650],[7609100,7620200])"
    },
    {
        "type":"filters.outlier",
        "method":"statistical",
        "mean_k":12,
        "multiplier":2.0
    },
    {
        "type":"filters.range",
        "limits":"Classification![7:7]"
    },
    {
      "filename":"output.tif",
      "resolution":1.0,
      "output_type":"mean",
      "radius":3.0,
      "bounds":"([401900,415650],[7609100,7620200])",
      "type": "writers.gdal"
    }
    ]
}

Цей конвеєр зчитується в LAS, обрізає його до визначеної міри UTM, потім виконує фільтр, який позначає всі відмінні точки, потім виконує другий фільтр, який зберігає лише не відмінні точки (тобто прапор Класифікації! = 7), після чого експортує в 1 m роздільною здатністю GeoTIFF. Статистичний фільтр проводить обчислення середньої відстані найближчого сусіда, щоб перевірити, чи "точка" занадто далека від своїх сусідів, а отже, і більше.

З документації :

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


1
@AndreSilva відредаговано! по суті, він запитує, що таке "нормальна" відстань для точки, яка є формою, це сусіди (mean_k), і якщо відстань для точки занадто велика (більша, ніж (множник) * сигма вище середньої відстані), вона позначається як outlier
Чарлі Парр

1

Оскільки OP не обмежували рішення відкритим кодом, я б запропонував Quick Terrain Modeler ( QT Modeler ). Для цього потрібна ліцензія. Завантажте хмару точок у QT, і ви, по суті, нахилите її, щоб отримати потрібний перегляд профілю, гумкою обкладіть кластер, який ви хочете видалити, і просто натисніть видалити.


1

Мені пощастило просто використовувати фокусну дисперсію на інтерпольованому растрі. Потім ви присвоюєте значення дисперсії своїм точкам і використовуєте поріг для видалення локально високих дисперсій, що представляють великі відхилення від оцінки локального ядра.

Ви повинні переконатися, що роздільна здатність інтерпольованої поверхні є достатньо невеликим зерном, що вона фіксує локальну варіацію на рівні точки (s). Розмір ядра також матиме ефект, але для одиноких людей, що випадають, вистачить 3x3 вікна. Ви можете позбутися декількох додаткових точок, коли ви чуєте, але, з lidar, у вас є достатньо даних, щоб запасти.


1

Lastools забезпечує саме те, що вам потрібно - автоматизовані сценарії, які видалять усі ці точки для вас. Однак для цього є вартість ліцензування, але якщо це процес, який ви хочете швидко виконати як звичайне завдання, використання сценарію лазноаз з їх набору інструментів є ідеальним варіантом.

Як зазначав @Andre Silva, у ArcGIS є набір інструментів Las, якими ви можете скористатися після запуску геопроцесорного інструменту Create LAS Dataset. Звідти ви можете зайти вручну, щоб перекласифікувати або видалити ці точки шуму. Недолік полягає в тому, що це не настільки інтуїтивний чи ефективний процес, як QT Modeler (запропонований @auslander), мабуть, найкраща програма для візуалізації / аналізу / маніпулювання лас-файлами вручну, а також з вартістю ліцензії. ArcMap обмежить кількість видимих ​​точок під час редагування хмари точок, що означає, що вам, ймовірно, доведеться збільшувати масштаби в області з шумом, видаляти або перекласифікувати їх, а потім переміщуватись як частина ручного очищення. Але це дозволить виконати роботу.


1

Як заявив Андре Сільва , MCC-LIDAR - це хороший варіант вилучення первинних точок, але, з мого досвіду, він буде боротися, якщо у вас дуже великий показник (500 мільйонів балів або навіть менше). Іншими словами, він поверне помилку і не запустить алгоритм, навіть якщо ви зміните параметри (параметри масштабу та кривизни). Також, з мого досвіду, він зберігає деякі "негативні помилки" в даних.

Моя альтернатива тому - перевернути точкиcloud (точки під землею піднімуться вгору, а наземна знизиться). Для цього я завантажую дані в R та інвертую висоту, потім запускаю MCC-LIDAR і повторно інвертую дані. Можливо, ви можете це зробити в QGIS або ArcGIS, але залежно від розміру вашого набору даних, це може зайняти деякий час.

Інструмент PDAL земля також варіант хороший , як це краще працює з великими наборами даних , але, знову ж , деякі з точок сильфонні земля буде по- , як і раніше зберігається. Інвертування набору даних знову допоможе вирішити цю проблему.

Що стосується точок над землею, мій найкращий підхід - це ручне прибирання, і найкращий інструмент з відкритим кодом, який я знайшов для цього, знаходиться в CloudCompare. Ви виберете Segmentв меню верхнього рядка, і ви можете або видалити вибрані точки, або всі інші. Раніше я використовував LAStools ( lasviewінструмент) для цього, але спосіб роботи 3D-інтерфейсу не є таким зручним для користувачів.


Цікавий підхід інвертування хмари точок для усунення негативних помилок. Чи легко було завантажити R на 500 мільйонів пунктів на клавіші R?
Андре Сільва

Це може зайняти пару хвилин. Зазвичай я завантажую з файлу ASCII, використовуючи fread з пакету розробок data.table, де я можу грати з кількістю потоків, які потрібно використовувати.
Андре

1

Я технічна підтримка від GreenValley International, інструмент для видалення Outlier у нашому флагманському програмному забезпеченні LiDAR360 можна використовувати для максимального усунення цих помилок і, отже, покращення якості даних.

Алгоритм спочатку шукатиме сусідні точки кожної точки у визначеному користувачем сусідстві та обчислює середню відстань від точки до сусідніх точок. Потім обчислюють середнє та стандартне відхилення цих середніх відстаней для всіх точок. Якщо середня відстань точки до її сусідів більша за максимальну відстань (максимальна відстань = середнє + n * стандартне відхилення, де n - визначене користувачем множинне число), вона вважатиметься вищою та буде видалена з оригіналу хмара точок.

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


-1

Як варіант з відкритим кодом, 3D Forest має кілька приємних інструментів для автоматичної фільтрації, а також ручні інструменти для очищення хмарних точок. Можливо, вам доведеться спробувати різні параметри фільтра, щоб отримати необхідний результат. Незважаючи на те, що він орієнтований на лісові хмари, багато інструментів корисні в будь-якій точці.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.