Embedded Vision Alliance: Besseres Maschinensehen durch Deep Learning

Deep Learning ist einer der Schlüsselfaktoren für die künftige Entwicklung der Bildverarbeitung als Sehtechnik der digitalisierten Produktion. Wir sprachen mit Jeff Bier, Gründer der Embedded Vision Alliance, über die Möglichkeiten von Deep Learning und den Einfluss auf das rechnergestützte Sehen.

Jeff Bier, EVA.jpg Bildquelle: © Embedded Vision Alliance

Jeff Bier, Embedded Vision Alliance: »In vielen Bereichen der Bilderkennung übertreffen tiefe neuronale Netze die Genauigkeit der bislang leistungsfähigsten Techniken erheblich.«

Markt&Technik: Deep Learning scheint derzeit eine Art magischer Begriff in der Welt des rechnergestützten Sehens zu sein. Woran liegt das Ihres Erachtens?

Jeff Bier: Ingenieure entwickeln klassische Algorithmen für die optische Erkennung häufig noch von Grund auf für sehr spezifische Aufgaben. Um etwa bestimmte Typen von Objekten zu identifizieren, spezifizieren die Entwickler von Algorithmen typischerweise kleine Objektmerkmale wie etwa Ecken oder Kanten, die vom Algorithmus dann erkannt werden sollen. Danach geben die Entwickler vor, wie Gruppen solcher kleinen Merkmale dazu verwendet werden können, um größere Merkmale zu identifizieren, und so weiter. Solche Ansätze funktionieren sehr gut, solange die zu erkennenden Objekte ähnlich und die Bedingungen für die Erkennung günstig sind. Ein Beispiel dafür ist, wenn Flaschen in einer Abfüllanlage überprüft werden, ob die richtigen Etiketten auf korrekte Weise angebracht sind.

Derartige Ansätze erweisen sich allerdings häufig als problematisch, sobald die Randbedingungen schwieriger werden, also wenn beispielsweise die Prüfobjekte deformiert sein können, wenn das Aussehen vom einen zum nächsten Objekt signifikant variieren kann oder wenn die Beleuchtungssituation nicht optimal ist. Auf Basis der jüngsten Weiterentwicklungen bei Prozessoren und Sensoren kann man davon ausgehen, dass Algorithmen heute den Flaschenhals bei der Entwicklung von effektiven „sehenden Maschinen“ darstellen.

Worin besteht dann die Alternative?

Tiefe neuronale Netze stellen einen völlig anderen Ansatz für die optische Erkennung dar - und nicht nur dafür, denn die Technologie kommt auch in vielen anderen Bereichen zum Einsatz. Kurz gesagt: Statt einer Maschine zu „sagen“, wie sie Objekte erkennen soll („suche erst nach Ecken, dann nach Kanten, die einen Kreis bilden könnten“ etc.), ist es mit künstlichen neuronalen Netzen möglich, Algorithmen zu „trainieren“, indem man ihnen eine große Anzahl von Beispielen zeigt und dann eine Feedback-Prozedur nutzt, die automatisch und auf Basis der Beispiele den Funktionsumfang des Algorithmus adaptiert.

Etwas spezifischer gesagt: Convolutional Neural Networks sind massive parallele Algorithmen, die aus mehrlagigen Berechnungsknoten bzw. „Neuronen“ bestehen. Solche Netze führen keine Programme aus. Stattdessen wird ihr Verhalten bestimmt durch ihre Struktur (was ist womit verbunden), die Möglichkeit einfacher Berechnungen, die jeder Knoten durchführt, und Koeffizienten oder Gewichtungen, die durch eine Anlernprozedur bestimmt werden.

Convolutional Neural Networks sind also die Basis für Deep Learning?

Ja. Anstatt beispielsweise zu versuchen, Hunde von Katzen zu unterscheiden, indem man schrittweise eine Art Rezept anwendet, lernt ein Convolutional Neural Network diese Kategorisierung durch das Zeigen einer großen Anzahl von Beispielbildern. Drei Aspekte machen diesen Ansatz nun sehr spannend: Erstens übertreffen in vielen Bereichen der Bilderkennung tiefe neuronale Netze die Genauigkeit der bislang leistungsfähigsten Techniken erheblich. Zweitens ist das Tempo, mit dem sich die Genauigkeit tiefer neuronaler Netze bei optischen Erkennungsaufgaben verbessert, wesentlich höher als alles, was wir im Bereich klassischer Techniken bisher gesehen haben. Und drittens können wir mit tiefen neuronalen Netzen eine Reihe allgemeiner Techniken anwenden, um eine Vielzahl optischer Erkennungsaufgaben zu lösen. Das ist ein großer Fortschritt im Vergleich zu klassischen Techniken, wo viele verschiedene Arten von Algorithmen verwendet werden, um unterschiedliche Aufgaben zu lösen.

Wie können Entwickler für rechnergestütztes Sehen von dieser Technologie profitieren?

Tiefe neuronale Netze liefern in vielen Bereichen der visuellen Erkennung exzellente Ergebnisse, etwa bei der Erkennung von Gesichtern und Objekten oder auch beim Thema „Optischer Fluss“. Auch für sehr anspruchsvolle Aufgaben wie das Lesen von Lippen sind die Ergebnisse beim Einsatz solcher Algorithmen vielversprechend. Aus diesen Gründen sollten Entwickler, die sich mit der Lösung schwieriger Bilderkennungsaufgaben befassen, Techniken aus dem Bereich der tiefen neuronalen Netze als mögliche Basis für ihre Arbeit unbedingt in Betracht ziehen.

Welche Applikationen oder Systeme können dazu führen, dass die Nutzung von Deep-Learning-Technologien neue Märkte für das rechnergestützte Sehen erschließt?

Bisher war das rechnergestützte Sehen vor allem bei Anwendungen wie der Inspektion von Produkten während der Herstellung erfolgreich, wo die Rahmenbedingungen für die Bilderfassung kontrolliert und die Kriterien für Gut-/Schlecht-Entscheidungen relativ einfach quantifiziert werden können. Es gibt jedoch zahllose Einsatzfälle für das rechnergestützte Sehen, wo die Rahmenbedingungen für die Bilderfassung nicht kontrollierbar sind und wo die Prüfobjekte große Variationen aufweisen.

Tiefe neuronale Netze sind besonders in diesen Fällen sehr hilfreich. Für den Menschen ist es beispielsweise sehr einfach, Erdbeeren von anderen Früchten zu unterscheiden. Für einen Algorithmus ist diese Aufgabe bei Weitem nicht trivial, wenn man bedenkt, wie stark die Größen und Formen von Erdbeeren variieren können. Das Problem verschärft sich noch, wenn man Variationen der Kameraansicht, der Beleuchtung oder benachbarter Objekte mit einbezieht. Auf ähnliche Weise bildet das Erkennen von Fußgängern für ein Kfz-Sicherheitssystem eine sehr große Herausforderung, weil ja die Menschen unterschiedlich groß sind, verschiedenste Kleidung tragen können und sich völlig unterschiedlich bewegen.