Integrierte KI – Zeitkritisches Machine Learning in intelligenten Kameras

Herzstück der intelligenten Kamera iam von NET ist eine System-on-Chip(SoC)-Plattform mit integriertem FPGA und ARM CPU. Sie befähigt die Smart-Kamera dazu auch zeitkritische Machine-Learning-Aufgaben performant zu lösen, die bis dahin nur von Host-PCs mit Multi-Core-Prozessor-Architekturen bewältigt werden konnten.

Zentrales Element der Kamera ist ein Xilinx SoC aus der Zynq-Familie. Dieser Baustein kombiniert einen ARM-Prozessor mit programmierbarer FPGA-Logik und ermöglicht so ein kompaktes Systemdesign. Bei der Implementierung verschiedenster Bildverarbeitungsaufgaben können Software und FPGA-beschleunigte Signalverarbeitung flexibel kombiniert werden. Auf Bilddaten im gemeinsamen Speicher kann sowohl vom Prozessorsystem als auch von der programmierbaren Logik zugegriffen werden. Das lokal verzahnte Zusammenspiel der SoC-Komponenten garantiert minimale Latenz und hohe Leistungseffizienz. Insbesondere die Berechnung von neuronalen Netzen (CNN) kann durch FPGA-basierte Signalverarbeitung erheblich beschleunigt werden, was die iam zur idealen Lösung für Maschine-Learning-Aufgaben macht. Die Optimierung und das Training der Netzwerke werden üblicherweise mit interaktiven Werkzeugen auf leistungsstarken CPU/GPU-Systemen durchgeführt. Für die Ausführung des fertigen Netzwerks steht ein FPGA-basierter Beschleuniger-Block für CNN-Netzwerke (DPU) zur Verfügung.

Bild: Mit der intelligenten Kamera iam können aufgrund ihrer SoC-Architektur auch Machine Learning und andere komplexe Anwendungen direkt in der Kamera realisiert werden.

Aufbau der Plattform

NET liefert eine fertige Konfiguration für das FPGA-System, die ein DMA-Sensordaten-Interface und einen DPU-Beschleuniger enthält. Auf dem vorinstallierten und vollständig konfigurierten Embedded-Linux Betriebssystem läuft eine optimierte Version von SynView, dem plattformübergreifenden Bildverarbeitungssystem von NET. SynView kann das Sensor-Frontend von iam als normales Eingabegerät öffnen, Aufnahmeparameter steuern und Bilder einziehen. Die eingesetzte SynView-Version enthält zudem eine GigE Vision-Schnittstelle, welche Bilder über die Ethernet Verbindung der Kamera ausgeben kann und eine GenICam kompatible Steuerung von einem Host-System ermöglicht. Durch die Kombination der Komponenten ist es möglich, große Teile einer Anwendung auf einem Host-PC zu entwickeln und zu testen, um sie anschließend mit geringen Anpassungen auf die intelligente Kamera übertragen zu können. Zudem kann iam zu Einrichtungs- und Überwachungszwecken jederzeit von einer GenICam-kompatiblen Software als Eingabegerät verwendet werden.

Bild: Darstellung des hardware-beschleunigten Bildverarbeitungsprozesses in der Smart-Kamera iam

Arbeiten in gewohnter Umgebung

Netzwerke für Machine-Learning-Anwendungen können mit bekannten Werkzeugen, basierend auf Tensorflow oder Caffe, entwickelt und trainiert werden. Für die resultierenden Netzbeschreibungen stehen passende Xilinx Vitis AI Tools bereit, welche die Netzwerke für die Ausführung in der DPU automatisch anpassen und optimieren. Zudem steht dem Anwender eine einsatzfähige Laufzeitumgebung für die benötigten Konvertierungstools zur Verfügung. Eine Bildverarbeitungsanwendung kann ein so vorbereitetes Netzwerk dynamisch laden und ausführen. NET unterstützt den Einstieg durch bereitgestellte Referenz-Anwendungen für den Einsatz von CNN-Netzen.

Zahlreiche Einsatzgebiete

In der Praxis ergibt sich damit für die iam Smart-Kamera ein breites Anwendungsfeld. Exemplarisch lassen sich Robotik-Applikationen in der Landwirtschaft anführen, wo kompakte Smart-Vision-Lösungen für Obst und Gemüse auf dem Acker oder der Wiese eingesetzt werden können. Geht es um die Vollständigkeitsprüfung von Lebensmittelverpackungen hat eine regelbasierte Software zusehends das Nachsehen. Lernende beziehungsweise trainierte Systeme leisten immer bessere Arbeit, weil Surimi, Aal und Nori-Blätter ein hohes Maß an Heterogenität aufweisen. Schließlich existiert auch bei der optischen Inspektion und Sortierung von Arzneimitteln in der Pharmazie eine große Varianz, die modernen Machine-Learning-Verfahren ´on the edge´ in Embedded-Vision-Kameras ein Handlungsfeld bietet. Ist zudem die Möglichkeit gegeben, eine anwendungsspezifische Auslegung mit bereits passendem mechanischem oder optischem Zubehör umzusetzen, wird zusätzlicher Integrationsaufwand vermieden.

Fazit

iam bietet als einsatzfertige Embedded-Vision-Kamera den direkten Einstieg für Integratoren und Maschinenhersteller in die Umsetzung dezentraler Anwendungen, die auch von rechenintensiven Machine-Learning-Technologien profitieren können. Denn iam ermöglicht es KI direkt auf der Kamera als Edge-Device auszuführen. Da NET die Kameralösung auch vorkonfiguriert anbietet, können sich Anwender in erster Linie auf ihre Anwendung konzentrieren.

 

[Anmerkung: Dieser Beitrag ist als Artikel im Fachmagazin inVISION, 1. Ausgabe, März 2021 erschienen.]

//