Классифицировать события движения (Intelligence)

Сводка

Идентифицирует события поворота, ускорения и скорости из входного набора данных точек трека.

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

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

    Инструмент будет распознавать следующие события:

    • Правый или левый поворот
    • Правый или левый u-поворот (разворот)
    • Ускорение
    • Замедление
    • Начало
    • Остановить
    • Скорость в милях в час
    • Скорость в км в час
    • Разница расстояний между текущей точкой и предыдущей точкой пути
    • Разница расстояний между текущей точкой и предыдущей точкой пути
    • Имя области интереса, в которой находится текущая точка, если указан класс объектов Области интереса

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

  • Значения по умолчанию для параметров Кривизна и Количество точек оптимизированы для типичных автомобильных трасс, предполагая частоту отбора данных примерно раз в секунду. Транспортные средства, которые движутся быстрее, чем автомобили, или данные, которые отбираются с интервалом не один раз в секунду, могут потребовать изменения параметров Кривизна или Количество точек. Например, человек, использующий персональное GPS-устройство, которое производит отбор данных каждые пять секунд, может уменьшить значение параметра Количество точек. Данные, представляющие самолет, отбор которых производится один раз в секунду, могут уменьшить значение параметра Кривизна до 1,5 или ниже, чтобы учесть большее количество времени и пространства, которое требуется самолету для выполнения поворота.

  • Скорость вычисляется путем деления расстояния между точками на количество времени, необходимое для прохождения этого расстояния. Остановки определяются, когда транспортное средство имеет нулевую скорость. Начало движения определяется с момента, когда точки разгоняются из остановленного положения.

  • Выходной класс объектов будет содержать следующие поля:

    • track_id – Уникальный идентификатор, связывающий точку с треком (трассой). Это поле является производным от параметра Поле ID (ID Field).
    • time – Время, связанное с объектом точек трека. Это поле является производным от поля времени, заданного в свойствах слоя.
    • POINT_X – координата x, связанная с текущим объектом.
    • POINT_Y – координата y, связанная с текущим объектом.
    • distance_diff – Расстояние между предыдущим объектом на треке и текущим объектом. Это расстояние вычисляется в единицах системы координат входных данных.
    • time_diff – Разница в секундах между предыдущим объектом на отрезке пути и текущим объектом.
    • speed – Скорость в линейных единицах входной системы координат в секунду.
    • speed_MPH – Скорость в милях в час на отрезке пути от предыдущего объекта на этом отрезке до текущего объекта.
    • speed_KMPH – Скорость в километрах в час на отрезке пути от предыдущего объекта на этом отрезке до текущего объекта.
    • acc_event – События ускорения. К событиям ускорения относятся следующие:
      • Начало ускорения – Точка, где путь начинает ускоряться.
      • Начало торможения – Точка, где путь начинает замедляться.
      • Ускорение – Точка, в которой путь имеет увеличивающуюся скорость между предыдущей точкой и текущей точкой. Это должно произойти после начала разгона (ускорения).
      • Торможение – точка, в которой путь имеет убывающую скорость между предыдущей точкой и текущей точкой. Это должно произойти после окончания торможения.
      • Окончание ускорения – Точка, в которой событие ускорения прекращается. Обычно за этим следует либо движение, либо событие торможения.
      • Окончание торможения – Точка, в которой событие торможения прекращается. Обычно за этим следует событие остановки или ускорения.
      • Остановка – Точка пути не движется. Скорость должна быть равна 0 миль в час или 0 км в час.
      • Движение – Точка пути движется со скоростью, которая не попадает ни в одну из предыдущих категорий.
    • turn_event – Событие поворота. К событиям поворота относятся поворот налево, поворот направо, Левый разворот, Правый разворот и Рабочий ход (Движение).

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

Синтаксис

arcpy.intelligence.ClassifyMovementEvents(in_features, id_field, out_featureclass, {curvature}, {number_of_points}, {regions_of_interest}, {roi_id_field})
ParameterОбъяснениеТип данных
in_features

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

Feature Layer
id_field

Поле Входных объектов для получения уникальных идентификаторов точек трека (пути). Это поле будет скопировано в выходной класс объектов.

Field
out_featureclass

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

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

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

Чтобы определить, соответствует ли событие критериям для события поворота, рассчитывается кривая Менгера на основе трех точек. Расстояние между этими точками задается параметром Количество точек. Значение параметра Кривизны по умолчанию, равное 2, подходит для автомобилей и пешеходов. Для более скоростных транспортных средств, таких как самолеты, потребуется либо уменьшить это значение, либо увеличить значение параметра Количество точек.

Double
number_of_points
(Дополнительный)

Количество точек для оценки до и после заданной точки при расчете кривой Менгера. При использовании данных с высокой частотой отбора данных (субсекунда) вам может потребоваться увеличить значение параметра Количество точек, чтобы учесть «пониженное» движение, которое возможно за этот короткий промежуток времени. Значение по умолчанию 5 подходит для автомобилей и пешеходов, если предполагается отбор входных данных с частотой один раз в секунду.

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

Области интереса Этот дополнительный входной векторный слой должен быть классом полигональных объектов. Если он указан, то к параметру Выходной класс объектов будет добавлено поле roi.

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

Поле из параметра Области интереса, содержащее уникальные идентификаторы для каждой области интереса.

Field

Пример кода

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

Следующий автономный Python скрипт демонстрирует, как использовать инструмент ClassifyMovementEvents.

# Name: ClassifyMovementEvents.py
# Description: Identify movement events in a point track dataset. 
# Import system modules 
import arcpy 
arcpy.env.workspace = "C:/data/Tracks.gdb"
# Set local variables 
source_features = "Known_Tracks"
output_movement_events = "MovementEvents"
id_field = "device_id"
regions_of_interest = "Named_Areas_Of_Interest"
roi_name = "counties"
# Execute tool
arcpy.ClassifyMovementEvents_intelligence(source_features,
                                   							output_point_features,
                                   							id_field,
                                   							regions_of_interest,
																																										roi_name)

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

  • Basic: Нет
  • Standard: Нет
  • Advanced: Да

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