Herausforderungen für DSPs bei Bildverarbeitungs- und KI-Anwendungen

| Autor / Redakteur: Pulin Desai * / Sebastian Gerstl

Katze mit Bokeh-Effekt im Hintergrund: Künstliche Intelligenz kann helfen, den Bokeh-Effekt mit dem Einsatz von nur einer Kameralinse umzusetzen.
Katze mit Bokeh-Effekt im Hintergrund: Künstliche Intelligenz kann helfen, den Bokeh-Effekt mit dem Einsatz von nur einer Kameralinse umzusetzen. (Bild: congerdesign auf Pixabay / CC0)

Der Einsatz von Künstlicher Intelligenz verspricht gerade für Anwendungen in der Bildverarbeitung enorme Verbesserungen. Er stellt aber auch neue Ansprüche an die eingesetzte Hardware.

Gil Pratt, der Leiter des Toyota Research Institute, vergleicht die aktuelle Welle der KI-Technologie (künstliche Intelligenz) mit der kambrischen Explosion, die vor rund 500 Millionen Jahren eine enorme Vielfalt neuen Lebens hervorbrachte. Damals wie heute war das Sehen eine der neuen Schlüsselfähigkeiten. Im Hinblick auf die aktuellen spannenden Zukunftsszenarien, die kurz vor der Markteinführung stehen, müssen Informationen künftig schneller verarbeitet werden, und zwar mit einer kleineren Baugröße, mit weniger Leistung und einer höheren Auflösung als je zuvor.

Bildverarbeitung und künstliche Intelligenz

Ein autonom fahrendes Fahrzeug muss beispielsweise die Objekte in seiner Umgebung identifizieren können. Dies erfordert eine mehrskalige Pyramiden-Operation, um das Bild so aufzubereiten, dass es an eine KI-Engine weitergegeben werden kann. Diese interpretiert dann die Daten („das ist ein Verkehrszeichen“) und unterzieht sie anschließend erneuten Interpretationen („das ist ein Stoppschild“). Mittels KI wird das Bild zuerst hinsichtlich der Art der Szenerie bewertet und dann auf der Basis der Szene mit einem intelligenten High Dynamic Range (HDR) Algorithmus weiter untersucht.

Der Bokeh-Effekt kann ebenfalls mit KI-basierten Operationen auf Bilder angewendet werden. Der Bokeh-Effekt ist eine Art Unschärfe des Bildhintergrunds, der Bildanteile enthält, die außerhalb der Tiefenschärfe liegen. Bisher haben Smartphones diesen Effekt mit Algorithmen erzeugt, wobei zwei Bildsensoren oder Kameras benötigt wurden. Mit KI ist der Bokeh-Effekt mit nur einer einzigen Kamera möglich. In diesem Fall werden mit KI die verschiedenen Bildebenen segmentiert und dann mittels Bildverarbeitung entweder eine Unschärfe (Hintergrund) oder ein Nachschärfen (Vordergrund) des Bilds oder beides erzeugt. Durch diese Verarbeitung kann das System Gesichter und Objekte besser unterscheiden, Verkehrszeichen identifizieren oder hochwertige Porträts erstellen.

Aktuelle Herausforderungen bei entsprechenden Anwendungen

Mit der Verbreitung und der Komplexität dieser Anwendungen ergeben sich auch Herausforderungen, die dieser Markt angehen muss. Hierzu gehört die Notwendigkeit einer Verarbeitung bei einer höheren Auflösung mit Algorithmen, die mehr Bilder mit niedrigerem Energieverbrauch und mit höherer Leistung verarbeiten.

  • Mobile Geräte: In diesem Markt nimmt der Einsatz von Videos stark zu. Seit der Einführung von ARKit von Apple und ARCore von Google auf der Android-Plattform werden immer mehr AR/VR-basierende Anwendungen erstellt. Alle diese Anwendungen nutzen eine Vision-basierte SLAM (simultaneous localization and mapping - simultane Positionsbestimmung und Kartenerstellung) mit KI auf der mobilen Plattform, um einen einzigartigen Bedienkomfort zur Verfügung zu stellen.
  • AR/VR-Headsets: Diese Segmente umfassen AR/VR-Headsets, die für Spiele oder in kommerziellen Anwendungen genutzt werden können. Da dieser Markt langsam erwachsen wird, steigen die Anforderungen hinsichtlich der Verbesserung des Bedienkomforts. Die Latenz-Anforderungen bei AR/VR-Headsets steigen, wodurch andererseits die Bildverarbeitung und KI höhere Anforderungen an die Rechenleistung stellen. Die Headsets erweitern die Geräte um KI-Funktionen für die Objektdetektierung und -erkennung, Gestenerkennung und das Eye-Tracking.
  • Surveillance: Überachungskameras werden intelligenter und ermöglichen durch integrierte KI-Funktionen eine Erkennung von Unbekanntem und Anomalien. Die meisten dieser Kameras arbeiten mit einer Auflösung von 1080P, wobei künftige Kameras Auflösungen von bis zu 4k Auflösung bei 60 Frames pro Sekunde (FPS) erfordern. Bei Überwachungskameras in kommerziellen Anwendung kommen integrierte KI-Funktionen im Gerät zum Einsatz, um im Video eine Identifizierung von Personen in Echtzeit zu ermöglichen und die Latenz dieser Aufgaben bei der Ausführung in der Cloud zu reduzieren.
  • Automotive: Der Automobilmarkt fordert eine hohe Zuverlässigkeit und einen Betrieb in einem großen Temperaturbereich, wobei die Lebensdauer eines Automobils bei 20 Jahren oder länger liegen kann. Die Komplexität der Imaging-Funktionen wird im Laufe der nächsten zehn bis fünfzehn Jahre innerhalb des Automobilökosystems wegen der umfangreichen Daten und Variablen zur Vermeidung von Unfällen stark steigen. Automobilunternehmen, die Technologie für autonomes Fahren anbieten, müssen deshalb Deep-Learning und KI-Funktionen einsetzen, um die erzeugten Daten in Echtzeit analysieren zu können.

Die aktuelle Technologie mit getrennten Komponenten für Vision/Imaging und KI-Bildverarbeitung ist mit diesen Lösungen nicht für die Zukunft geeignet. Um weiterzukommen ist ein neuer Ansatz erforderlich.

Bildgebungs- und Bildverarbeitungsalgorithmen können in ein Elektroniksystem mit Hilfe einer Kombination von universellen CPUs und/oder GPUs oder einer Hardware-Pipeline oder RTL implementiert werden. Da sich die Sensortechnologien sehr schnell weiterentwickeln und sich je nach Anbieter stark unterscheiden, kann die RTL Pipeline in Bezug auf die Größe und Funktionalität kaum Schritt halten. Zwar ist die Nutzung einer CPU/GPU ein flexibler Weg, einer der größten Nachteile ist aber der Kompromiss zwischen Performance und Energieverbrauch. Wenn das Endgerät zudem ein Wearable ist, dann lässt sich mit der CPU/GPU-Option nicht die erforderliche lange Batterielaufzeit erreichen. Das Gerät wird vermutlich heiß laufen (und damit die CPU/GPU-Taktrate sinken), und wird einen Großteil der Leistung für Anwendungen wie Video-HDR verbrauchen.

Die andere Möglichkeit besteht in der Ausführung der Algorithmen auf einem RTL-basierten Hardware-Design, was einen Performance-Leistungs-Vorteil bringt, aber die Flexibilität einschränkt. Hardware-Designs erfordern einen langen Entwicklungs- und Verifikationsprozess und jede Funktion benötigt eigene Gatter - ein kostspieliges Vorhaben.

Durch die Weiterentwicklung von neuronalen Netzen wird immer häufiger gefordert, dass diese Prozessoren direkt in die Bausteine integrieren werden, anstatt eigenständige CPUs und GPUs zu verwenden. Bisher lassen sich die Verarbeitungsanforderungen dieser Netzwerke aber nur mit den Ressourcen eines Datencenters erreichen, so dass viele KI-Anwendungen in der Cloud ausgeführt und nicht in die Geräte integriert werden.

Lösungsvorschlag: Ein auf KI-Ansprüche ausgelegter DSP

Der Cadence Tensilica Vision Q6 DSP ein DSP für eingebettete Vision- und KI-Anwendungen, der auf einer neuen, schnelleren Prozessor-Architektur basiert. Der DSP bietet eine um den Faktor 1,5 höhere Vision- und KI-Performance als sein Vorgänger, der Vision P6 DSP, und eine um den Faktor 1,25 bessere Energieeffizienz bei einer Leistung die der Maximalleistung des Vision P6 DSP entspricht. Durch eine tiefere, 13-stufige Prozessor-Pipeline und eine Systemarchitektur, die speziell für den Einsatz großer lokaler Speicher auslegt wurde, kann der Vision Q6 DSP eine Spitzenfrequenz von 1,5 GHz und eine typische Frequenz von 1 GHz erreichen, und zwar bei 16 nm und der derselben Chipfläche wie der Vision P6 DSP. Dadurch lassen sich mit dem Vision Q6 DSP sehr leistungsfähige Produkte realisieren, welche die steigenden Vision- und KI-Anforderungen sowie die Forderungen hinsichtlich der Energieeffizienz erfüllen.

Der Baustein ist speziell auf die Ansprüche von Embedded-Vision-Anwendungen unter Zuhilfenahme von künstlicher Intelligenz ausgelegt. Um dies zu unterstützen, bietet der Vision Q6 DSP:

  • Einen erweiterten DSP-Befehlssatz, der für embedded Visionsanwendungen/Kernels, wie Optical Flow, Transpose und warpAffine sowie häufig genutzte Filter, wie Median und Sobel, bis zu 20 % weniger Zyklen benötigt als der Vision P6 DSP.
  • Doppelte Systemdatenbandbreite mit getrennten Master/Slave AXI-Schnittstellen für Daten/Befehle und 2-Kanal-DMA, was Speicher-Bandbreite-Probleme in Vision- und KI-Anwendungen reduziert aber auch Latenz- und Overhead-Aspekte im Zusammenhang mit einem Kontextwechsel und der DMA-Vorbereitung verringert.
  • Rückwärtskompatibilität zum Vision P6 DSP, so dass bestehende Software-Investitionen nicht verloren gehen und eine einfache Migration ermöglicht wird.
  • Optionale Vektor-Gleitkommaeinheit (VFPU), die auch FP16 (Half Precision) unterstützt.

Der Vision Q6 DSP unterstützt KI-Anwendungen, die mit einem Caffe, TensorFlow oder TensorFlowLite Framework entwickelt wurden über den Tensilica Xtensa Neural Network Compiler (XNNC). Der XNNC überträgt neuronale Netze in einen ausführbaren und hochoptimierten leistungsfähigen Code für den Vision Q6 DSP. Hierfür wird eine umfangreiche Auswahl von optimierten Bibliothek-Funktionen für neuronale Netze genutzt. Der Vision Q6 DSP unterstützt auch Android Neural Network (ANN) API für eine KI-Beschleunigung in Geräten mit Android-Betriebssystem.

Diese Lösung fügt sich in die anderen Software-Tools der Cadence Tensilica Suite ein, so dass sich die Entwickler nicht in eine neue Plattform einarbeiten müssen, und somit auch anspruchsvolle Time-to-Market-Ziele erreichen können. Die Lösung ist zu verschiedenen neuronalen Netz-Frameworks kompatibel. Dadurch lässt sie sich mit Anwender-Code und vorhandenen Tools und Bibliotheken kombinieren, und vereinfacht damit den Entwicklungsprozess.

Der Vision Q6 DSP ist auch zum Tensilica Vision P6 DSP rückwärts kompatibel, so dass eine einfache Migration von vorherigen Versionen der Tensilica Vision DSP Familie möglich ist und bestehende Softwareinvestition nicht verloren gehen.

Die Softwareumgebung bietet außerdem eine komplette und optimierte Unterstützung für mehr als 1.500 OpenCV-basierte Vision- und OpenVX-basierte Bibliothek-Funktionen, was eine schnelle High-Level-Migration von vorhandenen Visionsanwendungen erlaubt.

Kriterien für eine erfolgreiche Vision- und KI-DSP-Lösung

Zusammenfassend muss eine erfolgreiche Vision- und KI-DSP-Lösung die folgenden Kriterien erfüllen:

  • Embedded: Gilt für alle Märkte, vom mobilen Geräten bis hin zu Automotive, wo eine riesige Datenmenge ‚on the Fly‘ verarbeitet werden muss. Anwendungen, die Vision und KI nutzen, müssen in die jeweiligen Systeme eingebettet sein, und zwar unabhängig vom Markt.
  • Energieeffizienz: Da wir Datencenter nicht mit unseren Geräten oder in unseren Autos immer dabeihaben, können wir auch keine Stromquellen überall mit uns herumtragen.

Der Cadence Tensilica Vision Q6 DSP erfüllt nach eigenen Angaben diese Anforderungen. Der Vision Q6 DSP ist laut Hersteller schneller und benötigt weniger Energie als vorherige Lösungen, deckt die Marktanforderungen sowohl der Vision- als auch KI-DSPs mit einer 13-stufigen Prozessor-Pipeline ab und bietet die 1,5-fache Performance bei gleicher Fläche.

* Pulin Desai ist Product Marketing Director der Tensilica Vision DSP Product Line bei Cadence in San José.

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45830122 / Mikrocontroller & Prozessoren)