Классифицировать здания в LAS (3D Analyst)

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

Классифицирует крыши и стены зданий в данных LAS.

Иллюстрация

Иллюстрация инструмента Классифицировать здания в LAS

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

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

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

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

  • Параметр Метод не используется при задании опции Это фотограмметрические данные.

Параметры

ПодписьОписаниеТип данных
Входной набор данных LAS

Классифицируемый набор данных LAS.

LAS Dataset Layer
Минимальная высота крыши здания
(Дополнительный)

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

Linear Unit
Минимальная площадь

Минимальная площадь крыши здания.

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

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

  • Отмечено – статистика будет рассчитана. Это значение по умолчанию
  • Не отмечено – статистика не будет рассчитана.
Boolean
Экстент обработки
(Дополнительный)

Экстент данных, который будет оцениваться.

  • Текущий экстент отображения Current Display Extent — Экстент будет основан на активной карте или сцене. Эта опция доступна только при наличии активной карты.
  • Нарисовать экстент Draw Extent - экстент будет основан прямоугольнике, нарисованном на карте или сцене. Эта опция создает класс пространственных объектов в базе геоданных проекта и добавляет слой на карту. Класс объектов будет иметь ту же систему координат, что и карта.
    Примечание:

    Данная опция не доступна в диалоговом окне Параметры среды. Он доступен только из параметра инструмента, с экстентом в качестве типа данных, или на вкладке Параметры среды диалогового окна инструмента.

    Примечание:

    Если включена опция Включать и отключать редактирование на вкладке Редактирование, вы должны включить редактирование на вкладке ленты Редактирование, чтобы нарисовать экстент.

  • Экстент слоя Layer — Экстент будет основан на активном слое карты. Используйте раскрывающийся список, чтобы выбрать доступный слой, или используйте опцию Экстент данных во всех слоях, чтобы получить объединенный экстент всех активных слоев карты, за исключением базовой карты. Эта опция доступна только при наличии активной карты со слоями.

    У каждого слоя карте есть следующие опции:

    • Все объекты Select All - экстент всех объектов слоя.
    • Выбранные объектыArea from Selected Features - экстент всех выбранных объектов слоя.
    • Отображаемые объекты Extent Indicator - экстент всех отображаемых объектов слоя.
      Примечание:

      Экстенты опций Выбранные объекты Area from Selected Features и Отображаемые объекты Extent Indicator доступны только для векторных слоев.

  • Обзор Browse — Экстент будет основан на существующем наборе данных.
  • Пересечение входных данных Intersect — Экстент будет основан на минимальном или пересекающемся экстенте всех входных данных. Если никакие входные данные не перекрываются, получится пустой экстент со всеми нулями.
  • Объединение входных данных Union — Экстент будет основан на максимальном или объединенном экстенте всех входных данных.
  • Буфер обмена Paste - экстент может быть скопирован в буфер обмена и из него.
    • Копировать экстент Copy - копирует координаты экстента и систему координат в буфер обмена.
    • Вставить экстент Paste - вставляет координаты экстента и, дополнительно, систему координат из буфера обмена. Если значения буфера обмена не содержат систему координат, экстент будет использовать систему координат карты.
    Примечание:

    Координаты экстента копируются в буфер обмена и вставляются из него с использованием того же форматирования и порядка, что и для объекта ArcPy Extent: x-min, y-min, x-max, y-max и пространственная привязка.

  • Сбросить экстент Reset — Экстент будет сброшен до значения по умолчанию.
  • Координаты, введенные вручную – Координаты должны быть числовыми значениями и находиться в системе координат активной карты.
    Внимание:

    На карте могут использоваться единицы отображения, отличные от введенных координат. Использование направления по сторонам света (N, S, E, W) не поддерживается. Используйте знак отрицательного значения для координат юга и запада.

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

Полигональный объект, определяющий область интереса, которая будет обрабатываться.

Feature Layer
Обрабатывать все файлы LAS, пересекающие экстент
(Дополнительный)

Указывает, как область интереса будет использоваться для определения того, как будут обработаны файлы .las. Область интереса определяется значениями параметра Экстентом обработки, Граница обработки или сочетанием того и другого.

  • Не отмечено – будут обработаны только те точки LAS, что пересекают область интереса. Это значение по умолчанию
  • Отмечено – если какая-либо часть файла .las пересекает область интереса, будут обработаны все точки файла, включая те, что находятся вне области интереса.
Boolean
Средний интервал между точками

Средний интервал между точками LAS. Этот параметр больше не используется.

Linear Unit
Повторное использование существующих классифицированных точек зданий
(Дополнительный)

Указывает, будут ли существующие классифицированные точки зданий использоваться повторно или переоценены.

  • Не отмечено – существующие классифицированные точки зданий будут переоцениваться в соответствии с критериями обнаружения плоскости, а точкам, которые не соответствуют заданной площади и высоте, будет присвоено значение 1. Это значение по умолчанию
  • Отмечено – существующие классифицированные точки зданий будут применяться для обнаружения плоскости, но не будут переклассифицированы в случае, если они не соответствуют критериям, указанным при выполнении инструмента. Используйте эту опцию, если существующая классификация необходима.
Boolean
Это фотограмметрические данные
(Дополнительный)

Определяет, были ли получены точки в файле .las при помощи методики фотограмметрии.

  • Не отмечено – точки в файле .las были получены в результате лидарной съемки, а не фотограмметрического метода получения облаков точек. Это значение по умолчанию
  • Отмечено – точки в файле .las были получены при помощи фотограмметрического метода получения облаков точек из перекрывающихся снимков.
Boolean
Метод классификации
(Дополнительный)

Задает метод классификации, который будет использован.

  • АгрессивныйБудут выявлены точки, соответствующие характеристикам плоской крыши с относительно высоким допуском выбросов. Если точки не очень хорошо откалиброваны, желательно использовать этот метод.
  • СтандартныйБудут выявлены точки, соответствующие характеристикам плоской крыши с относительно умеренным допуском для нерегулярных точек. Используется по умолчанию
  • УмеренныйБудут выявлены точки, соответствующие характеристикам плоской крыши с относительно низким допуском для нерегулярных точек. Используйте этот метод, если точки находятся почти на одной плоскости с объектами, которые не являются зданиями.
String
Классификация точек выше крыш
(Дополнительный)

Указывает, следует ли классифицировать точки выше плоскостей, соответствующих крышам.

  • Не отмечено – точки, выявленные над плоскостями, не будут классифицированы. Это значение по умолчанию
  • Отмечено – точки, выявленные над плоскостями, будут классифицированы.
Boolean
Максимальная высота над крышей
(Дополнительный)

Максимальная высота точек над крышей зданий, которые будут классифицированы значением, заданным в параметре Код класса Над крышей.

Linear Unit
Код класса Над крышей
(Дополнительный)

Код класса, который будет присвоен точкам выше крыш.

Long
Классификация точек ниже крыш
(Дополнительный)

Указывает, следует ли классифицировать точки между земной поверхностью и крышами.

  • Не отмечено - точки, расположенные между крышей и землей, классифицированы не будут. Это значение по умолчанию
  • Отмечено - точки, расположенные между крышей и землей, будут классифицированы.
Boolean
Код класса ниже крыш
(Дополнительный)

Код класса, который будет присвоен точкам, расположенным между крышей и землей

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

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

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

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

ПодписьОписаниеТип данных
Полученный набор данных LAS

Набор данных LAS, который классифицируется на нахождение крыш зданий.

LAS Dataset Layer

arcpy.ddd.ClassifyLasBuilding(in_las_dataset, {min_height}, min_area, {compute_stats}, {extent}, boundary, {process_entire_files}, point_spacing, {reuse_building}, {photogrammetric_data}, {method}, {classify_above_roof}, {above_roof_height}, {above_roof_code}, {classify_below_roof}, {below_roof_code}, {update_pyramid})
ИмяОписаниеТип данных
in_las_dataset

Классифицируемый набор данных LAS.

LAS Dataset Layer
min_height
(Дополнительный)

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

Linear Unit
min_area

Минимальная площадь крыши здания.

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

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

  • COMPUTE_STATSСтатистика будет рассчитана. Это значение по умолчанию
  • NO_COMPUTE_STATSСтатистика не будет рассчитана.
Boolean
extent
(Дополнительный)

Экстент данных, который будет оцениваться.

  • MAXOF – Будет использоваться максимальный экстент всех входных данных.
  • MINOF – Будет использоваться минимальная область, которая является общей для всех входных данных.
  • DISPLAY — Экстент равен видимому отображению.
  • Имя слоя - будет использоваться тот же экстент, что и в указанном слое.
  • Объект Extent — будет использоваться экстент указанного объекта.
  • Строка координат, разделенных пробелами – будет использоваться экстент из заданной строки. Координаты должны быть выражены в таком порядке: x-min, y-min, x-max, y-max.
Extent
boundary

Полигональный объект, определяющий область интереса, которая будет обрабатываться.

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

Указывает, как применяется экстент обработки.

  • PROCESS_EXTENTБудут обработаны только те точки LAS, что пересекают область интереса. Это значение по умолчанию
  • PROCESS_ENTIRE_FILESЕсли какая-либо часть файла .las пересекает область интереса, будут обработаны все точки файла, включая те, что находятся вне области интереса.
Boolean
point_spacing

Средний интервал между точками LAS. Этот параметр больше не используется.

Linear Unit
reuse_building
(Дополнительный)

Указывает, будут ли существующие классифицированные точки зданий использоваться повторно или переоценены.

Указывает, будут ли существующие классифицированные точки зданий использоваться повторно или переоценены.

  • RECLASSIFY_BUILDINGСуществующие классифицированные точки зданий будут переоцениваться в соответствии с критериями обнаружения плоскости, а точкам, которые не соответствуют заданной площади и высоте, будет присвоено значение 1. Это значение по умолчанию
  • REUSE_BUILDINGСуществующие классифицированные точки зданий будут применяться для обнаружения плоскости, но не будут переклассифицированы в случае, если они не соответствуют критериям, указанным при выполнении инструмента. Используйте эту опцию, если существующая классификация необходима.
Boolean
photogrammetric_data
(Дополнительный)

Определяет, были ли получены точки в файле .las при помощи методики фотограмметрии.

Определяет, были ли получены точки в файле .las при помощи методики фотограмметрии.

  • NOT_PHOTOGRAMMETRIC_DATAТочки в файле .las были получены в результате лидарной съемки, а не фотограмметрического метода получения облаков точек. Это значение по умолчанию
  • PHOTOGRAMMETRIC_DATAТочки в файле .las были получены в результате фотограмметрического метода получения облаков точек из перекрывающихся снимков.
Boolean
method
(Дополнительный)

Задает метод классификации, который будет использован.

  • AGGRESSIVEБудут выявлены точки, соответствующие характеристикам плоской крыши с относительно высоким допуском выбросов. Если точки не очень хорошо откалиброваны, желательно использовать этот метод.
  • STANDARDБудут выявлены точки, соответствующие характеристикам плоской крыши с относительно умеренным допуском для нерегулярных точек. Используется по умолчанию
  • CONSERVATIVEБудут выявлены точки, соответствующие характеристикам плоской крыши с относительно низким допуском для нерегулярных точек. Используйте этот метод, если точки находятся почти на одной плоскости с объектами, которые не являются зданиями.
String
classify_above_roof
(Дополнительный)

Указывает, следует ли классифицировать точки выше плоскостей, соответствующих крышам.

  • NO_CLASSIFY_ABOVE_ROOFТочки, выявленные над плоскостями, не будут классифицированы. Используется по умолчанию
  • CLASSIFY_ABOVE_ROOFТочки, выявленные над плоскостями, будут классифицированы.
Boolean
above_roof_height
(Дополнительный)

Максимальная высота точек над крышей зданий, которые будут классифицированы значением, заданным в параметре Код класса Над крышей.

Linear Unit
above_roof_code
(Дополнительный)

Код класса, который будет присвоен точкам выше крыш.

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

Указывает, следует ли классифицировать точки между земной поверхностью и крышами.

  • NO_CLASSIFY_BELOW_ROOFТочки, расположенные между крышей и землей, не будут классифицированы. Это значение по умолчанию
  • CLASSIFY_BELOW_ROOFТочки, расположенные между крышей и землей, будут классифицированы.
Boolean
below_roof_code
(Дополнительный)

Код класса, который будет присвоен точкам, расположенным между крышей и землей

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

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

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

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

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

Набор данных LAS, который классифицируется на нахождение крыш зданий.

LAS Dataset Layer

Пример кода

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

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

arcpy.env.workspace = 'C:/data'

arcpy.ddd.ClassifyLasBuilding('Highland.lasd', minHeight='9 feet', 
                              minArea='30 Square Feet', compute_stats=True)
ClassifyLasBuilding, пример 2 (автономный скрипт)

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

'''****************************************************************************
       Name: Tile & Classify LAS Files
Description: Creates & classifies tiled LAS files.
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math

in_las = arcpy.GetParameterAsText(1) # The LAS files that need to be tiled
out_folder = arcpy.GetParameterAsText(2) # folder for LAS files
basename = arcpy.GetParameterAsText(3) # basename for output files
out_lasd = arcpy.GetParameterAsText(4) # output LAS dataset


try:
    # Create temp LAS dataset to reference LAS files that will be tiled
    temp_lasd = arcpy.CreateUniqueName('temp.lasd', tempfile.gettempdir())
    arcpy.management.CreateLasDataset(in_las, temp_lasd)
    arcpy.ddd.TileLas(temp_lasd, out_folder, basename, out_lasd, las_version=1.4, 
                      point_format=7, file_size=300)
    arcpy.management.Delete(temp_lasd)
    arcpy.ddd.ClassifyLasGround(out_lasd, method='AGGRESSIVE')
    arcpy.ddd.ClassifyLasBuilding(out_lasd, min_height='3 Meters', min_area='4 Meters')
    arcpy.ddd.ClassifyLasByHeight(out_lasd, height_classification=[(3, 6), (4,20), (5,70)],
                                  noise='All Noise', compute_stats='COMPUTE_STATS')

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

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