Clasificar eventos de movimiento (Inteligencia)

Resumen

Identifica eventos de giro, eventos de aceleración y la velocidad de un dataset de rastreo de puntos de entrada.

Ilustración

Ilustración de la herramienta Clasificar eventos de movimiento

Uso

  • Para que la herramienta se ejecute, el valor del parámetro Entidades de entrada debe estar en un sistema de coordenadas proyectadas y debe tener habilitada la función de tiempo.

    La herramienta identificará los siguientes eventos:

    • Giro a la derecha o a la izquierda
    • Cambio de sentido a la derecha o a la izquierda
    • Aceleración
    • Deceleración
    • Arranque
    • Parada
    • Velocidad en millas por hora
    • Velocidad en kilómetros por hora
    • Rumbo de origen
    • Rumbo de destino

    Además, se calculará la diferencia de distancia y la diferencia de tiempo entre el punto actual y el punto anterior del recorrido.

    Opcionalmente, se localiza un punto de región de interés.

  • Los giros se anotan en función de la dirección del viaje. Los giros se pueden categorizar de las siguientes formas:

    • Giro a la derecha
    • Giro a la izquierda
    • Cambio de sentido a la derecha
    • Cambio de sentido a la izquierda
    • Detenido
    • Desplazamiento

    Los giros se calculan con los parámetros Curvatura y Número de puntos. Cada punto se evalúa sobre la base del rumbo desde el punto anterior del recorrido hasta el punto actual y desde el punto actual hasta el siguiente punto del recorrido. Si el valor supera el valor especificado en el parámetro Curvatura, se considera un giro. De lo contrario, se considera desplazamiento. Para los recorridos que representan objetos grandes, como aviones o barcos, se recomienda que aumente el valor del parámetro Número de puntos para tener en cuenta la mayor cantidad de tiempo para realizar un giro.

    Cálculos de rumbo

    El rumbo se calcula desde el punto anterior hasta el punto actual y desde el punto actual hasta el siguiente punto, y la diferencia se utiliza para determinar los eventos de giro.

  • Los valores predeterminados de los parámetros Curvatura y Número de puntos se optimizan para recorridos típicos de automóviles, suponiendo una tasa de muestreo aproximada de un segundo. Para los vehículos que se mueven más rápido que los automóviles o los datos que se muestrean en un intervalo distinto de uno por segundo, puede que deba cambiar los valores de los parámetros Curvatura o Número de puntos. Por ejemplo, para un dispositivo GPS personal que muestrea una vez cada cinco segundos, aumente el valor de Número de puntos. Para datos que representan un avión que se muestrea una vez por segundo, ajuste el valor del parámetro Curvatura a 10 o inferior para tener en cuenta la mayor cantidad de tiempo y espacio que se requiere para que un avión realice un giro.

    Las diferencias en el radio de giro entre objetos más pequeños y objetos más grandes

    Objetos más pequeños, como las personas y los coches, requieren menos distancia de giro que objetos más grandes, como aviones y barcos.

  • La velocidad se calcula utilizando la distancia entre puntos dividida por la cantidad de tiempo necesaria para recorrer esa distancia. Las paradas se identifican cuando un vehículo tiene una velocidad de cero. Los arranques se determinan a partir de cuando los puntos aceleran desde una posición de parada.

    El campo acc_event se calcula utilizando la diferencia del punto actual del recorrido y el punto anterior del recorrido y entre el punto actual y el siguiente punto del recorrido. Entre los eventos de aceleración específicos se incluyen los siguientes:

    • Evento Inicio de aceleración: el punto en el que empieza a acelerarse el recorrido. Al punto actual le precede un punto de igual velocidad y está seguido de un punto con una mayor velocidad.
    • Evento Inicio de frenada: el punto en el que empieza a ralentizarse el recorrido. Al punto actual le precede un punto de igual velocidad y está seguido de un punto con una velocidad menor.
    • Aceleración: el rastreo de puntos tiene una velocidad creciente entre el punto anterior y el punto actual. Esto debe ocurrir después del evento de inicio de aceleración y antes del evento de fin de aceleración.
    • Frenada: el rastreo de puntos tiene una velocidad decreciente entre el punto anterior y el punto actual. Esto debe producirse tras un evento de inicio de frenada y después de un evento de fin de frenada.
    • Evento Fin de aceleración: el punto en el que se detiene un evento de aceleración. El punto actual tiene una velocidad mayor que el punto anterior, pero el punto siguiente es de la misma o menor velocidad. Esto suele ir seguido de Desplazamiento o un evento de frenada.
    • Evento Fin de frenada: el punto en el que se detiene un evento de frenada. El punto actual tiene una velocidad menor que el punto anterior, pero el punto siguiente es de la misma o mayor velocidad. Esto suele ir seguido de Detenido o de un evento de aceleración.
    • Detenido: el rastreo de puntos no se mueve. La velocidad debe ser igual a 0 mph o 0 km/h.
    • Desplazamiento: el rastreo de puntos se mueve a una velocidad que no pertenece a ninguna de las categorías anteriores.

    Cálculo de eventos de aceleración y frenada

    Los eventos de aceleración y frenada se calculan utilizando la velocidad media entre puntos.

  • La clase de entidad de salida contendrá los siguientes campos:

    • track_id- el identificador único que asocia el punto a un recorrido. Este campo se deriva del parámetro Campo de Id.
    • time- el tiempo asociado a la entidad de rastreo de puntos. Este campo se deriva del campo de tiempo especificado en las propiedades de capa.
    • POINT_X- la coordenada x asociada a la entidad actual.
    • POINT_Y- la coordenada y asociada a la entidad actual.
    • distance_diff- la distancia entre la entidad anterior del recorrido y la entidad actual. La distancia se calcula en las unidades del sistema de coordenadas de entrada.
    • time_diff- la diferencia en segundos entre la entidad anterior del recorrido y la entidad actual.
    • speed- la velocidad en las unidades lineales del sistema de coordenadas de entrada por segundo.
    • speed_MPH- la velocidad en millas por hora del recorrido desde la entidad anterior del recorrido a la entidad actual.
    • speed_KMPH- la velocidad en kilómetros por hora del recorrido desde la entidad anterior del recorrido a la entidad actual.
    • acc_event- eventos de aceleración. Entre los eventos de aceleración específicos se incluyen los siguientes:
      • Evento de inicio de aceleración
      • Evento de inicio de frenada
      • Aceleración
      • Frenada
      • Evento de fin de aceleración
      • Evento de fin de frenada
      • Detenido
      • Desplazamiento
    • turn_event- un evento de giro. Entre los eventos de giro específicos se incluyen los siguientes:
      • Giro a la izquierda
      • Giro a la derecha
      • Cambio de sentido a la izquierda
      • Cambio de sentido a la derecha
      • Detenido
      • Desplazamiento
    • from_bearing- el rumbo desde el punto anterior del recorrido al punto actual.
    • to_bearing- el rumbo desde el punto actual del recorrido al siguiente punto.

    Si el valor del parámetro opcional Regiones de interés tiene una clase de entidad asociada, se rellenará un campo roi_id. Este campo incluirá la región de interés que interseca el punto.

  • Se incluyen los campos from_bearing y to_bearing y están pensados principalmente para ayudar a comprender la direccionalidad del viaje y ayudar a aplicar la simbología para orientar correctamente con la dirección del viaje. La diferencia clave con estos campos es que el campo from_bearing representa un ángulo hacia atrás desde el punto actual hasta el punto anterior del recorrido.

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades de entrada

Una capa de entidades de punto con la función de tiempo habilitada con un campo que anota el recorrido al que está asociado cada punto. La geometría, el identificador de objeto, el nombre del recorrido y el tiempo se transferirán a la clase de entidad de salida. La entrada debe estar en un sistema de coordenadas proyectadas.

Feature Layer
Campo de Id.

Un campo de las entidades de entrada que se usará para obtener los identificadores únicos por rastreo de puntos. El campo se copiará a la clase de entidad de salida.

Field
Clase de entidad de salida

La clase de entidad de salida que contendrá los eventos de movimiento calculados.

Feature Class
Curvatura
(Opcional)

El valor mínimo necesario para clasificar un evento como evento de giro. Una vez calculada la curvatura, cualquier curvatura calculada mayor que este valor hará que el campo turn_event se rellene con el evento de giro relevante, mientras que los valores menores que este harán que el campo turn_event se clasifique como Desplazamiento.

Los giros se calculan con los parámetros Curvatura y Número de puntos. Cada punto se evalúa sobre la base del rumbo desde el punto anterior del recorrido hasta el punto actual y desde el punto actual hasta el siguiente punto del recorrido. Si el valor supera el valor especificado en el parámetro Curvatura, se considera un giro. De lo contrario, se considera desplazamiento. Para los recorridos que representan objetos grandes, se recomienda que aumente el valor de Número de puntos para tener en cuenta la mayor cantidad de tiempo para realizar un giro.

Double
Número de puntos
(Opcional)

El número de puntos que se evaluarán antes y después de un punto determinado al calcular la diferencia de rumbo. Al utilizar datos con una tasa de muestreo alta (subsegundo), es posible que tenga que aumentar el valor del parámetro Número de puntos para tener en cuenta la posible reducción de movimiento en ese breve periodo de tiempo. Un valor de 1 es adecuado para automóviles y peatones, suponiendo un muestreo de un segundo en los datos de entrada. Se necesitan valores más grandes para las aeronaves y los barcos, y se debe usar un valor predeterminado de 5.

Long
Regiones de interés
(Opcional)

Las regiones de interés. Esta capa de entidades de entrada debe ser una clase de entidad poligonal. Si se proporciona un valor, se agregará un campo roi al parámetro Clase de entidad de salida.

Feature Layer
Campo Id. de regiones de interés
(Opcional)

Un campo del parámetro Regiones de interés que contiene los identificadores únicos de cada región de interés.

Field

arcpy.intelligence.ClassifyMovementEvents(in_features, id_field, out_featureclass, {curvature}, {number_of_points}, {regions_of_interest}, {roi_id_field})
NombreExplicaciónTipo de datos
in_features

Una capa de entidades de punto con la función de tiempo habilitada con un campo que anota el recorrido al que está asociado cada punto. La geometría, el identificador de objeto, el nombre del recorrido y el tiempo se transferirán a la clase de entidad de salida. La entrada debe estar en un sistema de coordenadas proyectadas.

Feature Layer
id_field

Un campo de las entidades de entrada que se usará para obtener los identificadores únicos por rastreo de puntos. El campo se copiará a la clase de entidad de salida.

Field
out_featureclass

La clase de entidad de salida que contendrá los eventos de movimiento calculados.

Feature Class
curvature
(Opcional)

El valor mínimo necesario para clasificar un evento como evento de giro. Una vez calculada la curvatura, cualquier curvatura calculada mayor que este valor hará que el campo turn_event se rellene con el evento de giro relevante, mientras que los valores menores que este harán que el campo turn_event se clasifique como Desplazamiento.

Los giros se calculan con los parámetros curvature y number_of_points. Cada punto se evalúa sobre la base del rumbo desde el punto anterior del recorrido hasta el punto actual y desde el punto actual hasta el siguiente punto del recorrido. Si el valor supera el valor especificado en el parámetro curvature, se considera un giro. De lo contrario, se considera desplazamiento. Para los recorridos que representan objetos grandes, se recomienda que aumente el valor de number_of_points para tener en cuenta la mayor cantidad de tiempo para realizar un giro.

Double
number_of_points
(Opcional)

El número de puntos que se evaluarán antes y después de un punto determinado al calcular la diferencia de rumbo. Al utilizar datos con una tasa de muestreo alta (subsegundo), es posible que tenga que aumentar el valor del parámetro number_of_points para tener en cuenta la posible reducción de movimiento en ese breve periodo de tiempo. Un valor de 1 es adecuado para automóviles y peatones, suponiendo un muestreo de un segundo en los datos de entrada. Se necesitan valores más grandes para las aeronaves y los barcos, y se debe usar un valor predeterminado de 5.

Long
regions_of_interest
(Opcional)

Las regiones de interés. Esta capa de entidades de entrada debe ser una clase de entidad poligonal. Si se proporciona un valor, se agregará un campo roi al parámetro out_featureclass.

Feature Layer
roi_id_field
(Opcional)

Un campo del parámetro regions_of_interest que contiene los identificadores únicos de cada región de interés.

Field

Muestra de código

Ejemplo de ClassifyMovementEvents (script independiente)

El siguiente script independiente de Python muestra cómo utilizar la función 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)

Información de licenciamiento

  • Basic: No
  • Standard: No
  • Advanced: Sí

Temas relacionados