Aufmacherbild

Ceva

Fahrerassistenzsysteme unterstützen Autofahrer in bestimmten Fahrsituationen, machen das Fahren sicherer und steigern den Fahrkomfort. Aktuelle Systeme führen grundlegende Aufgaben autonom aus und bilden die Basis für künftiges autonomes Fahren.

Der Weg hin zum autonomen Fahren beinhaltet Entwicklungen in drei Schlüsseltechnologiebereichen. Dazu zählen die Sensorik einschließlich Radar, LiDAR und visuelle Überwachung mittels Kamera, hochauflösende Landkarten sowie die Lokalisierung mit genauer Darstellung der aktuellen Fahrzeugumgebung.

Bild 1: Kameras ermöglichen eine Rundumsicht und treiben die Weiterentwicklung aktueller ADAS-Anwendungen voran.

Bild 1: Kameras ermöglichen eine Rundumsicht und treiben die Weiterentwicklung aktueller ADAS-Anwendungen voran. Ceva

Dabei spielen die Möglichkeiten der Bildverarbeitung eine wesentliche Rolle. Bild 1 zeigt, wie Kameras heute eine Rundumsicht ermöglichen und damit ADAS-Anwendungen unterstützen (Tabelle 1). Da die fahrzeuginternen Systeme routinemäßig immer mehr Entscheidungsaufgaben übernehmen, steigt der Bedarf an effizienten, stromsparenden Rechnerplattformen, die eine optische Erkennung mit minimaler Latenz ermöglichen. Dies ist erforderlich, damit das Fahrzeug Fußgänger und Straßenmarkierungen erkennen und mit zunehmendem Fortschritt im Bereich autonomes Fahren komplexere Aufgaben wie das Identifizieren und Deuten von Verkehrszeichen ausführen kann.

Eckdaten

Neuronale Netze, die komplexe Bilder zuverlässig erkennen können, helfen Entwicklern, die Herausforderungen bei der Bildverarbeitung im Fahrzeug zu meistern. Als Basis für eine anspruchsvolle Bildverarbeitung im Auto lässt sich der Imaging- und Vision-Prozessor Ceva-XM4 heranziehen.

Wirtschaftliche Bildverarbeitungsplattformen

Der Energieverbrauch der Fahrzeugelektronik rückt aus vielerlei Gründen immer mehr in das Zentrum der Aufmerksamkeit. Dies umfasst auch die Abmessungen sowie das Gewicht und die Kosten, die mit dem Betrieb ineffizienter Systeme einhergehen. Durch die Zunahme elektrischer Antriebe in Hybrid- und vollelektrischen Fahrzeugen erfährt der fahrzeuginterne Energieverbrauch zunehmende Beachtung, da er mit für die Reichweite der Fahrzeuge verantwortlich ist. Während Hersteller ihre Fahrzeuge zunehmend mit ADAS-Funktionen ausstatten, erhöht die Notwendigkeit für kosteneffiziente Lösungen den Bedarf an wirtschaftlicheren Plattformen für die Bildverarbeitung.

Damit Bildverarbeitungsanwendungen für den Automobilbereich effizient arbeiten, müssen sie Objekte wie Fußgänger, Fahrzeuge, Straßenmarkierungen und Verkehrszeichen genau identifizieren können. Zudem müssen sie mit den rauen Umgebungsbedingungen im Automotivebereich zurecht kommen.

Neuronale Netze, die sich darauf trainieren lassen, komplexe visuelle Bilder mit hoher Genauigkeit zu erkennen, sind eine Lösung, um die Herausforderungen von Bildverarbeitungsanwendungen im Automobil zu meistern. Vor allem CNNs (Convolutional Neural Networks) mit mehreren Ebenen trainierbarer Neuronen bieten die Möglichkeit schnellen Lernens und effizienten Erkennens. Diese Techniken haben sich bereits in Bereichen wie Bildverarbeitung und Spracherkennung bewährt.

CNNs für die Bildverarbeitung

CNNs kommen häufig in Automotive-Bildverarbeitungsanwendungen zum Einsatz. Daher sind die Prozesse und Hardwareplattformen entscheidend, die zum Implementieren jeder Phase dieser Systeme dienen. Die Umsetzung von CNNs unterteilt sich in drei Phasen: Training und Übersetzung sowie die Implementierung von CNNs in eine kosteneffiziente Serienlösung. Die Nutzung von Systemen, die am vorteilhaftesten für jede Phase sind, ist notwendig, um eine wirtschaftliche und kostengünstige Lösung zu erhalten, die sich für Serienfahrzeuge eignet.

Bild 2: Das rechenintensive Fließkomma-CNN wird in eine effiziente Festkomma-Äquivalente umgewandelt, die Echtzeit-Leistungsfähigkeit bei eingeschränkten Energiebudgets bietet.

Bild 2: Das rechenintensive Fließkomma-CNN wird in eine effiziente Festkomma-Äquivalente umgewandelt, die Echtzeit-Leistungsfähigkeit bei eingeschränkten Energiebudgets bietet. Ceva

Das Training erfolgt meist offline mit CPU-basierenden Systemen, Grafikeinheiten oder FPGAs. Diese Systeme eignen sich aufgrund ihrer hohen Rechenleistung und ihres Bekanntheitsgrads unter Entwicklern für das Training. Allerdings weisen diese Lösungen hinsichtlich Recheneffizienz und Kosten Einschränkungen auf und sind daher für die Serienfertigung ungeeignet. In der Trainingsphase nutzen Entwickler Frameworks wie Caffe, um CNNs zu modellieren und zu optimieren. Caffe ist ein Deep Learning Framework aus der Entwicklung des Berkeley Vision and Learning Centers (BVLC) und weiteren Unterstützern. Eine Referenz-Image-Datenbank dient zum Bestimmen der optimalen Neuronengewichtung im Netzwerk. Nach Abschluss des Trainings besteht der herkömmliche Ansatz darin, das Netzwerk zu generieren und Prototypen auf CPUs, Grafikeinheiten oder einem FPGA zu erstellen, die mit Fließkommaarithmetik für hohe Genauigkeit arbeiten.

Eine Kombination aus hoher Leistungsfähigkeit und geringem Energieverbrauch ist beim Einführen von CNNs in die Serienfertigung autonomer Fahrzeugsysteme entscheidend. Nvidia hat bereits eine Rechenplattform für autonomes Fahren demonstriert, die auf Deep Learning mit Caffe basiert und auf Supercomputer-artigen SoC-Prozessoren (System on Chip) läuft. Für den Massenmarkt benötigen Fahrzeughersteller jedoch eine erschwinglichere und energiesparendere Lösung, die sich für Embedded-Implementierungen eignet.

Netzwerkgenerator übersetzt trainiertes Netz

Um diese Anforderungen zu adressieren, hat Ceva den Imaging- und Vision-DSP Ceva-XM4 eingeführt und einen Netzwerkgenerator entwickelt, der ein trainiertes Netzwerk übersetzt, damit es effizient auf dem DSP läuft. Der Netzwerkgenerator von Ceva arbeitet mit einer trainierten Netzwerkstruktur, die auf einer leistungsfähigen Fließkomma-CPU, GPU oder hybriden Plattform basiert, und wandelt diese in ein schlankes, kundenspezifisches Modell um. Dieses basiert dann auf Festkomma-Arithmetik, die die Anforderungen von Embedded-Plattformen hinsichtlich Energieverbrauch und Leistungsfähigkeit erfüllt.

Bild 2 zeigt den Ablauf, beginnend mit dem Erstellen des herkömmlichen Netzes mit Caffe und dem nachfolgenden Einsatz des Ceva Netzwerkgenerators zur Realisierung des kundenspezifischen Echtzeit-Netzwerks.

Das vom Netzwerkgenerator erzeugte Modell kann nun auf energiesparenden Embedded-Plattformen mit dem Ceva-XM4 laufen. Diese Kombination eignet sich für die Serienfertigung. Der Nachteil, der sich durch die Einbindung hochleistungsfähiger neuronaler Datenverarbeitung in das moderate Energiebudget heutiger Serienfahrzeuge ergibt, ist lediglich eine minimal geringere Bilderkennungsgenauigkeit. Diese liegt bei unter 1 % im Vergleich zum Originalnetzwerk.

Funktionen zum Energiesparen

Das umgewandelte Netzwerk läuft auf dem Ceva-XM4 und nutzt CNN-Layer, Software-Bibliotheken und APIs. Der Ceva-XM4 bietet zudem eine Reihe von Funktionen, die beim Energiesparen helfen und die Bilderkennung verbessern. Dazu zählen eine Befehlssatzarchitektur, die für eine herkömmliche Bildverarbeitung zusätzlich zu CNNs ausgelegt ist, eine Leistungsskalierungseinheit für dynamische Spannungsanpassung sowie Funktionen wie automatischer Datenabruf und Wiederverwendung lokaler Daten, was den Energieverbrauch beim Datentransfer in und aus dem Speicher verringert.

Tabelle 1: Bedeutende ADAS-Anwendungen auf der Basis der Bildverarbeitung.

Tabelle 1: Bedeutende ADAS-Anwendungen auf der Basis der Bildverarbeitung. Ceva

Um die Leistungsfähigkeit eines Systems auf Basis des Ceva-XM4 zu demonstrieren, hat der Anbieter ein 24-schichtiges CNN mit 224 x 224 Eingangsgröße und 11 x 11, 5 x 5 und 3 x 3 Faltungsfiltern auf dem Ceva-XM4 implementiert. Dieses CNN bietet fast die dreifache Leistungsfähigkeit vergleichbarer CNNs, die auf einer typischen Hybrid-GPU/CPU-Verarbeitungs-Engine implementiert sind. Dabei ist nur ein Fünftel der Speicherbandbreite erforderlich. Außerdem konnte der Energieverbrauch gesenkt werden.

Eine Entwicklungsplattform ist ebenfalls erhältlich. Sie umfasst Hardware-Entwicklungskit und Software-Toolset, ein Applikations-Entwicklungskit mit Ceva Deep Neural Network Framework (CDNN) sowie Bildverarbeitungs- und ADAS-Software mit Quellcode.

Deep Learning und neuronale Netzwerke bieten das Potenzial, autonomes Fahren eines Tages zu ermöglichen. Als kostengünstige, energiesparende Lösung ermöglicht die Plattform von Ceva neuronale Echtzeit-Faltungsnetze, die sich in erschwingliche effiziente Systeme für die Serienfertigung integrieren lassen.