Bilderkennung
Worum geht's?
Damit die künstliche Intelligenz das Verhalten der Roboter planen kann, muss sie erst einmal wissen wo die Roboter denn sind. Dazu wird das Spielfeld mit zwei Kameras, über jeder Spielfeldhälfte eine, gefilmt. Um die Roboter im Bild gut zu erkennen, hat jeder auf seiner Deckplatte eine eigene Kombination aus insgesamt vier rosa und grünen Punkten. Zusammen mit dem mittleren Punkt (blau oder gelb) der das Team bestimmt, kann so jeder Roboter eindeutig identifiziert werden. Um zu erkennen, ob der Angreifer in Richtung Tor schaut oder doch ganz woanders hin, sind die zwei vorderen Punkte weiter auseinander als die hinteren.
Bis 2009 hatte jedes Team seine eigene Erkennungssoftware für die Roboter und eigene Kameras, was den Aufbau am Spielfeld sehr komplex machte. Da dabei zudem wenig signifikante Forschung zustande kam, gibt es seit 2010 eine einheitliche Vision-Software namens SSL-Vision.
Im Bild ist die Oberfläche von SSL-Vision zu sehen. Neben den Einstellungen ist oben links eine Ausschnitt des farbsegmentierten Kamerabilds zu sehen. Die Farbfläche daneben ist die YUV Kalibrierung bei der für die einzelnen Farben eingestellt wird welche Farbtöne dazugehören.
Was ist zu tun?
Da SSL-Vision gut funktioniert gibt’s daran außer kleineren Korrekturen, die von allen Teams eingebracht werden können, eigentlich nicht viel zu tun. Neue Methoden zur automatischen Kalibrierung oder z.B. eine Beschleunigung mithilfe der GPU wären aber dennoch erwünscht.
SSL-Vision
Damit die Punkte der Roboter gut erkannt werden, wird jeder Pixel des Bildes in eine bestimmte Farbkategorie eingeordnet. Die Pixel des orangen Balls sollten dabei z.B. als orange erkannt werden. Welche Farbe zu welcher Kategorie gehört lässt sich bei der YUV Kalibrierung einstellen. Anschließend werden gleichfarbige Punkte zu „Farbklecksen“ zusammengefasst.
Damit die einzelnen Punkte nun in eine Position auf dem Spielfeld übersetzt werden können, ist eine Kamerakalibrierung nötig. Dabei werden anhand der Ecken und eventuell Linien des Spielfelds die nötigen Parameter automatisch ermittelt. Da die beiden Kameras getrennt aufgehängt sind, wird auch jede Kamera einzeln kalibriert.
Anschließend werden die Roboter in den „Farbklecksen“ gesucht. Dazu wird zuerst die Teamfarbe gesucht und dann nach den restlichen Punkten des Punktemusters. Nun fehlt nur noch der Ball. Jeder orange Klecks der in etwa Ballgröße hat wird auch als einer betrachtet.
Als letzter Schritt werden die Positionsdaten noch an die einzelnen Teams gesendet.
In den Kamerabildern gibt es auch ein gewisses Rauschen, das sich dann in kleinen Schwankungen der Positionsdaten im Bereich von wenigen Millimetern zeigt. Hier setzt das Tracking an, das dieses Rauschen reduziert und auch verlorene Frames überbrücken kann. Damit die KI auch dann nicht durcheinander kommt, wenn gerade mehrere Bälle übers Spielfeld rollen, sorgt das Tracking zudem dafür, dass ein Ball ausgewählt wird.




