Kann Deep Learning Autos besser erkennen als der Mensch?
18.06.2019 -
Unser Verstand lässt visuelle Erfassung sehr einfach aussehen. Ein Mensch kann mühelos einen Panda von einem Eisbären unterscheiden, kann ein Schild lesen oder das Gesicht eines anderen Menschen erkennen. Aber diese Aufgaben sind mit einem Computer ziemlich schwierig, zu lösen, es scheint nur so einfach, weil unser Verstand so exzellent darin ist, Bilder zu verstehen.
In den letzten Jahren hat Deep Learning sich daran gemacht diese Schwierigkeiten anzugehen. Und besonders durch eine Art von Modell namens Convolutional Neural Network (CNN) sind nun auch durchaus vernünftige Ergebnisse für schwierige visuelle Erkennungsaufgaben erhältlich, die auf manchen Gebieten auch menschliche Fähigkeiten übertreffen.
Ein Beispiel, dem sich die industrielle Bildverarbeitung gewidmet hat, ist die Erkennung von Automarke und -typ, auch genannt „Make & Model“. „Make“ in der Phrase bezieht sich auf den Hersteller eines Fahrzeugs – den „Maker“, wie z.B.: Ford, Toyota, usw. „Model“ ist der spezifische Name, den der Hersteller dem Vehikel gegeben hat, wie z.B.: Focus, Accord, etc. Für Menschen ist das eine sehr unkomplizierte Aufgabe. Ein Mensch kann Autos an gewissen Hauptmerkmalen wie z.B. Logos, Kühlerfiguren, Aufschrift, usw. erkennen. Allerdings war es für Computer immer schon eine schwierige Aufgabe, aufgrund der visuellen Komplexität von Autos bzw. Vehikeln.
Was kann denn nun Make and Model?
Es kann nicht „einfach nur“ Automarken erkennen und zwischen Audi und VW unterscheiden, es kann auch Baujahr des selben Modells erkennen, etwas das für den Menschen auch sehr schwierig ist. Selbstverständlich sehen nicht nur Autos der selben Marke ähnlich aus, sondern auch verschiedene Modelle an SUVs aber von verschiedenen Herstellern oder verschiedene Sedans (Limousine: Ein Auto mit einer geschlossenen Karosserie, bei dem Motor, Passagiere und Fracht in getrennten Bereichen untergebracht sind) von Audi oder BMW. Make and Model Erkennung, erkennt Unterschiede zwischen Autos, die selbst für das menschliche Auge schon schwer zu erkennen sind. Fließhecks die z.B. bei Marken wie Nissan und Toyota sehr ähnlich aussehen können immer noch unterschieden werden und das auch bei z.B. Bildaufnahmen von einer Straße mit vorbeifahrenden Autos, wie Autobahnen.
Wie kann Deep Learning diese Unterschiede erkennen?
Die größte Herausforderung ist es, eine feinkörnige Klassifizierung zu erreichen und der Grund dafür sind unumstritten die feinen Unterschiede zwischen den unterschiedlichen Klassen. Dafür ist ein sehr großer Datensatz notwendig. Man sollte bedenken, dass Deep Learning unter Bedingungen wie wenig Zeit, Rechenleistung, oder Daten, nicht durchzuführen ist. Machine Learning ist Lernen von Beispielen und Erfahrung, welchen Algorithmen zugrunde liegen.
Beispielsweise ist Transfer Learning eine Machine Learning Technik, welche die gelernten Klassifizierer für neue Aufgaben umwidmet. Für CNNs (Convolutional Neural Networks) wird ein Basisnetzwerk mit einem Basisdatensatz trainiert, um Gewichtung und Eigenschaften zu generieren. Am Ende von Transfer Learning entsteht ein Klassifizierer, welcher auf den neuen Datensatz anwendbar ist und bedeutet dadurch weniger Aufwand als ein komplettes Netzwerk neu einzulernen. Es ist durchaus ein leistungsfähiges Tool, um ein großes Zielnetzwerk zu trainieren. Selbstverständlich sind auch andere Techniken anwendbar.
Was sind Neural Networks oder auch CNN?
Neurale Netze sind die Basis für Deep Learning mit mehreren Layern. Am besten man stellt sich eine Familie an Modellen vor, die sehr „loose“ vom menschlichen Gehirn inspiriert wurden, und Funktionen näherkommen die von einer großen Anzahl an Inputs abhängen. Bei Make and Model gilt je größer der Datensatz an klassifizierten Bilder von Autos, desto besser. Ein Neurales Netz sind Beispiele von nichtlinearen Hypothesen, wo das Modell lernen kann, noch viel komplexere Beziehungen, zu klassifizieren.
Statt dem Computer einzeln jede Möglichkeit an Automodell zu lernen, jagen wir einfach mehrere Tonnen an existierenden Bildern durch das Machine Learning Programm. Ein Neuronales Netz wird durch künstliche Neuronen gebildet, die in Layern (Schichten) angeordnet sind. Dabei gibt es drei Arten von Layern:
- Input Layer: sucht nach allen Pixeln in einem Bild
- Hidden Layers: können gewissen Merkmale, Aspekte, Formen, Texturen, etc. erkennen
- Output Layer
Neurale Netze mit mehr als zwei „Hidden Layers“ können als Deep Neural Networks bezeichnet werden. Je mehr Layer desto komplexere Muster können erkannt werden. Der Vorteil von CNNs ist, dass sie nicht nur Gewichtung der Features, sondern auch die Features selbst lernen können. Zusätzlich haben CNNs eine hochmoderne Genauigkeit zur generischen Bildklassifizierung erlangt.
Die wichtigste Operation an Convolutional Neural Networks sind die Convolution Layers. Stellen wir uns ein 32x32x3 Bild vor wenn wir dieses mit einem Filter (= Faltmatrix) von 5x5x3 „convolve“ („falten“) (der Filter muss immer die selbe Tiefe haben wir das Input-Bild), ist das Ergebnis ein Aktivierungsmarker von 28x28x1. Die Faltmatrix sucht nach einem bestimmten Ding auf dem Bild, d.h. es sucht nach einem Muster im gesamten Bild mit nur einem Filter.
Unterschied zum menschlichen Gehirn
So einfach es auch klingen mag sich ein riesiges Neuronales Netzwerk zu bilden und es Artificial Intelligents (AI) zu nennen, da dürfen ein paar Punkte nicht vergessen werden:
- Die künstlichen Neuronen feuern ganz anders als ein Gehirn: Ein menschliches Gehirn hat 100 Milliarden Neuronen und 100 Billionen Verbindungen (Synapsen) und operiert mit ca. 20 Watt (genug um eine schwache Glühbirne zu betreiben) – im Vergleich dazu hat ein Neuronales Netz nur 10 Millionen Neuronen und 1 Milliarde Verbindungen auf 16.000 CPUs (ungefähr 3 Millionen Watt).
- Das Gehirn ist beschränkt auf 5 Typen von Input Daten von 5 Sinnen: Kinder lernen nicht, was ein Auto ist, dadurch, dass sie 100.000 Bilder durchsehen welche „Auto“ und „nicht Auto“ gekennzeichnet sind, aber so lernt Machine Learning
Wo wird Make and Model eingesetzt?
Make and Model Erkennung von Autos ist heutzutage ein gefragtes Element für automatische Vision basierte Systeme, z.B. zur Verkehrsüberwachung oder Überwachungskameras zur Strafverfolgung. Denn durch das gesteigerte Sicherheitsbewusstsein der letzten Jahre sind Zugangskontrollen für Parkplätze, Gebäude oder auch Sperrgebiete immer verbreiteter. In solchen Überwachungssystemen kann ein Videostreaming dem Sicherheitspersonal helfen, die Fahrzeuge zu verifizieren, anhand Marke, Modell oder Farbe und dieses Fahrzeug dann über die gesamte Videokamerabandbreite verfolgen.
Beispielsweise ist es für die Strafverfolgungsbehörden Voraussetzung, dass sie ein Auto in Verbindung mit einem Verbrechen bzw. ein verdächtiges Fahrzeug über mehrere Millionen von Verkehrsaufnahmen verfolgen können, und zwar manchmal nur durch Beschreibungen von Augenzeugen. Wenn man von vorneherein Make and Model einsetzt, dann kann dies Personal sparen und die Überführung des Täters beschleunigen.
Zusätzlich kann MMR (make & model recognition) auch an Grenzübergängen und elektronischen Mautstellen eingesetzt werden. Oder auch in Verkehrskontrolle und -überwachung, für Statistiken Verkehrsdichte/-stärke.
Einsatzbereiche für Make and Model sind:
- Beobachtung und Ermittlung
- Sicherheitsüberwachung
- Verkehrsdaten sammeln
- Strafverfolgung
- Mautstellen
Kontakt
EVT Eye Vision Technology GmbH
Gartenstraße 26
76131 Karlsruhe
Deutschland
+49 (0) 721 626 905 82
+49 (0) 721 626 905 96