Daten und Künstliche Intelligenz

Computer vision

Computer vision

Dominik Filipiak
24 Apr 2023
6 min Lesezeit

Was können wir von moderner Computer Vision erwarten?

Computer Vision ist heutzutage allgegenwärtig. Es ist ein spannendes Forschungsgebiet, bei dem es darum geht, Maschinen zu lehren, die Welt um sie herum zu "sehen" und zu interpretieren, indem sie digitale Bilder oder Videos verwenden. In der Vergangenheit war die Computer Vision ein separater Bereich der Wissenschaft und Technik. Eines der Hauptunterscheidungsmerkmale zwischen der modernen Computer Vision und ihren früheren Versionen ist der Wechsel von regelbasierten zu datengesteuerten Ansätzen. Mit dem Aufkommen des Deep Learning hat sich die Computer Vision weg von handgefertigten Merkmalen und hin zu End-to-End-Modellen entwickelt, die direkt aus Rohdaten lernen können. Dies ermöglichte genauere und robustere Modelle, sowie die Skalierung auf große Datensätze. Dank dieses Wechsels und insbesondere der auf Transformer basierenden Architekturen, weist die Computer Vision viele Gemeinsamkeiten mit der Verarbeitung natürlicher Sprache auf. Allerdings gibt es auch einige wichtige Unterschiede.

Es gibt eine Vielzahl von Start-ups, die ihren Erfolg auf Computer-Vision-Techniken aufbauen. AI Clearing zum Beispiel nutzt Computer Vision, um den Baufortschritt automatisch zu überwachen. Dank der Bildverarbeitungsmodelle, in Verbindung mit Drohnenbildern, können Bauleiter den Fortschritt von Großbaustellen, wie etwa großen Solarparks oder Autobahnen, leicht verfolgen. Nomagic ist ein Unternehmen, das mit Hilfe von Robotern wiederholbare logistische Aufgaben in Lagern automatisiert. Sie nutzen Computer-Vision-Lösungen, um die optimale Entnahmeposition für unbekannte Produkte zu bestimmen, den Barcode zu scannen oder die Artikel optimal in die Behälter zu legen. Focal Systems bietet eine Lösung für die Automatisierung im Einzelhandel. Ihre Kameras scannen automatisch die Regale in den Geschäften, um genaue Informationen darüber zu erhalten, was sich auf ihnen befindet. Dies erleichtert die Verwaltung des Ladens auf automatische Weise. Ein anderes Start-up-Unternehmen, ReSpoVision, entwickelt eine auf Fußball spezialisierte Lösung, die automatisch TV-Spielaufzeichnungen analysiert und genaue Spieltelemetrien (z. B. Ballposition oder Spielergeschwindigkeit) erstellt.

Es gibt eine Reihe von Computer-Vision-Aufgaben, und die Klassifizierung aller dieser Aufgaben ist eine mühsame Arbeit. Eine Möglichkeit, dies zu tun, wäre die Betrachtung der Eingabedaten: Fotos (von einer Kamera, einer Drohne, einem Satelliten...), Videos, Punktwolken oder verschiedenen Fernerkundungsgeräten. Eine weitere wichtige Unterscheidung in der Computer Vision ist der Unterschied zwischen generativen und diskriminativen Modellen. Diskriminative Modelle konzentrieren sich auf die Unterscheidung von Grenzen auf beobachteten Bildern, z. B. die Erkennung von Objekten oder Gesichtern. Generative Modelle hingegen sind darauf ausgelegt, etwas Neues zu schaffen, z. B. realistische Bilder oder Videos zu erzeugen. Beispiele für generative Modelle sind Midjourney, ein Tool, das Bilder aus Textbeschreibungen erzeugen kann, und DALL-E 2, das Bilder aus Textaufforderungen erstellen kann.

Generative Computer-Vision-Aufgaben

Bei generativen Computer-Vision-Aufgaben geht es darum, etwas Neues zu schaffen, z. B. Bilder oder Videos zu erzeugen, die einem Set von Trainingsdaten ähnlich sind. Diese Aufgaben werden in der Regel mit generativen Modellen bearbeitet, die darauf ausgelegt sind, neue Daten auf der Grundlage der in den Trainingsdaten beobachteten Muster zu erzeugen. Beginnen wir mit der Text-zu-Bild-Synthese. Dabei wird ein Bild auf der Grundlage einer textuellen Beschreibung erzeugt. Denken Sie an DallE oder Midjourney! Eine weitere gängige generative Bildverarbeitungsaufgabe ist die Bildsynthese, bei der es darum geht, neue Bilder zu erzeugen, die einer Reihe von Trainingsbildern ähnlich sind. Dies kann für eine Vielzahl von Anwendungen genutzt werden, z. B. für die Erzeugung realistischer Bilder von Menschen, Tieren oder Objekten für den Einsatz in Videospielen oder Virtual-Reality-Umgebungen. Der Stil-Transfer ist eng damit verwandt - es geht darum, den Stil eines Bildes zu übernehmen und ihn auf ein anderes zu übertragen. Man könnte Zum Beispiel den Stil eines berühmten Gemäldes auf ein Foto übertragen. Es ist nicht nötig, in zwei Dimensionen zu bleiben. Mit der 3D-Objekterzeugung (oder 3D-Rekonstruktion) kann man zum Beispiel 3D-Modelle von Objekten aus 2D-Bildern oder Videos erstellen. Die 3D-Rekonstruktion kann beispielsweise zur Erstellung virtueller Rundgänge durch Gebäude oder zur Visualisierung komplexer wissenschaftlicher Daten in 3D verwendet werden.

Manchmal wollen wir nichts Neues erzeugen - wir wollen einfach mit dem arbeiten, was wir haben. Beim Bild-Inpainting geht es beispielsweise darum, fehlende oder beschädigte Teile eines Bildes aufzufüllen. Dies kann in Anwendungen, wie der Bildwiederherstellung oder Videobearbeitung nützlich sein, wo beschädigte oder fehlende Teile eines Bildes rekonstruiert werden müssen. Eine weitere Aufgabe dieser Art - weithin bekannt aus den FBI-Fernsehserien - ist die Bildsuperauflösung. Im Wesentlichen wird dabei aus einem Bild mit niedriger Auflösung ein Bild mit hoher Auflösung erzeugt. Dies kann bei Anwendungen nützlich sein, bei denen eine Verbesserung der Bildqualität erforderlich ist, z. B. bei Satellitenbildern. Manchmal wollen wir mit visuellen Inhalten arbeiten, aber die Zielausgabe ist Text. Bei der Bilduntertitelung wird beispielsweise eine textliche Beschreibung eines Bildes oder Videos erstellt. Bei der eng verwandten Videozusammenfassung wird eine kürzere, prägnantere Version eines längeren Videos erstellt, indem Keyframes oder Segmente ausgewählt und zusammengefasst werden. Die Videozusammenfassung wird in Anwendungen wie Nachrichtensendungen, Sportanalysen und Sicherheitsüberwachung eingesetzt.

Diskriminierende Bildverarbeitungsaufgaben

Eine der Hauptaufgaben der Computer Vision ist die Bildklassifizierung, bei der ein Bild in vordefinierte Klassen oder Kategorien eingeteilt wird. Ein Bildverarbeitungssystem kann zum Beispiel darauf trainiert werden, Bilder von Tieren in verschiedene Arten wie Katzen, Hunde und Vögel zu klassifizieren. Eine weitere wichtige Aufgabe der Computer Vision ist die semantische Segmentierung, bei der jedes Pixel eines Bildes mit einer entsprechenden Klasse oder Bezeichnung versehen wird. Im Wesentlichen handelt es sich dabei um die Klassifizierung auf Pixelebene. Diese Aufgabe kann verwendet werden, um den Vorder- und Hintergrund eines Bildes zu trennen oder verschiedene Objekte in einem Bild zu segmentieren. In der medizinischen Bildgebung kann die semantische Segmentierung z. B. zur Identifizierung und Segmentierung von Tumoren in MRT-Scans verwendet werden. Denken Sie auch an das Unschärfen des Hintergrunds bei Zoom! Die Klassifizierung ist nicht auf Bilder beschränkt. Bei der Punktwolkenklassifizierung geht es darum, Punkte in einer 3D-Punktwolke in verschiedene Kategorien oder Klassen einzuordnen. Die Klassifizierung von Punktwolken kann zum Beispiel dazu verwendet werden, verschiedene Arten von Objekten in einer 3D-Karte eines Lagerhauses zu identifizieren und zu klassifizieren oder Straßenmarkierungen und Schilder in einer 3D-Karte einer Straße zu identifizieren.

Die Objekterkennung ist eine weitere wichtige Aufgabe der Computer Vision, bei der es um die Identifizierung und Lokalisierung von Objekten in einem Bild oder Video geht. Diese Aufgabe ist für Anwendungen, wie die Sicherheitsüberwachung und autonome Fahrzeuge von entscheidender Bedeutung. Algorithmen zur Objekterkennung können beispielsweise dazu verwendet werden, verdächtiges Verhalten in einer Menschenmenge zu erkennen und zu verfolgen oder Hindernisse auf der Straße zu identifizieren und zu vermeiden. Ein Sonderfall ist die Gesichtserkennung, bei der Personen anhand ihrer Gesichtszüge erkannt und identifiziert werden. Die Gesichtserkennung wird bei der Sicherheitsüberwachung, der Identitätsüberprüfung und beim Tagging in sozialen Medien eingesetzt. Bei der Multi-Objekt-Verfolgung werden mehrere Objekte über einen bestimmten Zeitraum hinweg verfolgt. Sie wird häufig bei der Videoanalyse und -überwachung eingesetzt, wenn es darum geht, die Bewegungen mehrerer Personen oder Fahrzeuge in Echtzeit zu verfolgen. Ein Anwendungsfall hierfür wäre die Verfolgung des Kundenverhaltens in einem Geschäft, um das Ladenlayout zu analysieren und zu verbessern oder Engpässe im Lagerbetrieb zu ermitteln.

Es gibt noch viel mehr Aufgaben. Bei der Tiefenschätzung geht es darum, die Entfernung von Objekten zu einer Kamera oder einem Sensor abzuschätzen. Die Tiefenschätzung wird in Anwendungen wie Robotik, Augmented Reality und autonomen Fahrzeugen eingesetzt. Bei der Positionsschätzung geht es um die Schätzung der 3D-Position und -Orientierung eines menschlichen Körpers oder Objekts anhand eines 2D-Bildes oder Videos. Die Posenschätzung wird in Anwendungen wie Sportanalyse, Bewegungserfassung und virtuelle Anproben eingesetzt. Die Kantenerkennung ist eine weitere Aufgabe der Computer Vision, bei der es darum geht, die Kanten oder Grenzen zwischen Objekten in einem Bild zu erkennen. Diese Aufgabe ist nützlich für die Merkmalsextraktion und kann in Anwendungen wie der Gesichtserkennung, der Bildsegmentierung und der Objekterkennung eingesetzt werden. Dies sind nur einige Beispiele für die vielen Aufgaben der Computer Vision, die es gibt. Die Liste ist nicht vollständig. Es gibt Aufgaben, die sich nicht so einfach klassifizieren lassen, wie z. B. die optische Zeichenerkennung (OCR), bei der Text in einem Bild oder Video erkannt und in maschinenlesbaren Text umgewandelt wird. OCR wird häufig beim Scannen von Dokumenten und bei der digitalen Archivierung eingesetzt. Da die Computer-Vision-Technologie immer weiter verbessert wird, können wir in der Zukunft mit noch fortschrittlicheren Anwendungen und Anwendungsfällen rechnen.

OK, wie kann ich sie in meinem Unternehmen einsetzen?

Zu wissen, welche Aufgabe man braucht, ist ein wichtiger Schritt beim Aufbau einer Bildverarbeitungspipeline, aber es gibt noch viel mehr zu tun. Sobald Sie die spezifischen Aufgaben identifiziert haben, die mit Computer Vision gelöst werden können, besteht der nächste Schritt darin, einen Plan für den Aufbau einer Computer Vision Pipeline zu entwickeln. Dazu gehören in der Regel die Auswahl geeigneter Modelle und Hardwarekomponenten, das Entwerfen und Trainieren von Modellen für maschinelles Lernen und die Integration der Modelle in Ihre bestehenden Systeme und Arbeitsabläufe. Man kann immer mit vortrainierten Modellen beginnen, die für bestimmte Anwendungsfälle angepasst werden können. Dieser Ansatz kann dazu beitragen, den Zeit- und Kostenaufwand für das Training neuer Modelle von Grund auf zu reduzieren, und bietet gleichzeitig die Vorteile der Computer-Vision-Technologie. Die kleinsten Modelle sind für Consumer-GPUs geeignet. Oft sind sie gut genug für ihre Aufgabe, und es sind keine großen Ausgaben für Serverräume erforderlich.

Die Anwendungen der Computer Vision sind vielfältig, und wir wissen, dass dies komplex sein kann - vor allem, weil sich das Forschungsgebiet ständig verändert und jede neue Woche neue Entdeckungen in diesem Bereich bringt. Bei Perelyn lieben wir Computer Vision und würden uns freuen, Ihnen helfen zu können! Wir haben uns bei Perelyn darauf spezialisiert, maßgeschneiderte Computer-Vision-Lösungen für Unternehmen jeder Größe zu entwickeln. Egal, ob Sie eine bestimmte Aufgabe automatisieren, große Mengen an Bild- oder Videodaten analysieren oder die Fähigkeiten eines bestehenden Systems erweitern möchten - wir können Ihnen helfen. Unser Team aus erfahrenen Computervision-Ingenieuren und Spezialisten für maschinelles Lernen verfügt über die Fähigkeiten und das Fachwissen, um selbst die komplexesten Projekte zu realisieren.

Andere Insights

How do we solve problems?

Please consider helping us improve our website. By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation and analyse site usage. View our Privacy Settings for more information.