Connect with us

KI 101

Was ist Computer Vision?

mm

Was ist Computer Vision?

Computer-Vision-Algorithmen sind einer der transformierendsten und leistungsfähigsten KI-Systeme der Welt, im Moment. Computer-Vision-Systeme werden in autonomen Fahrzeugen, Roboter-Navigation, Gesichtserkennungssystemen und mehr eingesetzt. Was sind Computer-Vision-Algorithmen jedoch genau? Wie funktionieren sie? Um diese Fragen zu beantworten, werden wir tief in die Theorie hinter Computer Vision, Computer-Vision-Algorithmen und Anwendungen für Computer-Vision-Systeme eintauchen.

Wie funktionieren Computer-Vision-Systeme?

Um vollständig zu verstehen, wie Computer-Vision-Systeme funktionieren, nehmen wir uns zunächst einen Moment Zeit, um zu besprechen, wie Menschen Objekte erkennen. Die beste Erklärung, die die Neuropsychologie für die Erkennung von Objekten hat, ist ein Modell, das die anfängliche Phase der Objekterkennung als eine beschreibt, in der die grundlegenden Komponenten von Objekten, wie Form, Farbe und Tiefe, zunächst vom Gehirn interpretiert werden. Die Signale vom Auge, die ins Gehirn eintreten, werden analysiert, um die Kanten eines Objekts zuerst herauszuziehen, und diese Kanten werden zu einer komplexeren Darstellung zusammengefügt, die die Form des Objekts vervollständigt.

Computer-Vision-Systeme funktionieren sehr ähnlich wie das menschliche Sehsystem, indem sie zunächst die Kanten eines Objekts erkennen und diese Kanten dann zu der Form des Objekts zusammenfügen. Der große Unterschied besteht darin, dass Computer Bilder als Zahlen interpretieren, so dass ein Computer-Vision-System eine Möglichkeit benötigt, die einzelnen Pixel, aus denen das Bild besteht, zu interpretieren. Das Computer-Vision-System weist den Pixeln im Bild Werte zu und indem es die Differenz zwischen den Werten verschiedener Pixelbereiche untersucht, kann der Computer Kanten erkennen. Wenn beispielsweise das fragliche Bild schwarz-weiß ist, reichen die Werte von schwarz (dargestellt durch 0) bis weiß (dargestellt durch 255). Eine plötzliche Änderung des Wertebereichs von Pixeln in der Nähe voneinander weist auf eine Kante hin.

Dieses grundlegende Prinzip des Vergleichs von Pixelwerten kann auch mit Farbbildern durchgeführt werden, wobei der Computer die Unterschiede zwischen den verschiedenen RGB-Farbkarten vergleicht. Jetzt, da wir wissen, wie ein Computer-Vision-System Pixelwerte zum Interpretieren eines Bildes untersucht, werfen wir einen Blick auf die Architektur eines Computer-Vision-Systems.

Convolutional Neural Networks (CNNs)

Die primäre Art von KI, die bei Computer-Vision-Aufgaben verwendet wird, basiert auf Convolutional Neural Networks. Was ist eine Faltung genau?

Faltungen sind mathematische Prozesse, die das Netzwerk verwendet, um die Differenz zwischen Pixelwerten zu bestimmen. Wenn Sie sich ein Raster von Pixelwerten vorstellen, stellen Sie sich ein kleineres Raster vor, das über das Hauptgrid bewegt wird. Die Werte unter dem zweiten Raster werden vom Netzwerk analysiert, so dass das Netzwerk nur eine Handvoll Pixel auf einmal untersucht. Dies wird oft als “Sliding Windows”-Technik bezeichnet. Die vom Netzwerk analysierten Werte werden vom Netzwerk zusammengefasst, was hilft, die Komplexität des Bildes zu reduzieren und es dem Netzwerk erleichtert, Muster zu extrahieren.

Convolutional Neural Networks sind in zwei verschiedene Abschnitte unterteilt, den convolutionalen Abschnitt und den vollständig verbundenen Abschnitt. Die convolutionalen Schichten des Netzwerks sind die Feature-Extractor, deren Aufgabe es ist, die Pixel innerhalb des Bildes zu analysieren und Darstellungen davon zu erstellen, die die dicht verbundenen Schichten des neuronalen Netzwerks lernen können. Die convolutionalen Schichten beginnen damit, die Pixel zu untersuchen und die niedrigen Features des Bildes wie Kanten zu extrahieren. Spätere convolutionale Schichten verbinden die Kanten zu komplexeren Formen. Am Ende hat das Netzwerk hoffentlich eine Darstellung der Kanten und Details des Bildes, die es an die vollständig verbundenen Schichten weitergeben kann.

Bildannotierung

Obwohl ein Convolutional Neural Network Muster aus Bildern selbst extrahieren kann, kann die Genauigkeit des Computer-Vision-Systems durch die Annotierung von Bildern erheblich verbessert werden. Bildannotierung ist der Prozess der Hinzufügung von Metadaten zum Bild, die dem Klassifizierer helfen, wichtige Objekte im Bild zu erkennen. Die Verwendung von Bildannotierung ist wichtig, wenn Computer-Vision-Systeme sehr genau sein müssen, wie z. B. bei der Steuerung eines autonomen Fahrzeugs oder Roboters.

Es gibt verschiedene Möglichkeiten, Bilder zu annotieren, um die Leistung eines Computer-Vision-Klassifizierers zu verbessern. Bildannotierung wird oft mit Begrenzungsboxen durchgeführt, einer Box, die die Kanten des Zielobjekts umgibt und dem Computer sagt, seine Aufmerksamkeit innerhalb der Box zu konzentrieren. Semantische Segmentierung ist eine andere Art von Bildannotierung, die durch die Zuweisung einer Bildklasse zu jedem Pixel in einem Bild funktioniert. Mit anderen Worten, jeder Pixel, der als “Gras” oder “Bäume” betrachtet werden könnte, wird als zu diesen Klassen gehörend gekennzeichnet. Die Technik bietet pixelgenaue Präzision, aber die Erstellung von semantischen Segmentierungsannotierungen ist komplexer und zeitaufwändiger als die Erstellung einfacher Begrenzungsboxen. Andere Annotierungsmethoden wie Linien und Punkte existieren auch.

Blogger und Programmierer mit Spezialisierungen in Machine Learning und Deep Learning Themen. Daniel hofft, anderen zu helfen, die Macht von KI für das soziale Wohl zu nutzen.