Bewegungsereignisse klassifizieren (AllSource)

Zusammenfassung

Identifiziert Richtungswechsel- und Beschleunigungsereignisse sowie die Geschwindigkeit in einem Eingabepunkt-Track-Dataset.

Abbildung

Abbildung des Werkzeugs "Bewegungsereignisse klassifizieren"

Verwendung

  • Damit das Werkzeug ausgeführt werden kann, muss der Wert des Parameters Eingabe-Features in einem projizierten Koordinatensystem vorliegen, und Zeiteigenschaften müssen aktiviert sein.

    Das Werkzeug identifiziert die folgenden Ereignisse:

    • Richtungswechsel nach rechts oder links
    • Rechte oder linke Wende
    • Beschleunigung
    • Verlangsamung
    • Start
    • Stop
    • Geschwindigkeit in Meilen pro Stunde
    • Geschwindigkeit in Kilometer pro Stunde
    • Von Peilung
    • Bis Peilung

    Außerdem wird die Entfernungsdifferenz und Zeitdifferenz zwischen dem aktuellen Punkt und dem vorherigen Punkt im Track berechnet.

    Optional wird ein Punkt der Interessensregion verortet.

  • Richtungswechsel werden auf Basis der Bewegungsrichtung beschriftet. Richtungswechsel können wie folgt kategorisiert werden:

    • Rechts
    • Links
    • Wende rechts
    • Wende links
    • Beendet
    • Bewegung

    Richtungswechsel werden mit den Parametern Krümmung und Anzahl an Punkten berechnet. Jeder Punkt wird auf Basis der Peilung vom vorherigen Punkt im Track zum aktuellen Punkt und vom aktuellen Punkt zum nächsten Punkt im Track evaluiert. Wenn der Wert den im Parameter Krümmung angegebenen Wert überschreitet, wird er als Richtungswechsel eingestuft. Andernfalls wird er als Bewegung betrachtet. Bei Tracks, die große Objekte darstellen, wie Flugzeuge oder Schiffe, empfiehlt es sich, dass Sie den Wert des Parameters Anzahl der Punkte erhöhen, um zu berücksichtigen, dass für die Durchführung eines Richtungswechsels mehr Zeit benötigt wird.

    Peilungsberechnungen
    Die Peilung wird vom vorherigen Punkt zum aktuellen Punkt und vom aktuellen Punkt zum nächsten Punkt berechnet, und anhand der Differenz werden Richtungswechselereignisse bestimmt.

  • Die Standardwerte für die Parameter Krümmung und Anzahl an Punkten sind für typische Auto-Tracks optimiert. Dabei wird eine Aufzeichnungs-Frequenz von etwa einer Sekunde angenommen. Bei Fahrzeugen, die schneller als Autos sind, oder bei Daten, die in einem anderen Intervall als einmal pro Sekunde erhoben werden, kann eine Änderung des Parameterwerts Krümmung oder Anzahl an Punkten erforderlich sein. Beispielsweise kann für ein persönliches GPS-Gerät, das einmal alle fünf Sekunden aufzeichnet, der Wert Anzahl an Punkten erhöht werden. Passen Sie bei Daten, die ein Flugzeug darstellen, das einmal jede Sekunde aufgezeichnet wird, den Wert des Parameters Krümmung auf 10 oder einen niedrigeren Wert an, um zu berücksichtigen, dass das Flugzeug mehr Zeit und Platz für einen Richtungswechsel benötigt.

    Unterschied im Wenderadius zwischen kleineren und größeren Objekten
    Kleinere Objekte, wie Personen und Autos benötigen einen geringeren Abstand für einen Richtungswechsel als größere Objekte, wie Flugzeuge und Schiffe.

  • Die Geschwindigkeit wird aus der Entfernung zwischen Punkten geteilt durch die Zeit, die für das Zurücklegen dieser Entfernung benötigt wird, berechnet. Stopps bedeuten, dass ein Fahrzeug eine Geschwindigkeit von null hat. Starts werden festgelegt, wenn Punkte von einer Stoppposition beschleunigen.

    Das acc_event-Feld wird anhand der Differenz zwischen dem aktuellen Punkt und dem vorherigen Punkt im Track und zwischen dem aktuellen Punkt und dem nächsten Punkt im Track berechnet. Zu den Beschleunigungsereignissen gehören die folgenden:

    • Ereignis "Start der Beschleunigung": Der Punkt, an dem die Beschleunigung auf dem Track beginnt. Der aktuelle Punkt folgt auf einen Punkt mit gleicher Geschwindigkeit und wird von einem Punkt mit höherer Geschwindigkeit gefolgt.

    • Ereignis "Start der Verlangsamung": Der Punkt, an dem die Verlangsamung auf dem Track beginnt. Der aktuelle Punkt folgt auf einen Punkt mit gleicher Geschwindigkeit und wird von einem Punkt mit geringerer Geschwindigkeit gefolgt.

    • Beschleunigung: Der Punkt-Track weist zwischen dem vorherigen und dem aktuellen Punkt eine zunehmende Geschwindigkeit auf. Dies muss nach dem Start der Beschleunigung und vor dem Ende eines Beschleunigungsereignisses erfolgen.

      Berechnung von Beschleunigungs- und Verlangsamungsereignissen
      Beschleunigungs- und Verlangsamungsereignisse werden anhand der Durchschnittsgeschwindigkeit zwischen Punkten berechnet.

    • Verlangsamung: Der Punkt-Track weist zwischen dem vorherigen und dem aktuellen Punkt eine abnehmende Geschwindigkeit auf. Dies muss nach dem Start eines Verlangsamungsereignisses und vor dem Ende eines Verlangsamungsereignisses erfolgen.

    • Ereignis "Ende der Beschleunigung": Der Punkt, an dem ein Beschleunigungsereignis endet. Der aktuelle Punkt weist eine höhere Geschwindigkeit als der vorherige Punkt auf, aber der folgende Punkt weist dieselbe oder eine geringere Geschwindigkeit auf. Darauf folgt üblicherweise ein Bewegungs- oder ein Verlangsamungsereignis.

    • Ereignis "Ende der Verlangsamung": Der Punkt, an dem ein Verlangsamungsereignis endet. Der aktuelle Punkt weist eine geringere Geschwindigkeit als der vorherige Punkt auf, aber der folgende Punkt weist dieselbe oder eine höhere Geschwindigkeit auf. Darauf folgt üblicherweise ein Gestoppt- oder ein Beschleunigungsereignis.

    • Gestoppt: Der Punkt-Track bewegt sich nicht. Die Geschwindigkeit muss 0 mph oder 0 km/h betragen.

    • Bewegung: Der Punkt-Track bewegt sich mit einer Geschwindigkeit, die nicht zu einer der vorherigen Kategorien gehört.

  • Die Ausgabe-Feature-Class enthält die folgenden Felder:

    • track_id: Die eindeutige Kennung, mit der der Punkt mit einem Track verknüpft wird. Dieses Feld wird vom Parameter ID-Feld abgeleitet.
    • time: Die Zeit, die mit dem Punkt-Track-Feature verknüpft ist. Dieses Feld wird vom Zeitfeld abgeleitet, das in den Layer-Eigenschaften angegeben wurde.
    • source_OID: Die Objekt-ID des Features, das aus dem Parameter Eingabe-Features abgeleitet wurde.
    • POINT_X: Die X-Koordinate, die mit dem aktuellen Feature verknüpft ist.
    • POINT_Y: Die Y-Koordinate, die mit dem aktuellen Feature verknüpft ist.
    • distance_diff: Die Entfernung zwischen dem vorherigen Feature im Track und dem aktuellen Feature. Die Entfernung wird in den Einheiten des Koordinatensystems der Eingabe berechnet.
    • time_diff: Die Differenz in Sekunden zwischen dem vorherigen Feature im Track und dem aktuellen Feature.
    • speed: Die Geschwindigkeit in den linearen Einheiten des Eingabe-Koordinatensystem pro Sekunde.
    • speed_mph: Die Geschwindigkeit in Meilen pro Stunde des Tracks vom vorherigen Feature im Track zum aktuellen Feature.
    • speed_kph: Die Geschwindigkeit in Kilometer pro Stunde des Tracks vom vorherigen Feature im Track zum aktuellen Feature.
    • acc_event: Beschleunigungsereignisse. Zu den Beschleunigungsereignissen gehören die folgenden:
      • Ereignis "Start der Beschleunigung"
      • Ereignis "Start der Verlangsamung"
      • Beschleunigung
      • Verlangsamung
      • Ereignis "Ende der Beschleunigung"
      • Ereignis "Ende der Verlangsamung"
      • Beendet
      • Bewegung
    • turn_event: Ein Richtungswechselereignis. Zu den Richtungswechselereignissen gehören die folgenden:
      • Links
      • Rechts
      • Wende links
      • Wende rechts
      • Beendet
      • Bewegung
    • from_bearing: Die Peilung vom vorherigen Punkt zum aktuellen Punkt im Track.
    • to_bearing: Die Peilung vom aktuellen Punkt zum nächsten Punkt im Track

    Wenn der Wert des Parameters Interessenregionen eine verknüpfte Feature-Class aufweist, wird ein roi_id-Feld ausgefüllt. Dieses Feld enthält die Interessenregion, die der Punkt schneidet.

    Wenn der Parameter Richtungswechselereignis-IDs erstellen aktiviert wurde, dann enthält die Ausgabeattributtabelle das Feld turn_event_id mit der eindeutigen Kennung, die für ein Richtungswechselereignis erstellt wurde. Wenn mit einem Richtungswechselereignis mehrere Features verknüpft sind, verwendet jedes Feature denselben Wert von turn_event_id.

  • Die Felder from_bearing und to_bearing werden einbezogen und dienen in erster Linie dazu, die Richtungsabhängigkeit der Bewegung zu erkennen und die Anwendung der Symbolisierung für eine korrekte Ausrichtung mit der Bewegungsrichtung zu unterstützen. Der wesentliche Unterschied zwischen diesen Feldern besteht darin, dass das from_bearing-Feld einen Rückwärtswinkel vom aktuellen Punkt zum vorherigen Punkt des Tracks darstellt.

  • Wenn der Parameter Ereignisse ohne Richtungswechsel ausschließen aktiviert ist, entfernt das Werkzeug alle Features im turn_event-Feld mit dem Wert "Bewegung". Dadurch kann die Größe der Ausgabe-Feature-Class verringert und die Performance verbessert werden. Empfohlen wird dies, wenn Sie für die forensische Analyse ermitteln möchten, wo und wie oft eine Kreuzung überquert wurde oder wo auf einem bestimmten Track ein Richtungswechsel stattgefunden hat.

  • Wenn der Parameter Richtungswechselereignis-Feature-Repräsentation auf Mittelpunkt der Kurve festgelegt ist, werden alle Richtungswechselereignis-Features mit dem gleichen Wert des Feldes turn_event_id am Mittelpunkt des Features aggregiert. Bei diesem reduktiven Prozess werden alle verknüpften Features entfernt, sodass nur noch ein Feature am berechneten Mittelpunkt des Richtungswechselereignisses vorhanden ist. Wegen seiner destruktiven Wirkung sollte dieser Parameter am besten nur dann verwendet werden, wenn gleichzeitig der Parameter Ereignisse ohne Richtungswechsel ausschließen aktiviert ist.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Features

Ein Punkt-Feature-Layer mit aktivierten Zeiteigenschaften und einem Feld, mit dem der Track gekennzeichnet wird, mit dem die einzelnen Punkte verknüpft sind. Geometrie, Objektkennung, Track-Name und Zeit werden auf die Ausgabe-Feature-Class übertragen. Die Eingabe muss sich in einem projizierten Koordinatensystem befinden.

Feature Layer
ID-Feld

Ein Feld der Eingabe-Features, das zum Abrufen der eindeutigen Kennung pro Punkt-Track verwendet wird. Das Feld wird in die Ausgabe-Feature-Class kopiert.

Field
Ausgabe-Feature-Class

Die Ausgabe-Feature-Class, in die die berechneten Bewegungsereignisse aufgenommen werden.

Feature Class
Krümmung
(optional)

Der Minimalwert, der erforderlich ist, damit ein Ereignis als Richtungswechselereignis klassifiziert wird. Nachdem die Krümmung berechnet wurde, führt jede berechnete Krümmung über diesem Wert dazu, dass das Feld turn_event mit dem relevanten Richtungswechselereignis gefüllt wird. Durch niedrigere Werte wird das Feld turn_event dagegen als "Bewegung" klassifiziert.

Richtungswechsel werden mit den Parametern Krümmung und Anzahl an Punkten berechnet. Jeder Punkt wird auf Basis der Peilung vom vorherigen Punkt im Track zum aktuellen Punkt und vom aktuellen Punkt zum nächsten Punkt im Track evaluiert. Wenn der Wert den im Parameter Krümmung angegebenen Wert überschreitet, wird er als Richtungswechsel eingestuft. Andernfalls wird er als Bewegung betrachtet. Bei Tracks, die große Objekte darstellen, empfiehlt es sich, dass Sie den Wert für Anzahl der Punkte erhöhen, um zu berücksichtigen, dass für die Durchführung eines Richtungswechsels mehr Zeit benötigt wird.

Double
Anzahl an Punkten
(optional)

Die Anzahl an Punkten, die vor oder nach einem bestimmten Punkt ausgewertet werden, wenn die Peilungsdifferenz berechnet wird. Wenn Sie Daten mit einer hohen Aufzeichnungs-Frequenz (Sekundenbruchteile) verwenden, müssen Sie möglicherweise den Wert des Parameters Anzahl an Punkten erhöhen, um der verringerten Bewegung Rechnung zu tragen, die in einem kürzeren Zeitraum möglich ist. Der Wert 1 ist für Autos und Fußgänger geeignet, wenn Eingabedaten einmal pro Sekunde aufgezeichnet werden. Für Flugzeuge und Schiffe sind größere Werte erforderlich. Verwenden Sie in diesen Fällen den Wert 5.

Long
Interessenregionen
(optional)

Die Interessenregionen. Dieser Eingabe-Feature-Layer muss eine Polygon-Feature-Class sein. Wird ein Wert bereitgestellt, wird ein roi-Feld zum Parameter Ausgabe-Feature-Class hinzugefügt.

Feature Layer
ID-Feld der Interessenregion
(optional)

Ein Feld des Parameters Relevante Regionen, der die eindeutigen Kennungen für jede Interessenregion enthält.

Field
Richtungswechselereignis-IDs erstellen
(optional)

Gibt an, ob Richtungswechselereignis-IDs für die Ausgabe-Feature-Class erstellt werden sollen.

  • Aktiviert: Es werden eindeutige Richtungswechselereignis-IDs erstellt.
  • Deaktiviert: Es werden keine eindeutigen Richtungswechselereignis-IDs erstellt. Dies ist die Standardeinstellung.

Boolean
Ereignisse ohne Richtungswechsel ausschließen
(optional)

Gibt an, ob Features, bei denen das Feld turn_event den Wert "Bewegung" hat, ausgeschlossen werden sollen.

  • Aktiviert: Features, bei denen das Feld turn_event den Wert "Bewegung" hat, werden ausgeschlossen.
  • Deaktiviert: Features, bei denen das Feld turn_event den Wert "Bewegung" hat, werden nicht ausgeschlossen. Stattdessen werden alle Features zurückgegeben. Dies ist die Standardeinstellung.

Boolean
Richtungswechselereignis-Feature-Repräsentation
(optional)

Gibt an, wie die Ausgabe-Richtungswechselereignisse dargestellt werden sollen.

  • Alle FeaturesAlle Punkte, die mit dem Richtungswechselereignis verknüpft sind, werden zurückgegeben. Dies ist die Standardeinstellung.
  • Richtungswechsel-MittelpunktDer Mittelpunkt des Richtungswechselereignisses wird zurückgegeben.
String

arcpy.intelligence.ClassifyMovementEvents(in_features, id_field, out_featureclass, {curvature}, {number_of_points}, {regions_of_interest}, {roi_id_field}, {include_turn_ids}, {exclude_non_turn_events}, {turn_events_representation})
NameErläuterungDatentyp
in_features

Ein Punkt-Feature-Layer mit aktivierten Zeiteigenschaften und einem Feld, mit dem der Track gekennzeichnet wird, mit dem die einzelnen Punkte verknüpft sind. Geometrie, Objektkennung, Track-Name und Zeit werden auf die Ausgabe-Feature-Class übertragen. Die Eingabe muss sich in einem projizierten Koordinatensystem befinden.

Feature Layer
id_field

Ein Feld der Eingabe-Features, das zum Abrufen der eindeutigen Kennung pro Punkt-Track verwendet wird. Das Feld wird in die Ausgabe-Feature-Class kopiert.

Field
out_featureclass

Die Ausgabe-Feature-Class, in die die berechneten Bewegungsereignisse aufgenommen werden.

Feature Class
curvature
(optional)

Der Minimalwert, der erforderlich ist, damit ein Ereignis als Richtungswechselereignis klassifiziert wird. Nachdem die Krümmung berechnet wurde, führt jede berechnete Krümmung über diesem Wert dazu, dass das Feld turn_event mit dem relevanten Richtungswechselereignis gefüllt wird. Durch niedrigere Werte wird das Feld turn_event dagegen als "Bewegung" klassifiziert.

Richtungswechsel werden mit den Parametern curvature und number_of_points berechnet. Jeder Punkt wird auf Basis der Peilung vom vorherigen Punkt im Track zum aktuellen Punkt und vom aktuellen Punkt zum nächsten Punkt im Track evaluiert. Wenn der Wert den im Parameter curvature angegebenen Wert überschreitet, wird er als Richtungswechsel eingestuft. Andernfalls wird er als Bewegung betrachtet. Bei Tracks, die große Objekte darstellen, empfiehlt es sich, dass Sie den Wert für number_of_points erhöhen, um zu berücksichtigen, dass für die Durchführung eines Richtungswechsels mehr Zeit benötigt wird.

Double
number_of_points
(optional)

Die Anzahl an Punkten, die vor oder nach einem bestimmten Punkt ausgewertet werden, wenn die Peilungsdifferenz berechnet wird. Wenn Sie Daten mit einer hohen Aufzeichnungs-Frequenz (Sekundenbruchteile) verwenden, müssen Sie möglicherweise den Wert des Parameters number_of_points erhöhen, um der verringerten Bewegung Rechnung zu tragen, die in einem kürzeren Zeitraum möglich ist. Der Wert 1 ist für Autos und Fußgänger geeignet, wenn Eingabedaten einmal pro Sekunde aufgezeichnet werden. Für Flugzeuge und Schiffe sind größere Werte erforderlich. Verwenden Sie in diesen Fällen den Wert 5.

Long
regions_of_interest
(optional)

Die Interessenregionen. Dieser Eingabe-Feature-Layer muss eine Polygon-Feature-Class sein. Wird ein Wert bereitgestellt, wird ein roi-Feld zum Parameter out_featureclass hinzugefügt.

Feature Layer
roi_id_field
(optional)

Ein Feld des Parameters regions_of_interest, der die eindeutigen Kennungen für jede Interessenregion enthält.

Field
include_turn_ids
(optional)

Gibt an, ob Richtungswechselereignis-IDs für die Ausgabe-Feature-Class erstellt werden sollen.

  • INCLUDE_TURN_IDSEs werden eindeutige Richtungswechselereignis-IDs erstellt.
  • NO_TURN_IDSEs werden keine eindeutigen Richtungswechselereignis-IDs erstellt. Dies ist die Standardeinstellung.
Boolean
exclude_non_turn_events
(optional)

Gibt an, ob Features, bei denen das Feld turn_event den Wert "Bewegung" hat, gefiltert werden sollen.

  • ONLY_TURN_EVENTSFeatures, bei denen das Feld turn_event den Wert "Bewegung" hat, werden ausgeschlossen.
  • ALL_FEATURESFeatures, bei denen das Feld turn_event den Wert "Bewegung" hat, werden nicht ausgeschlossen. Stattdessen werden alle Features zurückgegeben. Dies ist die Standardeinstellung.
Boolean
turn_events_representation
(optional)

Gibt an, wie die Ausgabe-Richtungswechselereignisse dargestellt werden sollen.

String

Codebeispiel

ClassifyMovementEvents – Beispiel (eigenständiges Skript)

Das folgende eigenständige Python-Skript veranschaulicht, wie die Funktion ClassifyMovementEvents verwendet wird.

# 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"

# Run tool
arcpy.intelligence.ClassifyMovementEvents(source_features,
                                          output_point_features,
                                          id_field,
                                          regions_of_interest,
                                          roi_name)