Вычислить статистику движения (GeoAnalytics Desktop)

Сводка

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

Иллюстрация

Иллюстрация инструмента Вычислить статистику передвижения
Точки с включенным временем обогащаются данными передвижения.

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

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

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

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

    Для группы Расстояния будут рассчитаны следующие поля статистики:

    • Distance — расстояние, пройденное от предыдущего наблюдения до текущего.
    • TotDistance — сумма расстояний, пройденных между наблюдениями в окне истории трека.
    • MinDistance — минимальное расстояние, пройденное между наблюдениями в окне истории трека.
    • MaxDistance — максимальное расстояние, пройденное между наблюдениями в окне истории трека.
    • AvgDistance — среднее расстояние, пройденное между наблюдениями в окне истории трека.

    Для группы Скорость будут рассчитаны следующие поля статистики:

    • Speed — скорость перемещения от предыдущего наблюдения к текущему.
    • MinSpeed — минимальная скорость между наблюдениями в окне истории трека.
    • MaxSpeed — максимальная скорость между наблюдениями в окне истории трека.
    • AvgSpeed — Сумма расстояний между наблюдениями в окне истории трека, деленная на сумму продолжительностей между наблюдениями в окне истории трека.

    Для группы Ускорение будут рассчитаны следующие поля статистики:

    • Acceleration — разница между текущей скоростью и предыдущей скоростью, деленная на текущую продолжительность.
    • MinAcceleration — минимальное ускорение, рассчитанное в окне истории трека.
    • MaxAcceleration — максимальное ускорение, рассчитанное в окне истории трека.
    • AvgAcceleration — разница между текущей и первой скоростями в окне истории трека делится на сумму продолжительностей между наблюдениями в окне истории трека.

    Для группы Продолжительность будут рассчитаны следующие поля статистики:

    • Duration — время, прошедшее с момента предыдущего наблюдения.
    • TotDuration — сумма продолжительностей в окне истории трека.
    • MinDuration — минимальная продолжительность в окне истории трека.
    • MaxDuration — максимальная продолжительность в окне истории трека.
    • AvgDuration — сумма продолжительностей в окне истории трека, деленная на количество длительностей, вычисленных в окне истории трека.

    Для группы Высота будут рассчитаны следующие поля статистики:

    • Elevation— текущая высота наблюдения.
    • ElevChange — разница между текущей высотой и предыдущей высотой.
    • TotElevChange — сумма изменений высот между точками в окне истории трека. Значение может быть отрицательным.
    • MinElevation — минимальная высота в окне истории трека.
    • MaxElevation — максимальная высота в окне истории трека.
    • AvgElevation — сумма высот в окне истории трека, деленная на количество наблюдений в окне истории трека.

    Для группы Уклон будут рассчитаны следующие поля статистики:

    • Slope — отношение изменения высоты к расстоянию между текущим и предыдущим наблюдениями.
    • MinSlope — минимальный уклон в окне истории трека.
    • MaxSlope — максимальный уклон в окне истории трека.
    • AvgSlope — сумма уклонов в окне истории трека, деленная на количество уклонов, вычисленных в окне истории трека.

    Для группы Простой будут рассчитаны следующие поля статистики:

    • IdlingTrue если расстояние между текущим наблюдением и предыдущим меньше, чем значение параметра Допуск расстояния неактивности, а продолжительность между текущим наблюдением и предыдущим больше, чем значение параметра Допуск времени неактивности. False если одно или оба из этих условий не выполняются.
    • TotIdleTime — сумма продолжительностей в окне истории трека, удовлетворяющих критериям неактивности.
    • PctIdleTime — процентное время обнаруженного простоя.

    Для группы Направление будет рассчитано следующее поле статистики:

    • Bearing — угол перемещения от предыдущего наблюдения к текущему наблюдению.
  • Статистика, начинающаяся с Min, Max, Avg или It, будет рассчитываться с использованием текущего наблюдения и ряда предыдущих наблюдений, определенных параметром Окно истории трека. Другие статистические данные всегда рассчитываются с использованием только текущего и предыдущего наблюдения и не учитывают значения Окна истории треков. Например, если вы зададите значение Окна истории треков равным 5 и запросите группу статистики Скорость, то текущее наблюдение и предыдущие 4 наблюдения будут использоваться для вычисления полей MinSpeed, MaxSpeed и AvgSpeed для каждого наблюдения, в то время как поле Speed будет вычисляться только с использованием текущего и предыдущего наблюдений в каждой точке. Значение параметра Окно истории трека должно быть больше 1. Значение по умолчанию равно 3.

  • На приведенной ниже диаграмме показан трек с шестью точечными объектами. Статистика рассчитывается на основе высоты каждого объекта, расстояния и времени.

    Линия времени с шестью точками, подписанными значениями времени и расстояния

    В следующей таблице приведены статистические расчеты для приведенной выше диаграммы. Все вычисления оцениваются в точке 5, а окно истории трека равно 3. Наблюдение считается неактивным, если оно переместилось менее чем на 32 метра за 1 минуту.

    СтатистикаФормулаПример

    Расстояние

    35 м

    Общее расстояние

    80 + 30 + 35 = 145 м

    Скорость

    Расстояние / Продолжительность

    35 / 60 = 0.58 м/с

    Средняя скорость

    Общее расстояние / Общая продолжительность

    145 / 180 м/с

    Ускорение

    (0.58 – 0.5) / 60 = 0.001 м/с2

    Среднее ускорение

    (Скорость (последняя) – Скорость (первая)) / (Общая продолжительность)

    (0.58 – 1.33) / 60 = -0.01 м/с2

    Продолжительность

    60 с

    Общая продолжительность

    60 + 60 + 60 = 180 с

    Высота

    5 м

    Изменение высоты

    5 – 4 = 1 м

    Общее изменение высоты

    5 – 0 = 5 м

    Уклон

    Изменение высоты / Расстояние

    1 / 35

    Средний уклон

    Общее изменение высоты / Общее расстояние

    5 / 145

    Idling

    False

    Общее время простоя

    60 с

    Процентное время простоя

    1 / 3

    Курс

    0

  • Если в истории трека меньше наблюдений, чем значение параметра Окно истории трека, статистика, начинающаяся с Min, Max, Avg или Tot, будет рассчитана с использованием всех наблюдений в истории трека.

  • Статистика не будет рассчитываться для первого объекта в каждом треке. Статистика в группе Ускорение не будет рассчитываться для первых двух объектов в каждом треке.

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

  • При вычислении статистики по большим трекам можно использовать параметр Разбиение по временной границе для разделения больших треков на меньшие треки для повышения производительности.

  • Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.

  • При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если вы используете размещенный векторный слой, рекомендуется использовать ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Для использования ArcGIS GeoAnalytics Server в целях выполнения анализа см. раздел Инструменты GeoAnalytics.

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

    • Установите параметр среды Экстент так, чтобы вы анализировали только интересующие вас данные.
    • Уменьшите значений параметра Окно истории трека.
    • Используйте параметр Разбиение по временной границе для разбиения больших треков на определенные интервалы времени.
    • Используйте локальные данные там, где запускается анализ.

Синтаксис

arcpy.gapro.CalculateMotionStatistics(input_layer, out_feature_class, track_fields, {track_history_window}, {motion_statistics}, {distance_method}, {idle_dist_tolerance}, {idle_time_tolerance}, {time_boundary_split}, {time_boundary_reference}, {distance_unit}, {duration_unit}, {speed_unit}, {acceleration_unit}, {elevation_unit})
ParameterОбъяснениеТип данных
input_layer

Точечные объекты со временем,для которых вычисляется статистика.

Table View
out_feature_class

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

Feature Class
track_fields
[track_fields,...]

Одно или более полей для идентификации отдельных записей.

Field
track_history_window
(Дополнительный)

Число наблюдений (включая текущее), которое будет использовано для суммарной статистики. По умолчанию 3, это означает, что суммарная статистика будет вычислена в каждой точке трека, используя текущее наблюдение и предыдущие два. Этот параметр не влияет на моментальную статистику и классификацию неактивности.

Long
motion_statistics
[motion_statistics,...]
(Дополнительный)

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

  • DISTANCEБудут вычислены расстояние между текущим и предыдущим наблюдением, а также максимальное, минимальное, среднее и общее расстояние в окне истории трека.
  • DURATIONБудут вычислены продолжительность между текущим и предыдущим наблюдением, а также максимальная, минимальная, средняя и общая продолжительность в окне истории трека.
  • SPEEDБудут вычислены скорость перемещения между текущим и предыдущим наблюдением, а также максимальная, минимальная и, средняя скорость в окне истории трека.
  • ACCELERATIONБудут вычислены ускорение между текущей скоростью и предыдущей скоростью, а также максимальное, минимальное и среднее ускорение в окне истории трека.
  • ELEVATIONБудут вычислены текущая высота, изменение высоты между текущим и предыдущим наблюдением, а также максимальное, минимальное, среднее и общее изменение высоты в окне истории трека.
  • SLOPEБудут вычислены уклон между текущим и предыдущим наблюдением, а также максимальный, минимальный и средний уклон в окне истории трека.
  • IDLEБудет вычислена неактивность элемента, а также процент времени неактивности в окне истории трека.
  • BEARINGБудет вычислен угол передвижения между текущим и предыдущим наблюдением.
String
distance_method
(Дополнительный)

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

  • GEODESICБудет использовано геодезическое расстояние. Это значение по умолчанию
  • PLANARБудет использовано планарное расстояние.
String
idle_dist_tolerance
(Дополнительный)

Максимальное расстояние, на которое должны отстоять две последовательные точки в треке, чтобы считаться неактивными. Параметр используется вместе с параметром idle_time_tolerance для определения неактивности элемента. Параметр idle_dist_tolerance требуется, если в параметре motion_statistics указана группа статистики IDLE или если будет рассчитываться статистика во всех группах.

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

Минимальная продолжительность, в течении которого две последовательные точки в треке должны находиться рядом, чтобы считаться неактивными. Параметр используется вместе с параметром idle_dist_tolerance для определения неактивности элемента. Параметр idle_time_tolerance требуется, если в параметре motion_statistics указана группа статистики IDLE или если будет рассчитываться статистика во всех группах.

Time Unit
time_boundary_split
(Дополнительный)

Временной промежуток, на который делятся входные данные для анализа. Временные границы позволяют анализировать значения в пределах заданного отрезка времени. Например, если вы используете временные границы в 1 день, начиная с 1 января , 1980, треки будут разбиты в начале каждого дня. Этот параметр доступен только с ArcGIS Enterprise версии 10.6 и позже.

Time Unit
time_boundary_reference
(Дополнительный)

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

Date
distance_unit
(Дополнительный)

Задает единицы измерения значений расстояния в выходном классе объектов.

  • METERSЕдиницы измерения – метры. Это значение по умолчанию
  • KILOMETERSЕдиницы измерения – километры.
  • MILESЕдиницы измерения – мили.
  • NAUTICAL_MILESЕдиницы измерения – морские мили.
  • YARDSЕдиницы измерения – ярды.
  • FEETЕдиницы измерения – футы.
String
duration_unit
(Дополнительный)

Задает единицы измерения значений продолжительности в выходном классе объектов.

  • YEARSЕдиницы измерения – годы.
  • MONTHSЕдиницы измерения – месяцы.
  • WEEKSЕдиницы измерения – недели.
  • DAYSЕдиницы измерения – дни.
  • HOURSЕдиницы измерения – часы.
  • MINUTESЕдиницы измерения – минуты.
  • SECONDSЕдиницы измерения – секунды. Это значение по умолчанию
  • MILLISECONDSЕдиницы измерения – миллисекунды.
String
speed_unit
(Дополнительный)

Задает единицы измерения значений скорости в выходном классе объектов.

  • METERS_PER_SECONDЕдиницы измерения – метры в секунду. Это значение по умолчанию
  • MILES_PER_HOURЕдиницы измерения – мили в час.
  • KILOMETERS_PER_HOURЕдиницы измерения – километры в час.
  • FEET_PER_SECONDЕдиницы измерения – футы в секунду.
  • NAUTICAL_MILES_PER_HOURЕдиницы измерения – морские мили в час.
String
acceleration_unit
(Дополнительный)

Задает единицы измерения значений ускорения в выходном классе объектов.

  • METERS_PER_SECOND_SQUAREDЕдиницы измерения – метры в секунду в квадрате. Это значение по умолчанию
  • FEET_PER_SECOND_SQUAREDЕдиницы измерения – футы в секунду в квадрате.
String
elevation_unit
(Дополнительный)

Задает единицы измерения значений высоты в выходном классе объектов.

  • METERSЕдиницы измерения – метры. Это значение по умолчанию
  • KILOMETERSЕдиницы измерения – километры.
  • MILESЕдиницы измерения – мили.
  • NAUTICAL_MILESЕдиницы измерения – морские мили.
  • YARDSЕдиницы измерения – ярды.
  • FEETЕдиницы измерения – футы.
String

Пример кода

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

Скрипт Python, демонстрирующий выполнение функции CalculateMotionStatistics.

# Name: CalculateMotionStatistics.py
# Description: Calculate speed, acceleration, and bearing for hurricane tracks.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/data/Weather.gdb"
# Set local variables
inFeatures = "Hurricanes"
trackField = "name"
out = "Hurricanes_MotionStats"
# Execute Calculate Motion Statistics
arcpy.gapro.CalculateMotionStatistics(inFeatures, out, trackField, 5, 
                                      ["SPEED", "ACCELERATION", "BEARING"],
                                      "GEODESIC")

Environments

Этот инструмент не использует параметры среды геообработки

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

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

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