NEWS
Dev Blog / Geometrische Kurven-Erkennung
Entwicklung 01. März 2026 · 8 min Lesezeit

Geometrische Kurven-Erkennung

Wie ein neuer Algorithmus 2–3× mehr Kurven erkennt — und warum GPS-Koordinaten allein ausreichen.

Algorithmus GPS Kurvenerkennung v0.0.16

Kurvenfokus erkennt Kurven bisher über die Schräglage — wenn das Motorrad kippt, beginnt eine Kurve. Das funktioniert gut, hat aber eine fundamentale Schwäche: Ohne Schräglage-Daten gibt es keine Kurven.

Das ist ein Problem, sobald Touren aus anderen Quellen importiert werden — oder wenn jemand eine geplante Route analysieren möchte, bevor er überhaupt losfährt.

Das Problem mit Schräglage-basierter Erkennung

Der aktuelle Algorithmus funktioniert nach einem einfachen Prinzip: Schräglage über Schwellwert → Kurve beginnt. Schräglage unter Schwellwert → Kurve endet. Das ist intuitiv und liefert bei intensiven Fahrten gute Ergebnisse.

Aber es gibt drei Szenarien, in denen dieser Ansatz versagt:

📍
Geplante Routen
Keine Fahrt, keine Schräglage — der Algorithmus erkennt 0 Kurven in einer Route, die 300 Kehren enthält.
📱
Fremde GPS-Tracks
Touren aus Komoot, Calimoto oder GPX-Dateien haben oft keine Schräglage-Daten.
🛣️
Sanfte Kurven
Weite Bögen auf der Bundesstraße erzeugen kaum Schräglage — und werden trotzdem übersehen.

Die Lösung: Den Track selbst lesen

Jeder GPS-Track enthält bereits alle Kurven-Informationen. Man muss nicht wissen, wie stark sich das Motorrad geneigt hat. Man muss nur die Geometrie der gefahrenen Linie auswerten.

Der Algorithmus in 6 Schritten

1
Kurswinkel berechnen
Für jedes aufeinanderfolgende Punkt-Paar wird der Bearing (Kompassrichtung) ermittelt. Punkt A nach Punkt B ergibt z.B. 89° — der Fahrer fährt nach Osten.
2
Kursänderung messen
Die Differenz aufeinanderfolgender Bearings zeigt, wie stark sich die Fahrtrichtung ändert. 89° → 95° = 6° Kursänderung nach rechts.
3
GPS-Rauschen glätten
Median-Filter und Gauss-Glättung entfernen GPS-Jitter, ohne echte Kurven zu verlieren.
4
Gleichgerichtete Änderungen kumulieren
Solange die Richtung gleich bleibt, addieren sich die Kursänderungen: 6° + 8° + 5° + 7° = 26° Gesamtwinkel.
5
Kurve erkennen
Gesamtwinkel ≥ 20° in gleiche Richtung = Kurve. Ein Richtungswechsel oder Geradeaus-Stück beendet die Kurve.
6
Radius berechnen
R = Bogenlänge / Winkel. Damit lässt sich jede Kurve nach Typ klassifizieren.

Ergebnis: 2.9× mehr Kurven

Bisherig (Lean-basiert)
142
erkannte Kurven
Neu (Geometrisch)
415
erkannte Kurven

Kurven-Kategorien der Arabba → München Tour

38
83
136
158
Kehren (≥ 120°)
Scharf (60–120°)
Mittel (35–60°)
Leicht (20–35°)

Vergleich über fünf Touren

Tour km Lean Geo Faktor
Arabba → München 303 142 415 2.9×
München → Arabba 356 286 724 2.5×
Arabba ⇄ Wolkenstein 72 159 363 2.3×
Arabba ⇄ Cibiana 208 396 846 2.1×
Ederseetour 191 368 631 1.7×

Zwei Muster sind erkennbar: Je kurviger die Strecke, desto näher liegen die Zahlen beieinander — der Lean-Algorithmus funktioniert bei intensiven Kurven gut, übersieht aber die sanfteren. Und je weniger Sensor-Daten vorhanden sind, desto größer wird der Vorteil der geometrischen Erkennung.

Der härteste Test: Nur GPS-Koordinaten

Eine reine Planungsroute — keinerlei Sensor-Daten, nur GPS-Wegpunkte:

Lean-basiert
0
keine Lean-Daten verfügbar
Geometrisch
351
Kurven erkannt — nur aus GPS

Neue Metrik: Kurvenradius

Der geometrische Ansatz liefert einen wichtigen Zusatzwert: den Kurvenradius — berechnet aus Bogenlänge und Gesamtwinkel.

5
Serpentinen (<25m)
102
Landstraße (25–100m)
226
Bundesstraße (100–500m)
82
Autobahnbögen (>500m)

Damit lassen sich Kurven auf der Karte nach Schärfe farbcodieren — von Rot (eng, herausfordernd) bis Grün (weite Bögen) — und Touren werden objektiv vergleichbar.

Das 3-Stufen-Modell

Stufe 1 GPS-Geometrie

Koordinaten → Kurswinkel → Kursänderung → Kurven-Erkennung

Liefert: Position, Winkel, Radius, Richtung, Bogenlänge, Kategorie

Immer verfügbar — funktioniert mit jedem GPS-Track

Stufe 2 Sensor-Anreicherung

Schräglage → Max-Lean, Avg-Lean, Schwierigkeitsgrad pro Kurve

Ergänzt: Intensität, Fahrdynamik, Fahrer-Verhalten

Wenn Schräglage-Daten vorhanden (RideLink, Calimoto, Motobit)

Stufe 3 Klassifikation

Radius + Winkel + Lean → Kurven-Typ und Schwierigkeitsgrad

Serpentine · Landstraße · Bundesstraße · Kreisverkehr

Automatisch — kombiniert Stufe 1 und 2

Der entscheidende Paradigmenwechsel: Die Erkennung hängt nicht mehr von Sensor-Daten ab. Schräglage-Daten sind ein wertvoller Bonus — aber kein Muss.

Was das für Kurvenfokus bedeutet

📈 2–3× mehr erkannte Kurven — besonders bei Langstrecken mit Autobahn-Anteil
🎯 Konsistente Ergebnisse — unabhängig von der Datenquelle
🗺️ Jeder GPS-Track wird unterstützt — auch ohne Telemetrie
📋 Geplante Routen können vor der Fahrt analysiert werden
📐 Neue Metriken — Kurvenradius, Gesamtwinkel, Bogenlänge
Keine blinden Flecken — der Track auf der Karte und die erkannten Kurven stimmen überein
Fazit

Die Kurven waren immer da — im GPS-Track, in der Geometrie der Straße. Wir mussten nur lernen, sie zu lesen.

🔬
Unabhängige Eigenentwicklung

Alle in diesem Artikel beschriebenen Algorithmen, Methoden und Analysekonzepte wurden ausschließlich auf Basis eigener Beobachtungen und der Auswertung eigenen Tourenmaterials entwickelt. Es wurden keine externen Quellen, wissenschaftlichen Publikationen oder fremde Softwarebibliotheken als inhaltliche Grundlage herangezogen.

Die Entwicklung erfolgt iterativ und datengetrieben: Reale GPS-Tracks aus eigenen Motorradtouren bilden die Grundlage jeder Weiterentwicklung. Dieser Ansatz stellt sicher, dass die Ergebnisse praxisnah und unabhängig von theoretischen Modellen Dritter sind.

© 2026 Marco Fuhrmann — Die Verwendung, Übernahme oder Weiterverbreitung dieser Inhalte — auch in abgewandelter Form — ist ohne ausdrückliche schriftliche Genehmigung des Autors nicht gestattet. kurvenfokus@gmail.com

Alle Entwicklungsberichte