Bildverarbeitung und Kameras: Wie Roboter sehen lernen

Roboter in Science-Fiction-Filmen sind oft Menschen nachempfunden. Das gilt für ihre Erscheinungsform und die Art, wie sie mit ihrer Umwelt agieren. Aber das entspricht bei weitem nicht der Realität. Wird sich das in Zukunft ändern?

 

Menschen interagieren mit ihrer Umwelt in der Regel über ihre fünf Sinne – Hören, Fühlen, Schmecken, Riechen und Sehen. Wir nehmen Reize wahr, interpretieren sie und reagieren meistens intuitiv, ohne nachzudenken. Diese Fähigkeit ist für unseren Alltag überaus wichtig und der Verlust eines Sinnes trifft den Betroffenen zumeist hart.

Roboter besitzen allerdings keinen einzigen dieser Sinne. Trotzdem geht die Entwicklung in die Richtung, dass Roboter in Zukunft in der Lage sein sollen, mit ihrer Umwelt zu interagieren und automatisch auf Veränderungen zu reagieren. Wie können wir also Robotern beibringen, ihre Umwelt wahrzunehmen? Oder kurz: Wie sehen Roboter?

Die Darstellung von Robotern in Science Fiction unterscheidet sich stark von der Wirklichkeit
Quelle: Spencer Gu via Unsplash.com

Was ist „sehen“ überhaupt?

Wenn wir von „sehen“ sprechen, was meinen wir damit? Was muss bei einem Menschen passieren, damit er sehen kann?

Unsere Augen sammeln das Licht, das von den Objekten in unserer Umgebung reflektiert wird. Wenn das Licht auf die Netzhaut trifft, wird es in elektrische Signale umgewandelt und über den Sehnerv ins Gehirn weitergeleitet. Dort werden die elektrischen Signale verarbeitet und mithilfe unserer Erinnerungen interpretiert. Das Bild, das dabei entsteht, nutzen wir dann, um uns in der Welt zurecht zu finden. Diese Interpretation der Daten, die wir sammeln, ist der eigentlich wichtige Teil des Prozess.

Wie genau dieser Vorgang abläuft ist nicht klar. Forscher schätzen aber, dass der Prozess so aufwändig und umfangreich ist, dass teilweise die Hälfte unseres Gehirns damit beschäftigt ist, die Informationen, die unsere Augen sammeln zu verarbeiten. Es ist also ein extrem komplexer Prozess.

Es gibt allerdings auch viele andere Arten von Augen in der Natur, die den verschiedenen Spezies das Sehen ermöglichen, obwohl viele Gehirne von Tieren über eine weitaus geringere Rechenleistung verfügen. Das gilt zum Beispiel besonders für Insekten. Es ist also prinzipiell möglich eine „Art“ von Sehen zu ermöglichen, ohne die immense Rechenleistung eines menschlichen Gehirns – oder eines halben.[i]

Sehen, wie wir Menschen es tun, ist ein sehr komplizierter Ablauf, der ständig einen Großteil unseres Gehirns beansprucht
Quelle: Atrium.ro via Unsplash.com

Was bringt es, einem Roboter das Sehen beizubringen?

Aber warum – wenn dieser Prozess so kompliziert ist – wollen wir Robotern unbedingt das Sehen beibringen? Nur, um aus Science-Fiction Science-Facts zu machen? Roboter können bereits jetzt beeindruckende Dinge leisten: Sie können zum Beispiel kollaborativ mit Menschen in Fabriken arbeiten oder schnell Pakete in einem Warenlager ausliefern.[ii]

Es gibt aber auch viele Dinge, die Roboter eben, weil ihnen die Fähigkeit des Sehens fehlt, nicht können. In der industriellen Robotik können durch die Sichtführung von Robotern in 2D und 3D Prozesse wie die Produktion, Montage, und Materialhandhabung flexibler automatisiert werden, als es bisher möglich war. Angesichts der wachsenden Bedeutung von Mass Customization und Batch Size One, ist diese Technologie also extrem wichtig.[iii]

Traditionelle industrielle Roboter basieren auf einer Technologie, die bereits 60 Jahre alt ist und auf absoluter Präzision basieren, denn die Maschinen wissen nicht, was sie tun. Außerhalb der Fabriken, für die sie gebaut wurden, können sie nicht effektiv agieren. Bereits geringe Abweichungen, zum Beispiel in der Position zu bewegender Objekte, können ein Problem für den Ablauf darstellen.[iv]

Roboter, die die Vorgänge in ihrer Umgebung erkennen und interpretieren können, würden außerdem auch Aufgaben übernehmen können, die bisher noch von Menschen gehandhabt werden. Das wäre an vielen Stellen sehr hilfreich: In Industrien, in denen es an Arbeitskräften mangelt, in Bereichen, die unattraktiv oder sogar gefährlich für Menschen sind, bei Arbeitsschritten, die über einen längeren Zeitraum hohe Konzentration erfordern und auch im eigenen Heim oder sogar im Operationssaal.[v]

Um Roboter weiter in unser Leben und unsere Arbeit zu integrieren und ihr volles Potential zu nutzen, ist die Entwicklung einer Art von „Sehsinn“ – im weitesten Sinn – notwendig. Ohne wird es ihnen nicht möglich sein, ihre Umgebung im Kontext zu verstehen.

Bin Picking ist noch immer eine große Herausforderung für Roboter
Quelle: DENSO Robotics

Warum ist es so schwer, Robotern das Sehen beizubringen?

Was sind also die konkreten Hürden, die man überspringen muss, um es einem Roboter zu ermöglichen, seine Umwelt wahrzunehmen und sie richtig zu interpretieren?

Im industriellen Kontext, ist besonders das Herausnehmen eines Teils aus einer Kiste, in der viele weitere Teile ungeordnet liegen, eine Herausforderung, denn der Roboter hat Probleme unsortierte Objekte zu erkennen. Ein Mensch lernt im Laufe seines Lebens, welche Bedeutung hinter den Bildern stecken, die er sieht. Das Bildverarbeitungssystem eines Roboters identifiziert Objekte hingegen nur dann korrekt, wenn diese zuvor programmiert oder antrainiert wurden. Daher müssen die Entwickler von Bildverarbeitungssystem vorher wissen, was später zu tun ist, um einen entsprechenden Algorithmus zu schreiben.[vi]

 

Die Anfänge

Mit einer digitalen Kamera kann man dem Roboter ermöglichen, Informationen über seine Umgebung zu sammeln. Anfang der 1960er Jahre war man noch davon überzeugt, die Gewinnung von Informationen aus Kamerabildern wäre einfach. Aber das war – leider – weit gefehlt: Mittlerweile haben ganze Forschungsfelder um diese Problemstellung herum gebildet: Besonders das „maschinelle Sehen“ und das „maschinelle Lernen“ sind hier wichtig[vii].

Anstelle eines Gehirns hat ein Roboter einen Computer, der die Signale, die von Sensoren gesammelt werden, verarbeitet und dann Befehle an die Motoren schickt. Besonders Bild- und Tiefendaten, also Farben und Abstände zwischen Kamera und Objekt sind hilfreich. Der Roboter soll aber seine Umgebung nicht nur sehen, sondern auch die Objekte, die sich darin befinden erkennen können.

Er muss also einen Zusammenhang zwischen den Farbinformationen und der Semantik, die beschreibt, was ein Bild darstellt, herstellen. Ein Bild besteht aus mehreren Millionen Pixeln: Farbpunkte, mit eindeutigen Farben, die als Zahl abgespeichert werden. Die Gesamtheit dieser Zahlen muss in Informationen umgewandelt werden, die zeigen, was auf einem Bild zu sehen ist.[viii]

 

Die Herausforderungen

Eine Schwierigkeit besteht darin, die großen Mengen an aufgezeichneten Informationen in einfache, abstrakte Signale umzuwandeln, die der Roboter versteht. Das ist mathematisch äußerst anspruchsvoll und wird zusätzlich erschwert, da äußere Einflüsse wie Wetter und Tageszeit auch eine Rolle spielen. Menschen können solche Informationen als irrelevant erkennen und sich auf das konzentrieren, was wichtig ist. Roboter müssen das erst lernen – ein langwieriger und mühsamer Prozess.[ix]

Relevante Informationen für das Erkennen und Verstehen der Umgebung sind die Position des Roboters in einer Karte, die 3D-Position und Orientierung der ihn umgebenden Objekte, die Bewegung von Objekten, die Objektart, mögliche Formen der Interaktion (zum Beispiel die Möglichkeit, das Objekt zu greifen), der begehbare beziehungsweise befahrbare Bereich und Hindernisse sowie die Struktur der unmittelbaren Umgebung.[x]

In Anwendungsfällen wie selbstfahrenden Autos ergänzt man Kameras durch weitere Sensoren. Das kann Ultraschall sein, aber auch Radar, Sonar, oder Infrarotsensoren kommen zur Anwendung. Bei all diesen Sensoren werden Wellen – Licht oder Schall – ausgesendet und anschließend gemessen, was von der Umgebung zurückgeworfen wird. So erhält man zwar ein Bild der Umgebung, kann aber nicht erkennen, was was ist. Der Roboter – oder in diesem Fall das Auto – kann seine Umgebung nicht verstehen, da er die unterschiedlichen Objekte nicht erkennt.

Aber es muss nicht nur die Objekte erkennen, sondern auch was Folgen oder mögliche Intentionen sein könnten, wenn ein Objekt auftaucht: Rollt ein Ball auf die Straße, könnte es sein, dass ein Kind hinterherläuft. Ein selbstfahrendes Auto sollte das erkennen und entsprechend reagieren können.[xi]

Die Kamera erkennt die Position und trackt außerdem den Barcode der Pakete
Quelle: Media Print

 

Welche Modelle gibt es, mit denen Roboter ihre Umgebung erkennen können?

Es gibt verschiedene Ansätze, die Robotern dabei helfen sollen, ihre Umgebung wahrnehmen und erkennen zu können. Einige wurden zuvor bereits kurz erwähnt, aber wir werden an dieser Stelle noch einmal genauer auf die Unterschiede, Vor- und Nachteile eingehen.

Ultraschall-sensor

Vielleicht die häufigste Art, um Hindernisse zu erkennen ist die Nutzung eines Ultraschallsensors oder eines Echolots: Ein Lautsprecher sendet hochfrequente Schallwellen aus. Diese breiten sich aus und werden, wenn sie auf ein Hindernis stoßen, zurückgeworfen. Diese zurückkommenden Wellen erfasst ein Mikrofon. Man misst die Zeit, die die Welle hin und zurück braucht.[xii]

Wie oben schon erwähnt, hat diese Technik allerdings das Problem, dass sie lediglich erkennt, dass sich etwas vor – oder auch neben oder hinter – ihm befindet. Es kann aber nicht zwischen Objekten unterscheiden und deshalb auch nur sehr begrenzt reagieren.

LiDAR: Light Detection and Ranging

Eine sehr ähnliche Technik ist die Erfassung der Umgebung durch das Aussenden von Lichtwellen (in der Regel Infrarotlicht) und die Messung der Zeit, die das Licht braucht, um zurückgeworfen zu werden. Es gibt drei verschiedene Varianten, dieser Art von Sensor:

  • Sensoren, die nur einen Lichtstrahl aussenden, werden meistens dafür benutzt, Distanzen zu großen Objekten zu messen (z.B. Wände, Boden, Decke)
  • Sensoren, die mehrere Lichtstrahle auf einmal aussenden, sind nützlich zur Vermeidung von Kollisionen und Erkennen von Objekten.
  • Sich drehende Sensoren produzieren einen Lichtstrahl, während er sich dreht. Auch diese werden zur Objekterkennung und Kollisionsvermeidung eingesetzt.[xiii]

Erfasst man auf diese Weise mehrere Millionen Distanzen in alle Richtungen, entsteht eine Punktwolke, die eine grobe Darstellung des umgebenden Raums ermöglicht.

Aber auch hier gibt es Probleme: Reflektierende Oberflächen senden die Lichtimpulse nicht zum Sensor zurück, sondern – entsprechend der Regel „Einfallwinkel = Ausfallwinkel“ – in eine andere Richtung. Außerdem kann die Messung durch Nebel oder Regen beeinträchtigt werden, da auch die Wassermoleküle das Licht umleiten. Außerdem ist der Prozess relativ langsam und die Geräte bisher sehr teuer dafür, dass das erstellte „Bild“ nur auf geometrischen Daten basiert. Menschliches Sehen hingegen erfasst auch Farbe und Textur. Die Preise sind in den letzten Jahren aber auch gefallen.[xiv]

Durch die Nutzung von Lasern können Roboter ihre unmittelbare Umgebung erkennen
Quelle: Note Thanun via Unsplash.com

 

Kameras und Bildverarbeitung

Wie erkennt ein Roboter, was auf einem Kamerabild zu sehen ist? Mit einer Videokamera nimmt man durchgehend Bilder auf, die an den Computer weiter gegeben werden. Dann sucht ein Algorithmus auffallende Elemente in den Bildern: Linien, interessante Punkte oder Ecken und bestimmte Texturen, die er von Bild zu Bild verfolgen kann.

Abhängig davon, was der Roboter sehen wird und tun soll, wird dann eine Software entwickelt, die Muster erkennt und dem Roboter hilft zu verstehen, was sich um ihn herum befindet. Unter Umständen erstellt diese eine grundlegende Karte der Umgebung während der Roboter arbeitet oder versucht die Eigenschaften, die sie auf den Bildern erkennt mit ihrer Datenbank zu vergleichen, um zu finden, was sie sucht.

Diese Art der Programmierung ist alleine aber nicht zuverlässig genug, um zu verhindern, dass der Roboter mit etwas kollidiert oder fällt. Man ergänzt sie mit den oben beschriebenen Modellen, um sie nutzbar zu machen.

Eine neue Richtung: Maschinelles Lernen

Eine neue Forschungsrichtung geht einen etwas anderen Weg: Anstelle das System zu programmieren, soll es in der Lage sein zu lernen. Inspiriert davon, wie Forschen vermuten, dass Tiere sehen, entwickeln sie eine Struktur. Diese Systemstruktur ist kein Algorithmus, sondern die Basis für das, was der Roboter sich selbst erarbeitet – was er lernt. Das nennt man „Maschinelles Lernen“.

Da man immer mehr Rechenleistung für immer weniger Geld erhält, wird diese Technologie nun auch im realen Leben einsetzbar[xv]. Der Lernaufwand ist allerdings nach wie vor groß, denn Roboter benötigen mehr Trainingsdaten als Menschen. Das Deutsche Zentrum für Luft- und Raumfahrt hat deshalb ein Verfahren entwickelt, bei dem keine realen Bilder benutzt werden, sondern Szenen simuliert werden. So kann die Information, die erlernt werden soll (z.B. die Objektart) auch direkt am Computer miterzeugt werden.[xvi]

Dadurch, dass Roboter lernen, können sie auch ihr erlerntes Wissen teilen: So muss nicht jeder Roboter von Null anfangen. Stattdessen kann er auf das gesammelte Wissen anderer Roboter – beispielsweise über eine Cloud – zugreifen. Es würde dann reichen, wenn ein Roboter eine komplexe Aufgabe löst, damit alle anderen Roboter im Netzwerk das auch erlernen. Eine Vorstellung, die für manche beängstigend und für andere aufregend ist.[xvii]

Weiterentwicklung der Hardware

Neben dem maschinellen Lernen entwickelt man auch neue Kameras, die sogar besser sehen können als die Augen eines Menschen: Eine neue Kamera, entwickelt von Forschern der Stanford University, orientiert sich an den Augen von Insekten: Sie verfügt über 200.000 extrem kleine Mikrolinsen, die detaillierte Informationen über jeden Lichtreiz, den sie aufnehmen sammeln. Diese „Lichtfeldfotografie“ oder auch rechnerische Fotografie ist in der Lage ein weiteres Sichtfeld als Menschen zu erfassen, und mehr Informationen zu sammeln.[xviii]

Ein Problem bei dieser Technik sind Datenschutzrechtliche Überlegungen, zu denen bisher noch keine Standards oder Regeln festgelegt wurden.[xix]

Fazit

Robotern das Sehen beizubringen ist eine große Herausforderung. Gleichzeitig ist es aber auch eine Idee, die das Potential hat, viele neue Anwendungsbereiche für Roboter zu erschließen, und bestehende effizienter zu machen.

Die größte Herausforderung ist, dem Roboter verständlich zu machen, was sich in seiner Umgebung befindet, und ob er darauf reagieren sollte. Und wenn ja, wie er reagieren soll. Maschinelles Lernen hat hier große Fortschritte ermöglicht und auch Bildverarbeitung und Kameratechnologie haben sich weiterentwickelt.

Dennoch werden zurzeit – gerade bei selbstfahrenden Autos – noch verschiedene Arten von Sensoren kombiniert, um die Schwächen der jeweiligen Systeme ausgleichen zu können.

Wo soll es hingehen?

Willst du direkt mit der Erstellung deiner eigenen Automatisierungslösung beginnen? Dann besuch unseren Konfigurator!

Oder willst du mehr über den Integrationsprozess erfahren? Dann lad dir unser kostenloses Whitepaper herunter: “Prozessintegration: In 5 Schritten zur Automatisierung”

Du willst mehr über die Welt der Robotik erfahren? Vielleicht interessieren dich diese weiteren Artikel:

Verweise

[i] Roberts, Jonathan (December 22, 2015): “How do robots ‘see’ the world?”, https://phys.org/news/2015-12-robots-world.html.

[ii] Amin, Geet (June 24, 2019): “How Robots Perceive the World Around Them”, https://www.roboticsbusinessreview.com/news/how-robots-perceive-the-world-around-them/.

[iii] Kunze, Sariana (April 23, 2019): “Wie Sensoren ROboter fühlen, sehen und lernen lassen”, https://www.elektrotechnik.vogel.de/wie-sensoren-roboter-fuehlen-sehen-und-lernen-lassen-a-820602.

[iv] Condie, Bill (October 01, 2017): “Making robots see. Machine learning and deep neural networks are helping roboticists create machines that can see their environments. Bill COndie reports”, https://cosmosmagazine.com/technology/making-robots-see/.

[v] Roberts, Jonathan (December 22, 2015): “How do robots ‘see’ the world?”, https://phys.org/news/2015-12-robots-world.html.

[vi] Fischer, Teresa (January 30, 2020): „Wenn Roboter sehen lernen“, https://www.blog.kuka.com/2020/01/30/wenn-roboter-sehen-lernen/.

[vii] Roberts, Jonathan (December 22, 2015): “How do robots ‘see’ the world?”, https://phys.org/news/2015-12-robots-world.html.

[viii] Triebel, Rudolph (June 25, 2020): „“Wie künstliche Intelligenz uns hilft, Robotern das „Sehen“ beizubringen“, https://www.dlr.de/blogs/alle-blogs/wie-kuenstliche-intelligenz-uns-hilft-robotern-das-sehen-beizubringen.aspx.

[ix] Geiger, Andreas (2015): „Roboter lernen sehen“, https://www.mpg.de/9922487/mpi-mf_jb_2015.

[x] Triebel, Rudolph (June 25, 2020): „“Wie künstliche Intelligenz uns hilft, Robotern das „Sehen“ beizubringen“, https://www.dlr.de/blogs/alle-blogs/wie-kuenstliche-intelligenz-uns-hilft-robotern-das-sehen-beizubringen.aspx.

[xi] Swain, Frank (August 25, 2020): “Robotics: How machines see the world”, https://www.bbc.com/future/article/20140822-the-odd-way-robots-see-the-world.

[xii] Wevolver (2019): “How do Robots ‘See’ in 3D?”, https://www.hackster.io/news/how-do-robots-see-in-3d-7374737e7e99.

[xiii] Amin, Geet (June 24, 2019): “How Robots Perceive the World Around Them”, https://www.roboticsbusinessreview.com/news/how-robots-perceive-the-world-around-them/.

[xiv] Kell, Adam (August 08, 2016): “This is how Robots See”, https://blog.cometlabs.io/this-is-how-robots-see-aa353b0cd857.

[xv] Roberts, Jonathan (December 22, 2015): “How do robots ‘see’ the world?”, https://phys.org/news/2015-12-robots-world.html.

[xvi] Triebel, Rudolph (June 25, 2020): „“Wie künstliche Intelligenz uns hilft, Robotern das „Sehen“ beizubringen“, https://www.dlr.de/blogs/alle-blogs/wie-kuenstliche-intelligenz-uns-hilft-robotern-das-sehen-beizubringen.aspx.

[xvii] Roberts, Jonathan (December 22, 2015): “How do robots ‘see’ the world?”, https://phys.org/news/2015-12-robots-world.html.

[xviii] Orns, Steven (November 17, 2017): “Seeing the world though a robot’s eyes”, https://www.sciencenewsforstudents.org/article/seeing-world-through-robots-eyes.

[xix] Fischer, Teresa (January 30, 2020): „Wenn Roboter sehen lernen“, https://www.blog.kuka.com/2020/01/30/wenn-roboter-sehen-lernen/.

Was du bei der Auswahl eines Cobots beachten solltest - The Specs that Matter

Was du bei der Auswahl eines Cobots beachten solltest - The Specs that Matter

Einführung Der Kauf von Industriemaschinen ist eine große Entscheidung. Alles, was sich in der…
Wer sind die größten Hersteller von Cobots? - Beginning with Bots

Wer sind die größten Hersteller von Cobots? - Beginning with Bots

Cobots, oder kollaborative Roboter, sind eine Unterart von Industrieroboterarmen, die die Fertigung im Sturm…
Bildverarbeitung und Kameras: Wie Roboter sehen lernen

Bildverarbeitung und Kameras: Wie Roboter sehen lernen

Roboter in Science-Fiction-Filmen sind oft Menschen nachempfunden. Das gilt für ihre Erscheinungsform und die…
Sicherheit ist das A und O: Wie kann ich meine Mitarbeiter schützen?

Sicherheit ist das A und O: Wie kann ich meine Mitarbeiter schützen?

An Kontaktpunkten von Robotern und Menschen kommt es nach wie vor zu Unfällen. Kollaborative…
Was du bei der Auswahl eines Cobots beachten solltest - The Specs that Matter

Was du bei der Auswahl eines Cobots beachten solltest - The Specs that Matter

Einführung Der Kauf von Industriemaschinen ist eine große Entscheidung. Alles, was sich in der Vorbereitung…
Wer sind die größten Hersteller von Cobots? - Beginning with Bots

Wer sind die größten Hersteller von Cobots? - Beginning with Bots

Cobots, oder kollaborative Roboter, sind eine Unterart von Industrieroboterarmen, die die Fertigung im Sturm erobert…
Bildverarbeitung und Kameras: Wie Roboter sehen lernen

Bildverarbeitung und Kameras: Wie Roboter sehen lernen

Roboter in Science-Fiction-Filmen sind oft Menschen nachempfunden. Das gilt für ihre Erscheinungsform und die Art,…
Sicherheit ist das A und O: Wie kann ich meine Mitarbeiter schützen?

Sicherheit ist das A und O: Wie kann ich meine Mitarbeiter schützen?

An Kontaktpunkten von Robotern und Menschen kommt es nach wie vor zu Unfällen. Kollaborative Roboter…
Produkte vergleichen
Teilen