FPGA basierte Fahrassistenzsysteme
Kamera basierte Fahrassistenzsysteme müssen Videobilder in Echtzeit verarbeiten. SCS hat verschiedene Bildverarbeitungsalgorithmen wie SGM-Stereo, optischer Fluss und Stixel auf einem FPGA umgesetzt. Diese sind nun im Serieneinsatz und machen die Strasse sicherer.
-
Problemstellung
Kamera basierte Fahrassistenzsysteme müssen Videobilder in Echtzeit verarbeiten. Bei neu entwickelten Algorithmen besteht häufig der Bedarf zur Beschleunigung der Laufzeit.
-
Lösung SCS
Der Algorithmus des Kunden lag als PC-Programm vor. SCS hat dessen Funktionalität auf eine FPGA-Plattform portiert, welche den Algorithmus in Echtzeit ausführt.
-
Mehrwert
Der Kunde ist nun in der Lage, den Algorithmus im Versuchsfahrzeug in Echtzeit auszuführen und im realen Verkehrsgeschehen zu testen.
Projekteinblicke
Ein Fahrassistenzsystem, beispielsweise ein Spurhalte- oder Stauassistent, muss auf einem Kamerabild die bekannten Objekte (Fahrbahn, Markierungen, Fahrzeuge, Fussgänger, etc.) erkennen. Die dabei benötigten Algorithmen werden von den Fachexperten unseres Kunden als PC-Programme umgesetzt.
Da zum Projektzeitpunkt die Leistungsfähigkeit moderner Prozessoren und Graphikkarten nicht ausgereicht hat, um mit dem Algorithmus das Videobild einer Automotive-Kamera in Echtzeit zu verarbeiten, konnte der Fachexperte die Funktionalität seines Algorithmus nicht im fahrenden Versuchsfahrzeug prüfen. Mehrere solcher Algorithmen wurden von den Ingenieur:innen der SCS auf einem FPGA implementiert und auf unserer dafür geeigneten Hardware-Plattform integriert. Das entstandene System erlaubt die Echtzeit-Verarbeitung der Videobilder. Dabei wurde jeweils zuerst in einer Machbarkeitsstudie in enger Zusammenarbeit mit dem Kunden die Umsetzbarkeit geprüft und der Realisierungsaufwand eruiert.

Anschliessend führte SCS die Umsetzung auf einem FPGA durch. Damit können die Algorithmen des Kunden im Versuchsfahrzeug in Echtzeit ausgeführt werden. Der Kunde kann sie zu einem Gesamtsystem zusammenfügen und im realen Verkehrsgeschehen testen, beispielsweise den Stixel-Algorithmus: Die Verarbeitung von Videobildern auf Pixelbasis erfordert vom Algorithmus die Handhabung erheblicher Datenmengen. Der Stixel-Algorithmus hilft, die Datenmenge zu reduzieren: Er fasst die Pixel einer Bildspalte zu „Säulen“, sogenannten Stixeln zusammen. Dabei bildet er Stixel aus senkrecht stehenden Flächen (in Fahrzeugrückfronten, Randsteinen, …), flachen Flächen (Fahrbahn, Gehsteig, …) und dem Hintergrund.
Neben der Datenreduktion wird eine erste, grobe Gruppierung der Pixel zu Teilobjekten erreicht. Dieser Algorithmus ist mathematisch komplex und entsprechend rechenintensiv. SCS ist es im Rahmen einer Machbarkeitsstudie gelungen, den Algorithmus auf eine Streaming-Architektur für ein preisgünstiges FPGAs abzubilden. Er wurde anschliessend auf der FPGA-Box von SCS umgesetzt und mit weiteren Algorithmen integriert. Zwei Automotive-Kameras können nun direkt angeschlossen werden. Das Resultat, ein Stixel-Bild, steht via Netzwerkanbindung zur Anzeige oder Weiterverarbeitung am PC zur Verfügung.
Die FPGA-Box von SCS war eines der Teilsysteme der Mercedes-Benz S-Class INTELLIGENT DRIVE, die als erstes Auto weltweit in einer Pionierleistung komplett autonom eine 100km lange Überlandstrecke gefahren ist. Die ausgewählte Strecke führt von Mannheim durch Dörfer und Kleinstädte bis nach Pforzheim und hat historische Bedeutung: Bertha Benz hat genau 125 Jahre früher auf derselben Strecke die Tauglichkeit der patentierten Benz-Motorkutsche demonstriert. Die moderne S-Klasse hat dabei erfolgreich zahlreiche schwierige Verkehrssituationen gemeistert.
Einen Einblick geben Text und Bilder auf folgender Webseite:
Pioneering achievement: Autonomous long-distance drive in rural and: Mercedes-Benz S-Class INTELLIGENT DRIVE drives autonomously in the tracks of Bertha Benz
