Lokale Inferenz am Netzrand mit der Firefly®
Einführung
Deep Learning ist eine neue Technologie, die bestehende Anwendungen revolutioniert und die Entwicklung neuer Industriezweige vorantreibt. Die Verfügbarkeit von Tools von Google, Amazon, Intel und Nvidia zum Erstellen und Trainieren neuronaler Netze macht die Technologie zugänglicher und ermöglicht neuen Marktteilnehmern den Einstieg in etablierte Märkte mit wettbewerbsfähigen Produkten.
Das Potenzial des Deep Learning ist weithin anerkannt. Möglicherweise arbeiten Sie gerade daran, Deep Learning für Ihre Anwendung zu nutzen. Bei Teledydne FLIR haben wir uns auch Gedanken darüber gemacht, wie Entwickler von Bildverarbeitungssystemen diese Technologie nutzen können. Das Ergebnis ist unsere kommende Firefly®-Kamera, die einen einfachen Weg zur Bereitstellung trainierter Netzwerke vor Ort bietet. Die Firefly® verbindet Bildverarbeitung mit Inferenz aus Deep Learning, indem sie einen hochwertigen Bildsensor von Sony Pregius und eine Intel Movidius Myriad 2 Vision Processing Unit (VPU) mit GenICam-Konformität integriert.
Was ist eine VPU?
Die Intel Movidius Myriad 2 Vision Processing Unit (VPU) im Herzen der Firefly® ist eine neue Klasse von Prozessoren. Eine VPU kombiniert Hochgeschwindigkeits-Hardwarebildverarbeitungsfilter, universelle CPU-Kerne und parallele Vektorverarbeitungs-Kerne. Die zur Beschleunigung der integrierten Inferenz in der Kamera verwendeten Vektorkerne sind für die Verzweigungslogik neuronaler Netze besser optimiert als die üblicherweise in GPUs eingesetzten universellen Kerne. Durch diesen höheren Optimierungsgrad erreicht die VPU eine hohe Leistung bei geringem Stromverbrauch.
Was ist Inferenz?
Inferenz ist die Anwendung des Deep Learning auf neu erfasste, ungekennzeichnete reale Daten. Inferenz ist das Ergebnis eines trainierten neuronalen Netzwerks, das auf neuen Daten basierende Vorhersagen trifft.
Abb. 1: Inferenz ist die Anwendung eines mit gekennzeichneten Daten (A) trainierten Modells auf neue, nicht gekennzeichnete Daten (B).
Während es viele verschiedene Arten von Netzwerken gibt, die für die Inferenz verwendet werden können, sind MobileNets sehr gut geeignet, um eine Bildklassifizierung durchzuführen. MobileNet wurde ursprünglich von Google entwickelt, um eine hoch genaue Bildklassifizierung und -segmentierung auf mobilen Geräten durchzuführen. Es bietet eine ähnliche Genauigkeit für weitaus rechenintensivere Netzwerke, die große, leistungshungrige GPUs erfordern.
Wie kann eine Inferenzkamera mit einer "Smartkamera" verglichen werden?
Herkömmliche Smartkameras kombinieren eine industrielle Kamera und einen Einplatinencomputer, auf dem eine regelbasierte Bildverarbeitungssoftware ausgeführt wird. Smartkameras sind eine großartige Lösung für einfache Probleme wie das Lesen von Barcodes oder die Beantwortung von Fragen wie "Ist in diesem Bereich das Loch an der Stelle, an welcher es sein sollte?" Inferenzkameras eignen sich für komplexere oder subjektive Fragen wie "Ist das ein Apfel in Exportqualität?" Inferenzkameras, die mit bekannten, guten Bildern trainiert werden, können auf einfache Weise unerwartete Defekte erkennen, die von regelbasierten Inspektionssystemen nicht erkannt werden, wodurch sie für Variabilität weitaus toleranter sind.
Inferenzkameras können verwendet werden, um vorhandene Anwendungen mit umfangreichen beschreibenden Metadaten zu erweitern. Mit GenICam-Blockdaten kann die Firefly® Inferenz verwenden, um Bilder zu kennzeichnen, die an einen Host weitergeleitet werden, der eine herkömmliche, regelbasierte Bildverarbeitung durchführt. Auf diese Weise können Benutzer die Fähigkeiten ihrer vorhandenen Bildverarbeitungssysteme schnell erweitern. Diese Hybridsystemarchitektur kann auch verwendet werden, um ein herkömmliches Sichtsystem auszulösen.
Die Verwendung der Firefly® führt zu erheblichen Platzersparnissen, da die in herkömmlichen Smartkameras verwendete Computerhardware weniger energieeffizient und viel größer ist als die VPU in der Firefly. Mit lediglich 27 mm x 27 mm ist die Firefly geeignet für die Integration in beengte Platzverhältnisse.
Die Firefly® stellt eine offene Plattform dar. Dies gibt den Anwendern die Flexibilität, das schnelle Tempo tiefgreifender Lernnetzwerke und die damit verbundene Toolchain für ihr Training und ihre Optimierung zu nutzen. Im Gegensatz dazu werden Smartkameras mit proprietären Tools programmiert, die den neuesten Entwicklungen möglicherweise nicht folgen.
Was sind die Vorteile von integrierter Inferenz in der Kamera?
Durch die Aktivierung von Inferenz am Rand eines Bildverarbeitungssystems werden Geschwindigkeit, Zuverlässigkeit, Energieeffizienz und Sicherheit des Systems verbessert.
- Geschwindigkeit: Inferenz am Netzwerkrand, wie auch andere Formen von Edge-Computing, verlagert die Bildverarbeitung von einem zentralen Server in die Nähe der Datenquelle. Anstatt ganze Bilder an einen entfernten Server zu übertragen, müssen nur beschreibende Daten gesendet werden. Dies reduziert erheblich die Datenmenge, die ein System übertragen muss, wodurch die Netzwerkbandbreite und die Systemlatenz minimiert werden.
- Zuverlässigkeit: Für bestimmte Anwendungen kann die Firefly® die Abhängigkeit von der Server- und Netzwerkinfrastruktur beseitigen und die Zuverlässigkeit erhöhen. Mit ihrer integrierten VPU arbeitet die Firefly als eigenständiger Sensor. Sie kann Bilder aufnehmen und auf dieser Grundlage Entscheidungen treffen und dann Aktionen mit GPIO-Signalisierung auslösen.
- Leistungs-Effizienz:Das Auslösen eines Bildverarbeitungssystems nur, wenn dies erforderlich ist, bedeutet, dass mehr Verarbeitungszeit für die traditionelle, regelbasierte Bildverarbeitung und -analyse aufgewendet werden kann. Inferenz auf Basis von Deep Learning kann verwendet werden, um eine Hochleistungs-Bildanalyse auszulösen, wenn bestimmte Bedingungen erfüllt sind. Die Myriad 2 VPU bietet durch die Unterstützung kaskadierter Netzwerke zusätzliche Energieeinsparungen. Dies ermöglicht mehrere Analyseebenen, wobei komplexere Netzwerke mit höherer Leistung nur dann aufgerufen werden, wenn sie die Bedingungen des vorherigen Netzwerks erfüllen.
- Sicherheit:Die geringe Datenmenge, die übertragen wird, lässt sich leicht verschlüsseln, wodurch die Systemsicherheit verbessert wird.
Wie fange ich an?
Die Firefly bietet einen einfachen Weg, um Deep Learning von der Forschung und Entwicklung zur praktischen Funktion in Ihrer Anwendung zu führen. Sie ist in der Lage, als eigenständiger Sensor zu arbeiten, Bilder aufzunehmen und auf dieser Grundlage Entscheidungen zu treffen, die GPIO-Aktionen auslösen. Die Firefly wird 2019 verfügbar sein, aber Sie können sich heute schon mit Inferenz am Netzwerkrand loslegen. Die Intel Myriad 2 VPU im Herzen des kommenden Firefly ist im Intel Neural Compute Stick verfügbar.
Ein vollständiges Bildverarbeitungssystem mit Inferenz am Netzwerkrand kann mit dem Intel Neural Compute Stick für weniger als 1000 USD aufgebaut werden. Zusammen mit dem Intel OpenVINO-Toolkit können Bildverarbeitungs-Systementwickler die Leistung von neuronalen Netzwerken auf derselben VPU, welche die in die Kamera integrierte Inferenz in der Firefly® speist, auf einfache Weise optimieren und überprüfen. Auf diese Weise können Benutzer die Leistung von Myriad 2-gesteuerten Inferenzen parallel zu herkömmlichen Algorithmen mit denselben Kameras genau bewerten.
Abb. 2: Vom GPU-Training zur Entwicklung des Neural Compute Stick und zum Einsatz der Firefly®
Fazit
Inferenz auf Basis von Deep Learning wird die Art und Weise, wie Bildverarbeitungssysteme entworfen und programmiert werden, grundlegend ändern. Sie wird ermöglichen, komplexe und subjektive Entscheidungen schneller und genauer zu treffen, als dies mit traditionellen, regelbasierten Ansätzen möglich wäre. Der Firefly verbindet Bildverarbeitung mit Deep Learning durch die Kombination eines Sony Pregius-Sensors, einer GenICam-Schnittstelle und einer Intel Movidius Myriad 2 VPU. Diese neue Klasse von Inferenzkameras bietet den idealen Weg, um Inferenz auf Basis von Deep Learning in Bildverarbeitungsanwendungen einzusetzen. Mit dem Intel Neural Compute Stick können Sie bereits heute mit der Entwicklung für die Firefly® beginnen.