Stellen Sie sich vor, Sie sitzen an ihrem Schreibtisch im Hauptquartier des BND und werden plötzlich mit der Überwachung mehrerer Länder beauftragt. Ihre Vorgesetzten interessieren sich für die Bewegung von bestimmten Fahrzeugen und den Bau von geheimen Stützpunkten in abgelegenen Gebieten.
Genauer gesagt wird von Ihnen verlangt, dass Sie diese Fahrzeuge auf Satelliten- und Drohnenbildern identifizieren. Glücklicherweise kann Sie diese Aufgabe nicht aus der Ruhe bringen. Sie haben Freunde bei HD Vision Systems, die Ihnen mit Hilfe von künstlicher Intelligenz und Oriented Bounding Boxes zur Seite stehen können.
Grundlegende Objekterkennung mit künstlicher Intelligenz
Mit dem Aufkommen von künstlicher Intelligenz ist es möglich geworden, Computern beizubringen, Informationen aus Bildern zu gewinnen. Ein potenzielles Anwendungsgebiet ist dabei die computergestützte Erkennung von Objekten, die in einem Bild zu sehen sind.
Für Computer bedeutet dies, dass sie das Bild nach Strukturen durchsuchen, die sie schon einmal gesehen haben und entsprechend mit bekannten Objekten in Verbindung bringen können. Aufbauend auf dieser Analyse treffen die Computer eine Vorhersage, welches Objekt auf dem Bild zu sehen ist.
Hier ist eine Katze zu sehen. Auch für Computer. Katzen sind cool.
Die reine Objekterkennung ist jedoch zunächst eine akademische Errungenschaft gewesen. In realen Anwendungen steht man nur selten vor dem Problem, mit einem Bild konfrontiert zu werden, das genau ein unbekanntes Objekt enthält, dessen Typ bestimmt werden soll. Die Realität sieht oft anders aus:
Gehen wir also einen Schritt weiter und nehmen an, dass sich mehrere verschiedene Objekte in einem Bild befinden, deren Typ jeweils bestimmt werden soll. Um diese Informationen später verwenden zu können, wollen wir zusätzlich wissen, wo sich jedes Objekt im Bild befindet. Dies könnte z. B. nützlich sein, um den Standort an einen Roboter zur weiteren Bearbeitung zu übermitteln.
Bounding Boxes
Eine Möglichkeit, mit mehreren Objekten in einem Bild umzugehen, besteht darin, einen Algorithmus einen Blick auf das Bild werfen zu lassen und genaue Informationen darüber zurückzugeben:
- Welche Objekte in dem Bild zu sehen sind,
- Wo die Objekte platziert sind,
- Welche Abmessungen die Objekte haben.
Mit anderen Worten: Der Algorithmus legt einen Rahmen um jedes Objekt, eine so genannte Bounding Box, um die Ergebnisse zu markieren. Normalerweise wird zusätzlich die Art des Objekts, das sogenannte Label, vorhergesagt.
Auch bei dieser Aufgabe analysieren Computer zunächst die Strukturen des Bildes und ordnen sie bekannten Objekten zu. Nur werden in diesem Fall verschieden Teile des Bildes separat betrachtet, wodurch es möglich ist mehrere Objekte zu erkennen. Anschließend werden die gefundenen Objekte nicht nur identifiziert, sondern auch ihre genaue Lage und Größe vorhergesagt.
Hier ist immer noch eine Katze zu sehen. Es ist auch offensichtlich wo die Katze in dem Bild zu sehen ist. Und zwar nicht nur für uns, sondern auch für unseren Computer.
Der BND ist begeistert. Sie haben die entsprechenden Fahrzeuge identifiziert.
Doch Sie sind zu erfolgreich gewesen. Sie haben zwar gedacht, dass Sie dem BND mehr Daten gegeben haben, als er jemals nutzen könnte, aber jetzt will er auch noch wissen, in welche Richtung sich die Fahrzeuge bewegen.
Kann man das schaffen?
Bounding Boxes mit Orientierung und Richtung
Es ist nun also möglich zu erkennen, was sich wo in einem Bild befindet.
Für den nächsten Schritt kann man an das Satellitenbild eines Parkplatzes denken: Auf diesem Parkplatz sind die Fahrzeuge in verschiedenen Ausrichtungen geparkt, von denen keine mit der Ausrichtung übereinstimmt, in der das Bild aufgenommen wurde. Das bedeutet, dass wir zwar eine gute Vorstellung von dem Ort haben, an dem die Fahrzeuge geparkt sind, aber die Maße, die wir erhalten haben, entsprechen nicht den Abmessungen der Fahrzeuge.
Um das Ergebnis weiter zu verbessern, erkennen wir nicht nur die Bounding Boxes, sondern auch ihre Ausrichtung. Auf diese Weise können die Bounding Boxes so gedreht werden, dass sie mit der Ausrichtung des erkannten Objekts übereinstimmen und somit nur das Objekt und so wenig Raum wie möglich um dieses herum umfassen. Folglich erkennen wir sogenannte orientierte oder minimale Bounding Boxes.
Jetzt dreht die Katze durch. Aber das ist egal, jeder liebt Katzen. Selbst unserem Computer ist es egal. Er akzeptiert das Verhalten der Katze und kann immer noch nicht nur sagen wo die Katze ist, sondern auch wo sie hinschaut.
Für den letzten Schritt verlassen die Fahrzeuge die Parklücke und fahren auf einer Landstraße. Vom Straßenrand aus gesehen wäre es klar, in welche Richtung die Autos fahren. Aber da steht nun mal niemand.
Ein Auto hat aber auch eine klar definierte Front und ein klar definiertes Heck. Und daraus lässt sich in der Regel bestimmen, in welche Richtung das Auto fährt. Insbesondere auf einer Landstraße.
Auch auf diese letzte Information kann man mit scheinbar einfachen Änderungen am Algorithmus schließen. Man muss nur eine weitere Vorhersage zu den bereits vorhandenen hinzufügen (Ort, Dimension, Bezeichnung). Diese letzte Vorhersage gibt entweder nur die Ausrichtung des Objekts oder seine Richtung an.
Der Algorithmus kann nun die Richtung von Objekten in einem Bild bestimmen – wenn ein Objekt eine Orientierung haben kann.
Insgesamt können wir mit orientierten Begrenzungsrahmen sagen, was in einem Bild sichtbar ist, wo sich diese Objekte befinden, wie sie ausgerichtet sind und auf welche Seite des Rahmens die Oberseite des Objekts blickt.
Sie haben erfolgreich geliefert. Ihre Vorgesetzten sind zufrieden.
Sie dürfen morgen wieder kommen, um sich neuen Herausforderungen beim BND zu stellen.