Изменить коды классов LAS (3D Analyst)

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

Переназначает коды классификации и флаги файлов .las.

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

  • Оцениваться этим инструментом будут все файлы .las, на которые ссылается набор данных LAS, но изменены будут только те файлы, которые содержат указанные коды классов.

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

  • Формат LAS поддерживает классификацию точек на основе спецификаций, разработанных обществом American Society for Photogrammetry and Remote Sensing (ASPRS). На платформе ArcGIS применяется схема классификации, предназначенная для файлов LAS версии 1.4:

    Значение классификацииТип классификации

    0

    Классификация не выполнялась

    1

    Не назначено

    2

    Земля

    3

    Низкая растительность

    4

    Средняя растительность

    5

    Высокая растительность

    6

    Здание

    7

    Низкий шум

    8

    Ключевые для модели / Зарезервировано

    9

    Вода

    10

    Железная дорога

    11

    Дорожное покрытие

    12

    Наложение / Зарезервировано

    13

    Грозозащитный трос

    14

    Провод

    15

    Опора ЛЭП

    16

    Изолятор

    17

    Мостовой настил

    18

    Высокий шум

    19 – 63

    Зарезервировано для Определения ASPRS (LAS от 1.1 до 1.3 поддерживают коды классов до 31)

    32 – 255

    Задается пользователем (поддерживается только в LAS 1.0 и в некоторых версиях 1.4)

Параметры

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

Обрабатываемый набор данных LAS.

LAS Dataset Layer
Коды классов

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Обновленный набор данных LAS.

LAS Dataset Layer

arcpy.ddd.ChangeLasClassCodes(in_las_dataset, class_codes, {compute_stats}, {extent}, boundary, {process_entire_files}, {update_pyramid})
ИмяОписаниеТип данных
in_las_dataset

Обрабатываемый набор данных LAS.

LAS Dataset Layer
class_codes
[[current_class, new_class],...]

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

Существующий код класса, новый код класса и новый флаг класса могут быть представлены в виде строки, разделенной пробелами, или списка списков, содержащих значения, подлежащие переклассификации. Например, текущий код класса 5 может быть изменен на 25 путем указания "5 2" или [[5, 2]]. Точно так же можно изменить флаг класса на синтетический, добавив ключевое слово для желаемой модификации ("5 2 SET" или [[5, 2, "SET"]]). Множественные изменения можно указать в виде строки, разделенной точкой с запятой (например, "5 2; 8 3; 1 4"), или в виде списка списков (например, [[5, 2], [8, 3], [1, 4]]).

Value Table
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 пересекает область интереса, будут обработаны все точки файла .las, включая те, что находятся вне области интереса.
Boolean
update_pyramid
(Дополнительный)

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

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

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

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

Обновленный набор данных LAS.

LAS Dataset Layer

Пример кода

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

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

arcpy.env.workspace = 'C:/data'
arcpy.ChangeLasClassCodes_3d('test.lasd', [[5, 2], [3, 1], [4, 6]],
                           'COMPUTE_STATS')
ChangeLasClassCodes пример 2 (автономный скрипт)

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

'''****************************************************************************
Name: Update LAS 1.0 Classification to ASPRS 1.1 Specs
Description: Updates classification of version 1.0 LAS files to conform to
             the standardized class codes introduced in the 1.1 specifications.
             The code is designed for use as a script tool.
****************************************************************************'''
# Import system modules
import arcpy

# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
lasd = arcpy.GetParameterAsText(2)
reclassList = arcpy.GetParameterAsText(3) #List of values '<oldCode> <newCode>'
calcStats = arcpy.GetParameter(4)

# Execute CreateLasDataset
arcpy.management.CreateLasDataset(inLas, lasd, recursion)
# Execute ChangeLasClassCodes
arcpy.ddd.ChangeLasClassCodes(lasd, reclassList, calcStats)

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