Классификация облака точек с использованием обучающей модели (3D Analyst)

Краткая информация

Классифицирует облако точек с помощью модели классификации PointCNN.

Использование

  • Этот инструмент использует PointCNN, используя среды глубокого обучения.

    Чтобы настроить компьютер на работу в среде глубокого обучения в ArcGIS Pro, см. раздел Установка сред глубокого обучения для ArcGIS.

  • По умолчанию инструмент классифицирует все точки входного облака точек. Если какие-либо из существующих кодов классов во входном облаке точек классифицированы правильно, исключите эти точки из редактирования, указав, какие коды классов следует редактировать, а какие сохранять, с помощью параметров Сохранение существующего кода класса и Существующие коды классов.

    Более подробно о классификации облака точек с помощью глубокого обучения

  • Входное облако точек должно иметь те же атрибуты с аналогичными диапазонами значений, что и обучающие данные, используемые для разработки классификационной модели. Например, если обученная модель использовала атрибут интенсивности с определенным диапазоном значений, облако точек должно иметь значения интенсивности в том же диапазоне. Плотность и распределение точек также должны быть аналогичны данным, которые использовались при обучении модели.

  • Если пространственная привязка входного облака точек не использует систему координат проекции, то для определения системы координат проекции, используемой при классификации точек, можно использовать параметр среды Выходная системы координат.

  • Параметр Базовая поверхность необходим, если используется модель классификации, которая была обучена по информации о базовых высотах. Растр, указанный для этого параметра, используется для извлечения атрибута относительной высоты для каждой накладывающейся точки. Атрибут вычисляется по z-значению каждой точки, из которого вычитается высота, полученная из растра с помощью билинейной интерполяции. Эта информация помогает дифференцировать объекты, связанные с классами, имеющими различимый диапазон относительных высот на растровой поверхности, что позволяет лучше дифференцировать их. Когда модель обучается с помощью информации об относительных высотах, растровая поверхность, используемая для классификации, должны быть основана на точках того же самого типа. Если растр, который был использован для получения относительных высот во время обучения, основан на классифицированных точках земной поверхности, задайте для инструмента растр того же типа. Для наборов данных LAS, представляющих полевую съемку, наиболее частым типом источника относительных высот являются классифицированные точки земной поверхности из того же облака точек. Растровая поверхность может быть сгенерирована по точкам наземной классификации с помощью применения фильтра к свойствам слоя набора данных LAS с последующим применением инструмента Набор данных LAS в растр. Если инструмент используется в Python, инструмент Создать слой набора данных LAS может использоваться для фильтрации необходимых точек перед созданием растра. Поверхность земли также может быть сгенерирована по слою сцены облака точек с помощью инструмента Облако точек в растр. Растровые поверхности, которые не происходят из входного облака точек, использовать можно, но необходимо убедиться, что z-значения в растре точно соответствуют z-значениям в облаке точек.

Параметры

ПодписьОписаниеТип данных
Целевое облако точек

Облако точек, которое будет классифицировано.

LAS Dataset Layer
Входное определение модели

Входной файл определения модели Esri (*.emd) или пакет глубокого обучения (*.dlpk), который будет использоваться для классификации облака точек. Также можно использовать веб-адрес для пакета глубокого обучения, опубликованный в ArcGIS Online или ArcGIS Living Atlas.

File; String
Целевая классификация

Коды классов из обученной модели, которые будут использоваться для классификации входного облака точек. Если поднабор не задан, по умолчанию будут использоваться все классы из входной модели.

String
Сохранение существующего кода класса
(Дополнительный)

Указывает, как будут определяться редактируемые точки из облака входных точек.

  • Редактировать все точки
  • Редактировать выбранные точки
  • Сохранить выбранные точки
String
Существующие коды классов
(Дополнительный)

Классы, точки которых будут редактироваться, или для которых будут сохранены исходные обозначения кодов классов, на основе значения параметра Сохранение существующего кода класса.

Long
Вычислить статистику
(Дополнительный)

Определяет, будет ли вычисляться статистика для файлов .las, на которые ссылается набор данных LAS. Вычисление статистики определяет пространственный индекс для каждого файла .las, что улучшает производительность анализа и отображения. Статистика также улучшает фильтрацию и символы, ограничивая отображение таких атрибутов LAS, как коды классификации и возвращаемая информация, значениями, которые присутствуют в файле .las.

  • Отмечено – статистика будет рассчитана. Это значение по умолчанию
  • Не отмечено – статистика не будет рассчитана.
Boolean
Обработка границ

Граница полигона, определяющего поднабор обрабатываемых точек из входного облака точек. Точки за пределами ограничивающих объектов не будут обрабатываться.

Feature Layer
Обновить пирамидные слои
(Дополнительный)

Определяет, будут ли пирамидные слои для набора данных LAS обновлены после изменения кодов классов.

  • Отмечено - пирамидные слои для набора данных LAS будут обновлены. Это значение по умолчанию
  • Не отмечено - пирамидные слои для набора данных LAS не будут обновлены.
Boolean
Базовая поверхность
(Дополнительный)

Растровая поверхность, которая будет использоваться для получения значений относительной высоты для каждой точки в данных облаков точек. Точки, которые не перекрываются с растром, будут исключены из анализа.

Raster Layer
Исключенные коды классов
(Дополнительный)

Коды классов, исключенные из обработки. Можно задать любое значение от 0 до 255.

Long
Размер пакета
(Дополнительный)

Блоки данных облаков точек, которые будут одновременно обрабатываться нейронной сетью во время операции вывода. Если значение не задано, оптимальный размер пакета будет вычислен на основе доступной памяти графического процессора. Объем памяти графического процессора, используемый данным блоком, зависит от лимита блока точек и атрибутов облака точек, необходимых для модели.

Long

Производные выходные данные

ПодписьОписаниеТип данных
Выходное облако точек

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

Feature Layer

arcpy.ddd.ClassifyPointCloudUsingTrainedModel(in_point_cloud, in_trained_model, output_classes, {in_class_mode}, {target_classes}, {compute_stats}, boundary, {update_pyramid}, {reference_height}, {excluded_class_codes}, {batch_size})
ИмяОписаниеТип данных
in_point_cloud

Облако точек, которое будет классифицировано.

LAS Dataset Layer
in_trained_model

Входной файл определения модели Esri (*.emd) или пакет глубокого обучения (*.dlpk), который будет использоваться для классификации облака точек. Также можно использовать веб-адрес для пакета глубокого обучения, опубликованный в ArcGIS Online или ArcGIS Living Atlas.

File; String
output_classes
[output_classes,...]

Коды классов из обученной модели, которые будут использоваться для классификации входного облака точек. Если поднабор не задан, по умолчанию будут использоваться все классы из входной модели.

String
in_class_mode
(Дополнительный)

Указывает, как будут определяться редактируемые точки из облака входных точек.

  • EDIT_ALLВсе точки во входном облаке точек будут редактироваться. Это значение по умолчанию
  • EDIT_SELECTEDБудут редактироваться только точки с кодами классов, заданными в параметре target_classes; все остальные точки останутся неизменными.
  • PRESERVE_SELECTEDТочки с кодами классов, указанными в параметре target_classes, будут сохранены, остальные точки будут редактироваться.
String
target_classes
[target_classes,...]
(Дополнительный)

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

Long
compute_stats
(Дополнительный)

Определяет, будет ли вычисляться статистика для файлов .las, на которые ссылается набор данных LAS. Вычисление статистики определяет пространственный индекс для каждого файла .las, что улучшает производительность анализа и отображения. Статистика также улучшает фильтрацию и символы, ограничивая отображение таких атрибутов LAS, как коды классификации и возвращаемая информация, значениями, которые присутствуют в файле .las.

  • COMPUTE_STATSСтатистика будет рассчитана. Это значение по умолчанию
  • NO_COMPUTE_STATSСтатистика не будет рассчитана.
Boolean
boundary

Граница полигона, определяющего поднабор обрабатываемых точек из входного облака точек. Точки за пределами ограничивающих объектов не будут обрабатываться.

Feature Layer
update_pyramid
(Дополнительный)

Определяет, будут ли пирамидные слои для набора данных LAS обновлены после изменения кодов классов.

  • UPDATE_PYRAMIDПирамидные слои для набора данных LAS будут обновлены. Это значение по умолчанию
  • NO_UPDATE_PYRAMIDПирамидные слои для набора данных LAS не будут обновлены.
Boolean
reference_height
(Дополнительный)

Растровая поверхность, которая будет использоваться для получения значений относительной высоты для каждой точки в данных облаков точек. Точки, которые не перекрываются с растром, будут исключены из анализа.

Raster Layer
excluded_class_codes
[excluded_class_codes,...]
(Дополнительный)

Коды классов, исключенные из обработки. Можно задать любое значение от 0 до 255.

Long
batch_size
(Дополнительный)

Блоки данных облаков точек, которые будут одновременно обрабатываться нейронной сетью во время операции вывода. Если значение не задано, оптимальный размер пакета будет вычислен на основе доступной памяти графического процессора. Объем памяти графического процессора, используемый данным блоком, зависит от лимита блока точек и атрибутов облака точек, необходимых для модели.

Long

Производные выходные данные

ИмяОписаниеТип данных
out_point_cloud

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

Feature Layer

Пример кода

ClassifyPointCloudUsingTrainedModel, пример (автономный скрипт)

В следующем примере показано использование этого инструмента в окне Python.

import arcpy
arcpy.env.workspace = 'C:/data/'
arcpy.ddd.ClassifyPointCloudUsingTrainedModel('2018_survey.lasd', 'electrical_infrastructure_classification.emd', 
                                              [14, 15], 'EDIT_SELECTED', [0,1])

Информация о лицензиях

  • Basic: Обязательно 3D Analyst
  • Standard: Обязательно 3D Analyst
  • Advanced: Обязательно 3D Analyst

Связанные разделы