StudiesStudent Projects
StreetBump: Smartphone-basierte Schlaglochdetektion

StreetBump: Smartphone-basierte Schlaglochdetektion

Leaders:  Eggert
Year:  2017

Aufnahme von Test- und Referenzdaten

Zu Beginn mussten Testdaten (Verortete Accelerometer-Messungen) beschafft werden, die später im Algorithmus ausgewertet werden sollten. Dazu wurde zunächst auf der  Kniggestraße eine Testfahrt durchgeführt. Wie sich später herausgestellt hat, waren die Daten jedoch für das Projekt nicht geeignet, da diese durch die Vielzahl von Schlaglöchern stark verrauscht waren. Deshalb haben wir uns für eine weitere Teststrecke (die Bückeburger-Allee) entschieden und dort eine weitere Testfahrt durchgeführt. Dort  gibt es zahlreiche Gullideckel, die sich gut eignen, da sie sehr tief im Straßenbelag liegen und weit genug voneinander entfernt sind. Die Lage der Gullideckel wurde später aus Google Earth abdigitalisiert.

Schlaglocherkennung

Nun werden die Accelerometer-Daten als Länge des Vektors aus x-, y- und z-Beschleunigung betrachtet. Der Grund dafür ist, dass das Smartphone in einer beliebigen Position während der Fahrt liegen kann. Allerdings muss sich das Smartphone an einem festen Platz befinden.

Für die Schlaglochanalyse werden nun Fahrtabschnitte (Geschwindigkeit > 0.5m/s) fester Länger (z.B. 50m) betrachtet. Mit jedem neuen Abschnitt wird ein gewichteter Mittelwert der Vektorlängen aktualisiert. „Grobe“ Abweichungen vom aktuellen Mittelwert werden als Schlagloch interpretiert.

Jedoch werden auf diese Weise Kurvenfahrten sowie Beschleunigungs- und Bremsvorgänge als Schlaglöcher fehlinterpretiert, da diese ebenfalls Kräfte auf das Accelerometer ausüben. Anschließend sollen die genannten Situationen erkannt und von der Schlaglochanalyse ausgeschlossen werden.

Um eine Kurvenfahrt zu auszuschließen, werden die entsprechenden GPS-Daten (bearing) verwendet. Im jeweiligen Abschnitt wird nun der kleinste und größte Wert gesucht und überprüft, ob die Differenz nicht größer als ein definierter Schwellwert (z.B. 15°) ist. Ist die Differenz größer, wird der Abschnitt ignoriert; falls nicht, kann eine Kurvenfahrt ausgeschlossen und der Abschnitt weiter betrachtet werden. Ähnlich kann bei den Beschleunigungs- und Bremsfahrten vorgegangen werden. Hierbei wird wie zuvor auf die GPS-Daten (speed) zurückgegeriffen. Wobei ebenfalls die Differenz zwischen dem kleinsten und größten Wert in einem Abschnitt gebildet wird. Ist die Abweichung nun größer als ein definierter Schwellwert (z.B. 0,5 m/s) wird der Abschnitt wieder ignoriert.

Können Kurven-, Brems- und Beschleunigungsfahrten ausgeschlossen werden,