Сводка
Вычисляет статистику движения для точек в классе пространственных объектов с включенным временем.
Иллюстрация
Использование
Этот инструмент геообработки доступен с версией ArcGIS Enterprise 10.9 или более новой.
Результатом работы инструмента Вычислить статистику передвижения является копия входных точек с новым полем для каждой вычисленной статистики.
Вы можете указать одно или более полей для идентификации уникальных записей, также называемых треками. Треки представлены с помощью уникальной комбинации одного или нескольких полей трека. Например, если поля 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 — сумма уклонов в окне истории трека, деленная на количество уклонов, вычисленных в окне истории трека.
Для группы Простой будут рассчитаны следующие поля статистики:
- Idling — True если расстояние между текущим наблюдением и предыдущим меньше, чем значение параметра Допуск расстояния неактивности, а продолжительность между текущим наблюдением и предыдущим больше, чем значение параметра Допуск времени неактивности. 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, будет рассчитана с использованием всех наблюдений в истории трека.
Статистика не будет рассчитываться для первого объекта в каждом треке. Статистика в группе Ускорение не будет рассчитываться для первых двух объектов в каждом треке.
Результирующие значения будут в единицах, заданных параметрами Единицы измерения расстояний, Единица измерения времени, Единицы измерения скорости, Единицы измерения ускорения и Единицы измерения высоты.
При вычислении статистики по большим трекам можно использовать параметр Разбиение по временной границе для разделения больших треков на меньшие треки для повышения производительности.
Этот инструмент геообработки работает на ArcGIS GeoAnalytics Server. Анализ выполняется на вашем GeoAnalytics Server, а результаты сохраняются в ресурсы на вашем ArcGIS Enterprise.
При работе инструментов GeoAnalytics Server, анализ выполняется на GeoAnalytics Server. Для оптимальной производительности сделайте данные доступными для GeoAnalytics Server через векторные слои, размещенные на вашем портале ArcGIS Enterprise или через файловое хранилище больших данных. Данные, которые не являются локальными для GeoAnalytics Server, будут перемещены на GeoAnalytics Server до начала анализа. Это означает, что для запуска инструмента потребуется больше времени, а в некоторых случаях перемещение данных с ArcGIS Pro на GeoAnalytics Server может завершиться ошибкой. Порог сбоя зависит от скорости сети, а также от размера и сложности данных. Соответственно рекомендуется всегда предоставлять доступ к данным или создавать файловое хранилище больших данных.
Более подробно о публикации локаторов на портале
Более подробно о создании файловых хранилищ больших данных в Server Manager
Вы можете повысить производительность работы инструмента Вычислить статистику передвижения, выполнив одно или несколько следующих действий:
- Установите параметр среды Экстент так, чтобы вы анализировали только интересующие вас данные.
- Уменьшите значений параметра Окно истории трека.
- Используйте параметр Разбиение по временной границе для разбиения больших треков на определенные интервалы времени.
- Используйте локальные данные там, где запускается анализ.
Синтаксис
arcpy.geoanalytics.CalculateMotionStatistics(input_layer, output_name, 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}, {data_store})
Parameter | Объяснение | Тип данных |
input_layer | Точечные объекты со временем,для которых вычисляется статистика. | Feature Set |
output_name | Имя итогового слоя. | String |
track_fields [track_fields,...] | Одно или более полей для идентификации отдельных записей. | Field |
track_history_window (Дополнительный) | Число наблюдений (включая текущее), которое будет использовано для суммарной статистики. По умолчанию 3, это означает, что суммарная статистика будет вычислена в каждой точке трека, используя текущее наблюдение и предыдущие два. Этот параметр не влияет на моментальную статистику и классификацию неактивности. | Long |
motion_statistics [motion_statistics,...] (Дополнительный) | Задает группу, содержащую вычисляемую статистику, которая будет записана в результат. Если значение не задано, будет вычислена вся статистика в группе.
| String |
distance_method (Дополнительный) | Задает метод измерения расстояния, который будет использован при вычислении статистики передвижения.
| 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. Этот параметр доступен только с ArcGIS Enterprise версии 10.6 и позже. | Date |
distance_unit (Дополнительный) | Задает единицы измерения значений расстояния в выходном классе объектов.
| String |
duration_unit (Дополнительный) | Задает единицы измерения значений продолжительности в выходном классе объектов.
| String |
speed_unit | Задает единицы измерения значений скорости в выходном классе объектов.
| String |
acceleration_unit (Дополнительный) | Задает единицы измерения значений ускорения в выходном классе объектов.
| String |
elevation_unit (Дополнительный) | Задает единицы измерения значений высоты в выходном классе объектов.
| String |
data_store (Дополнительный) | Задает ArcGIS Data Store, где будут сохраняться выходные данные. По умолчанию – SPATIOTEMPORAL_DATA_STORE. Все результаты, находящиеся в хранилище пространственно-временных больших данных, будут храниться в системе WGS84. Результаты в реляционном хранилище данных сохраняют свои систему координат. | String |
Производные выходные данные
Name | Объяснение | Тип данных |
output | Выходной класс точечных объектов со статистикой передвижений. | Набор объектов |
Пример кода
Скрипт Python, демонстрирующий выполнение функции CalculateMotionStatistics.
# Name: CalculateMotionStatistics.py
# Description: Calculate speed, acceleration, and bearing for hurricane tracks.
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
inFeatures = "https://mydomain.com/server/rest/services/DataStoreCatalogs/bigDataFileShares_Hurricanes/BigDataCatalogServer/all"
out = "Hurricanes_MotionStats"
trackField = "name"
# Execute Calculate Motion Statistics
arcpy.geoanalytics.CalculateMotionStatistics(inFeatures, out, trackField, 5,
["SPEED", "ACCELERATION", "BEARING"],
"GEODESIC")
Environments
- Выходная система координат
Система координат, используемая при анализе. Если данный параметр не указан, анализ будет выполнен во входной системе координат. Для Инструменты GeoAnalytics готовые результаты будут храниться в пространственно-временном хранилище данных в системе координат WGS84.
Информация о лицензиях
- Basic: Требуется ArcGIS GeoAnalytics Server
- Standard: Требуется ArcGIS GeoAnalytics Server
- Advanced: Требуется ArcGIS GeoAnalytics Server