Выявить объекты из облака точек при помощи обученной модели (3D Analyst)

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

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

Иллюстрация

Иллюстрация инструмента Выявить объекты из облака точек при помощи обученной модели

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

  • Для этого инструмента требуется установка Deep Learning Essentials, который содержит несколько решений нейронных сетей, включая нейронные архитектуры для классификации облаков точек.

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

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

  • Модель идентифицирует множество объектов, некоторые из которых могут перекрываться. Для их уточнения используются два ключевых порога: порог оценки достоверности и порог наложения. Показатель достоверности представляет собой числовое значение от 0,0 до 1,0, которое указывает, насколько вероятно, что объект будет правильно идентифицирован. Более высокий показатель подразумевает большую уверенность, и можно установить пороговое значение для фильтрации обнаружений, получивших уровень достоверности ниже заданного.

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

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

  • Если входная модель обучалась с использованием точек из определенных классов, которые были исключены из обучающих данных, используйте параметр Исключенные коды классов, чтобы убедиться в том, что эти точки будут исключены из набора точек, оцениваемых этой моделью. Исключение классов, не предоставляющих полезной для целей данной модели информации, уменьшит число оцениваемых точек, что повысит скорость обучения и применения модели. Например, точки, соответствующие зданиям, обычно не будут иметь никакого отношения к точкам, отображающим такие объекты, как светофоры, линии электропередач или автомобили. Точки зданий также можно адекватно классифицировать с помощью инструмента Классифицировать здания в LAS. Если точки с классом 6, отображающие здания, были исключены из обучающих данных, которые использовались для создания модели, точки зданий во входном облаке точек также должны быть классифицированы и исключены в этом инструменте.

Параметры

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

Облако точек, которое будет использоваться для обнаружения объектов.

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

Модель обнаружения объектов, которая будет использоваться. Могут быть указаны файл определения модели Esri (.emd), пакет глубокого обучения (.dlpk) или опубликованная модель обнаружения объектов из ArcGIS Online или Portal for ArcGIS.

File; String
Целевые объекты

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

  • Код объекта — коды, представляющие объекты, которые модель была обучена идентифицировать.
  • Достоверность – порог достоверности распознавания объектов действует по шкале от 0,0 до 1,0. Более высокое значение означает, что меньшее количество объектов будет соответствовать критериям положительной идентификации. Установка порога 1,0 требует 100-процентной уверенности в обнаружении объекта, что фактически делает распознавание любого объекта маловероятным. Если вы хотите исключить определенный объект из выходных данных, установите его порог достоверности равным 1,0.
  • Наложение – порог наложения позволяет выбрать объект, который будет сохранен при обнаружении нескольких перекрывающихся объектов. Порог наложения описывает соотношение между пересечением и объединением перекрывающихся ограничивающих рамок. Если несколько объектов перекрываются и превышен порог наложения, будет сохранен объект с более высокой достоверностью.

Value Table
Выходные объекты

Выходные объекты-мультипатчи, которые будут содержать ограничивающие рамки, окружающие объекты, выявленные во входном облаке точек.

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

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

Long
Обработка границ

Полигональный элемент или элементы, которые будут задавать обрабатываемую область.

Feature Layer
Базовая поверхность

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

Raster Layer
Исключаемые классы

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

Long

arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel(in_point_cloud, in_trained_model, target_objects, out_features, {batch_size}, boundary, reference_height, excluded_class_codes)
ИмяОписаниеТип данных
in_point_cloud

Облако точек, которое будет использоваться для обнаружения объектов.

LAS Dataset Layer
in_trained_model

Модель обнаружения объектов, которая будет использоваться. Могут быть указаны файл определения модели Esri (.emd), пакет глубокого обучения (.dlpk) или опубликованная модель обнаружения объектов из ArcGIS Online или Portal for ArcGIS.

File; String
target_objects
[target_objects,...]

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

  • Код объекта — коды, представляющие объекты, которые модель была обучена идентифицировать.
  • Достоверность – порог достоверности распознавания объектов действует по шкале от 0,0 до 1,0. Более высокое значение означает, что меньшее количество объектов будет соответствовать критериям положительной идентификации. Установка порога 1,0 требует 100-процентной уверенности в обнаружении объекта, что фактически делает распознавание любого объекта маловероятным. Если вы хотите исключить определенный объект из выходных данных, установите его порог достоверности равным 1,0.
  • Наложение – порог наложения позволяет выбрать объект, который будет сохранен при обнаружении нескольких перекрывающихся объектов. Порог наложения описывает соотношение между пересечением и объединением перекрывающихся ограничивающих рамок. Если несколько объектов перекрываются и превышен порог наложения, будет сохранен объект с более высокой достоверностью.

Value Table
out_features

Выходные объекты-мультипатчи, которые будут содержать ограничивающие рамки, окружающие объекты, выявленные во входном облаке точек.

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

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

Long
boundary

Полигональный элемент или элементы, которые будут задавать обрабатываемую область.

Feature Layer
reference_height

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

Raster Layer
excluded_class_codes
[excluded_class_codes,...]

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

Long

Пример кода

DetectObjectsFromPointCloudUsingTrainedModel, пример (окно Python)

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

import arcpy
arcpy.env.workspace = 'C:/data/detect_cars'
arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel('2018_survey.lasd', 'cars.emd',
                                                       [(1, 0.7, 0.4)], 'Cars_in_Point_Cloud.shp',
                                                       10, 'study_area_boundary.shp',
                                                       'dem.tif', [2, 6, 7, 18])

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

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

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