KI-Vision-Sensor#
Einführung#
Der KI-Vision-Sensor kann Objekte, Farben und AprilTag-IDs erkennen und verfolgen. Dadurch kann der Roboter seine Umgebung analysieren, Objekten folgen und auf Basis der erfassten visuellen Daten reagieren.
Nachfolgend finden Sie eine Liste der verfügbaren Blöcke:
Aktionen – Daten vom KI-Vision-Sensor für eine ausgewählte Signatur erfassen.
take snapshot – Erfasst Daten für eine bestimmte Signatur, wie z. B. eine konfigurierte Farbe, ein vorab trainiertes Objekt oder eine AprilTag-ID.
Einstellungen – Wählen Sie das Objekt aus, mit dem Sie interagieren möchten.
set AI Vision object item – Wählt ein bestimmtes Objekt aus der Liste der erkannten Objekte aus.
Werte – Zugriff auf und Nutzung der erfassten Daten.
AI Vision Objekt vorhanden – Meldet, ob ein Objekt erkannt wurde.
AI Vision object is – Prüft, ob ein erkanntes Objekt einer bestimmten Klassifizierung entspricht.
AI Vision object is AprilTag – Prüft, ob das erkannte Objekt ein AprilTag ist, das einer bestimmten ID entspricht.
AI Vision object is AprilTag ID – Prüft, ob eine erkannte AprilTag-ID mit einer bestimmten ID übereinstimmt.
AI Vision Objektanzahl – Gibt die Anzahl der erkannten Objekte an.
AI Vision-Objekteigenschaft – Meldet Details wie:
centerX & centerY – Koordinaten der Mittelpunktposition im Sichtfeld des Sensors.
angle – Orientierung des Objekts.
originX & originY – Koordinaten der Position der oberen linken Ecke im Sichtfeld des Sensors.
tagID – Identifikationsnummer einer AprilTag-ID.
Score – Wie sicher sich das Modell bei seiner Identifizierung ist, ausgedrückt in Prozent.
Aktionen#
Schnappschuss machen#
Der take snapshot-Stackblock filtert Daten aus dem AI Vision Sensor-Frame zu einer einzigen Signatur – einer gespeicherten Beschreibung von etwas, das der Sensor erkennen kann, wie z. B. ein vorab trainiertes Objekt, eine AprilTag-ID oder eine konfigurierte Farbe oder ein Farbcode.
Farben und Farbcodes müssen zuerst im AI Vision Utility konfiguriert werden, bevor sie mit diesem Block verwendet werden können.
Der Datensatz speichert Objekte, sortiert nach ihrer Breite von groß nach klein, beginnend mit Index 0. Auf die Eigenschaften jedes Objekts kann über den Block AI Vision-Objekteigenschaft zugegriffen werden. Wird kein passendes Objekt gefunden, wird ein leerer Datensatz gemeldet.
mache [AIVision1 v] Schnappschuss von [SELECT_A_SIG v]
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
Unterschrift |
Filtert den Datensatz, sodass nur Daten der angegebenen Signatur enthalten sind. Verfügbare Signaturen sind:
|
Hinweis: Damit die Optionen für AprilTag-ID oder KI-Klassifizierung angezeigt werden, muss deren Erkennung im AI Vision Utility aktiviert sein.
Beispiel
wenn gestartet
[Drive forward if an AprilTag ID is detected.]
für immer
mache [AIVision1 v] Schnappschuss von [AprilTag IDs v]
wenn <[AIVIsion1 v] Objekt vorhanden?> dann
fahre [vorwärts v] für [10] [mm v] ▶
KI-Klassifizierungen#
Der KI-Vision-Sensor kann verschiedene Objekte anhand bestimmter KI-Klassifizierungen erkennen. Je nachdem, welches KI-Klassifizierungsmodell bei der Konfiguration des KI-Vision-Sensors im Gerätefenster ausgewählt wird, werden unterschiedliche Objekte erkannt. Folgende Modelle stehen derzeit zur Verfügung:
Klassenzimmergegenstände
Blauer Ball
GreenBall
RedBall
BlueRing
GreenRing
RedRing
BlueCube
GreenCube
RedCube
VEX V5 Robotik-Wettbewerb: Verschiebung
BlueBlock
RedBlock
VEX V5 Robotik-Wettbewerb – Hohe Einsätze
MobileGoal
RedRing
BlueRing
VEX V5 Robotics Competition Override
RedBluePin
Blaugelbe Pin
Rotgelbe Pin
Gelbe Nadel
Tasse
Farbsignaturen#
Eine Farbsignatur ist eine einzigartige Farbe, die der KI-Vision-Sensor erkennen kann. Mithilfe dieser Signaturen kann der Sensor Objekte anhand ihrer Farbe erkennen und verfolgen. Sobald eine Farbsignatur konfiguriert ist, kann der Sensor Objekte mit dieser spezifischen Farbe in seinem Sichtfeld identifizieren.
Farbsignaturen werden im Block take snapshot verwendet, um farbige Objekte in Echtzeit zu verarbeiten und zu erkennen. Es können bis zu 7 Farbsignaturen gleichzeitig konfiguriert werden.

Beispiel
wenn gestartet
[Display if any objects matching the RED_BOX signature is detected.]
für immer
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
lösche Zeile [1] auf Bildschirm
[Change the signature to any configured Color Signature.]
mache [AIVision1 v] Schnappschuss von [RED_BOX v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
drucke [Color detected!] auf Bildschirm ▶
Farbcodes#
Ein Farbcode ist ein strukturiertes Muster, das aus zwei bis vier Farbsignaturen in einer bestimmten Reihenfolge besteht. Mithilfe dieser Codes kann der KI-Vision-Sensor vordefinierte Farbmuster erkennen.
Farbcodes eignen sich besonders gut zur Identifizierung komplexer Objekte, zur Ausrichtung an Spielelementen oder zur Erstellung eindeutiger Markierungen für die autonome Navigation. Es können bis zu 8 Farbcodes gleichzeitig konfiguriert werden.

Beispiel
wenn gestartet
[Display if any objects matching the RED_BLUE code is detected.]
für immer
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
lösche Zeile [1] auf Bildschirm
[Change the signature to any configured Color Code.]
mache [AIVision1 v] Schnappschuss von [RED_BLUE v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
drucke [Code detected!] auf Bildschirm ▶
Einstellungen#
Set AI Vision Objektelement#
Der set AI Vision object item-Stackblock legt fest, welches Element im Datensatz verwendet werden soll.
setze [AIVision1 v] Objektelement auf (1)
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
Artikel |
Die Nummer des zu verwendenden Elements im Datensatz. |
Beispiel
wenn gestartet
[Display the largest detected AprilTag ID.]
für immer
mache [AIVision1 v] Schnappschuss von [AprilTag IDs v]
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
wenn <[AIVision1 v] Objekt vorhanden?> dann
setze [AIVision1 v] Objektelement auf ([AIVision1 v] Objektanzahl)
drucke ([AIVision1 v] Objekt [tagID v]) auf Bildschirm ▶
Werte#
Existiert ein AI Vision-Objekt?#
Der Boolesche Block AI Vision object exists gibt an, ob im Datensatz ein Objekt erkannt wurde.
Wahr – Der Datensatz enthält ein erkanntes Objekt.
Falsch – Der Datensatz enthält keine erkannten Objekte.
<[AIVision1 v] Objekt vorhanden?>
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
Beispiel
wenn gestartet
[Drive forward if an object is detected.]
für immer
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
fahre [vorwärts v] für [10] [mm v] ▶
Das AI Vision-Objekt ist#
Der AI Vision-Objekt ist ein Boolescher Block, der meldet, ob ein erkanntes Objekt einer bestimmten Klassifizierung entspricht.
Wahr – Das Element im Datensatz ist das spezifische Objekt.
Falsch – Das Element im Datensatz ist nicht das gesuchte Objekt.
<[AIVision1 v] Objekt ist [BlueBall v]?>
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
Objekt |
Welche KI-Klassifizierung soll das Element vergleichen? |
Beispiel
wenn gestartet
[Display if a Blue Cube is detected.]
für immer
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <[AIVision1 v] Objekt ist [BlueCube v]?> dann
drucke [Cube detected!] auf Bildschirm ▶
warte [0.5] Sekunden
Das AI Vision-Objekt ist AprilTag#
Der Boolesche Block AI Vision object is AprilTag gibt an, ob es sich bei dem erkannten Objekt um einen AprilTag handelt, der einer bestimmten ID entspricht.
Wahr – Das erkannte Objekt ist ein AprilTag mit der angegebenen ID.
Falsch – Das erkannte Objekt ist kein AprilTag mit der angegebenen ID.
<[AIVision1 v] Objekt ist AprilTag [0]?>
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
AprilTag ID |
Die ID-Nummer zum Vergleich mit dem erkannten AprilTag. |
Beispiel
wenn gestartet
[Report if AprilTag 3 is detected.]
für immer
Bildschirm löschen
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
mache [AIVision1 v] Schnappschuss von [AprilTag IDs v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <[AIVision1 v] Objekt ist AprilTag [3]?> dann
drucke [That is 3!] auf Bildschirm ▶
sonst
drucke [That isn't 3!] auf Bildschirm ▶
Ende
Ende
warte [0.1] Sekunden
AI Vision-Objekt ist AprilTag-ID#
Der AI Vision-Objekt ist AprilTag ID Boolescher Block meldet, ob eine erkannte AprilTag-ID mit einer bestimmten ID übereinstimmt.
Wahr – Die AprilTag-ID ist die Nummer.
Falsch – Die AprilTag-ID ist nicht die Nummer.
<[AIVision1 v] object is AprilTag ID [1] ?>
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
AprilTag-ID-Nummer |
Die Nummer, die mit der ermittelten AprilTag-ID-Nummer verglichen werden soll. |
Beispiel:
wenn gestartet
[Report if AprilTag ID 3 is detected.]
für immer
Bildschirm löschen
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
mache [AIVision1 v] Schnappschuss von [AprilTag IDs v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <[AIVision1 v] object is AprilTag ID [3] ?> dann
drucke [That is 3!] auf Bildschirm ▶
sonst
drucke [That isn't 3!] auf Bildschirm ▶
Ende
Ende
warte [0.1] Sekunden
Objektzählung in KI-Vision#
Der AI Vision Objektzählungsblock gibt die Anzahl der erkannten Objekte im Datensatz als ganze Zahl aus.
([AIVision1 v] Objektanzahl)
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
Beispiel
wenn gestartet
[Display the total amount of cubes, rings, and balls.]
für immer
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
drucke ([AIVision1 v] Objektanzahl) auf Bildschirm ▶
Ende
warte [0.5] Sekunden
Eigenschaften eines AI Vision-Objekts#
Es gibt neun Eigenschaften, die zu jedem Objekt (siehe unten) hinzugefügt werden, das nach der Verwendung des Blocks take snapshot gespeichert wird.
([AIVision1 v] Objekt [Breite v])
Alle Eigenschaftswerte außer tagID und score beschreiben Position und Größe des erkannten Objekts im Sichtfeld des KI-Vision-Sensors zum Zeitpunkt der Verwendung des Blocks take snapshot. Die Werte werden in Pixeln gemessen, basierend auf der Auflösung des Sensors von 320 × 240 Pixeln.
Parameter |
Beschreibung |
|---|---|
Gerät |
Welcher KI-Vision-Sensor verwendet werden soll, wird im Gerätefenster konfiguriert. |
Eigentum |
Welche Eigenschaft des erkannten Objekts soll verwendet werden? |
Breite#
Die width-Eigenschaft gibt die Breite des erkannten Objekts in Pixeln als ganze Zahl von 1 bis 320 an.
([AIVision1 v] Objekt [Breite v])
Beispiel
wenn gestartet
[Drive towards an object until its width is larger than 100 pixels.]
für immer
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <([AIVision1 v] Objekt [Breite v]) [math_less_than v] [100]> dann
fahre [vorwärts v]
sonst
Fahren stoppen
Ende
Höhe#
Die height-Eigenschaft gibt die Höhe des erkannten Objekts in Pixeln als ganze Zahl von 1 bis 240 an.
([AIVision1 v] Objekt [Höhe v])
Beispiel
wenn gestartet
[Drive towards an object until its height is larger than 100 pixels.]
für immer
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <([AIVision1 v] Objekt [Höhe v]) [math_less_than v] [100]> dann
fahre [vorwärts v]
sonst
Fahren stoppen
Ende
centerX#
Die centerX-Eigenschaft gibt die x-Koordinate des Mittelpunkts des erkannten Objekts in Pixeln als ganze Zahl von 0 bis 320 an.
([AIVision1 v] Objekt [centerX v])
Beispiel
wenn gestartet
[Turn slowly until an object is centered in front of the robot.]
setze Drehgeschwindigkeit auf [30] [% v]
drehe [rechts v]
für immer
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <[140] [math_less_than v] ([AIVision1 v] Objekt [centerX v]) [math_less_than v] [180]> dann
Fahren stoppen
ZentrumY#
Die centerY-Eigenschaft gibt die y-Koordinate des Mittelpunkts des erkannten Objekts in Pixeln als ganze Zahl von 0 bis 240 an.
([AIVision1 v] Objekt [centerY v])
Beispiel
wenn gestartet
[Drive towards an object until its center y-coordinate is more than 140 pixels.]
für immer
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <([AIVision1 v] Objekt [centerY v]) [math_less_than v] [140]> dann
fahre [vorwärts v]
sonst
Fahren stoppen
Ende
Winkel#
Die angle-Eigenschaft gibt die Ausrichtung des erkannten Farbcodes oder der AprilTag-ID als ganze Zahl in Grad von 0 bis 359 an.
([AIVision1 v] Objekt [Winkel v])
Beispiel
wenn gestartet
[Slide left or right depending on how the Color Code is rotated.]
für immer
mache [AIVision1 v] Schnappschuss von [RED_BLUE v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <[50] [math_less_than v] ([AIVision1 v] Objekt [Winkel v]) [math_less_than v] [100]> dann
fahre [rechts v]
sonst wenn <[270] [math_less_than v] ([AIVision1 v] Objekt [Winkel v]) [math_less_than v] [330]> dann
fahre [links v]
sonst
Fahren stoppen
Ende
sonst
Fahren stoppen
originX#
Die originX-Eigenschaft gibt die x-Koordinate der oberen linken Ecke des Begrenzungsrahmens des erkannten Objekts in Pixeln als ganze Zahl von 0 bis 320 an.
([AIVision1 v] Objekt [originX v])
Beispiel
wenn gestartet
[Display if an object is to the left or the right.]
für immer
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <([AIVision1 v] Objekt [originX v]) [math_less_than v] [160]> dann
drucke [To the left!] auf Bildschirm ▶
sonst
drucke [To the right!] auf Bildschirm ▶
Ende
warte [0.5] Sekunden
UrsprungY#
Die originY-Eigenschaft gibt die y-Koordinate der oberen linken Ecke des Begrenzungsrahmens des erkannten Objekts in Pixeln als ganze Zahl von 0 bis 240 an.
([AIVision1 v] Objekt [originY v])
Beispiel
wenn gestartet
[Display if an object is close or far from the robot.]
für immer
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
mache [AIVision1 v] Schnappschuss von [KI-Klassifikationen v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <([AIVision1 v] Objekt [originY v]) [math_less_than v] [80]> dann
drucke [Far!] auf Bildschirm ▶
sonst
drucke [Close!] auf Bildschirm ▶
Ende
warte [0.5] Sekunden
tagID#
Die tagID-Eigenschaft gibt die Identifikationsnummer der erkannten AprilTag-ID als ganze Zahl an.
([AIVision1 v] Objekt [tagID v])
Beispiel
wenn gestartet
[Drive forward when AprilTag ID 0 is detected.]
für immer
mache [AIVision1 v] Schnappschuss von [AprilTag IDs v]
wenn <[AIVision1 v] Objekt vorhanden?> dann
wenn <([AIVision1 v] Objekt [tagID v]) [math_equal v] [0]> dann
fahre [vorwärts v]
sonst
Fahren stoppen
Ende
warte [0.5] Sekunden
Punktzahl#
Die Score-Eigenschaft gibt an, wie sicher sich das Modell bei der erkannten KI-Klassifizierung ist, und zwar in Prozent von 70 % bis 100 %.
Ein niedrigerer Wert bedeutet, dass der Sensor weniger sicher ist, welches Objekt erkannt wurde, während ein höherer Wert bedeutet, dass der Sensor sicherer ist.
([AIVision1 v] Objekt [Bewertung v])