Handerkennung
Instanz deklarieren
Wenn du einen Handerkennung(HandDetection)-Block zum Arbeitsbereich hinzufügst, wird im Python-Code automatisch die folgende Instanzdeklaration eingefügt:
hand_detection = HandDetection(0)
# wenn es mehrere Instanzen gibt
hand_detection_1 = HandDetection(1)Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| index | Dropdown-Option | Instanznummer (beginnt bei 0) | ganze Zahl ≥ 0 | 0 |
Kamera festlegen
Legt die Kamera für die Handerkennung fest.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| unit | Dropdown-Option | Name des Kameragerätes | Kamerabezeichnung des Systems | - |
Python
hand_detection = HandDetection(0)
hand_detection.device('')Handmodell laden
Lädt das trainierte Handmodell. Dieser Schritt ist zwingend nötig, um die Funktionen des Moduls „Handerkennung" zu verwenden.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| wait | Kontrollkästchen | Auf Abschluss des Ladens warten | TRUE / FALSE | TRUE |
Python
hand_detection = HandDetection(0)
hand_detection.load_model(wait=True)Ziel setzen
Legt fest, ob bei der Handerkennung eine Hand oder beide Hände als Grundlage dienen.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| unit | Dropdown-Option | Anzahl der Hände | eine Hand(one), beide Hände(both) | - |
Python
hand_detection = HandDetection(0)
hand_detection.max_hands('one')
hand_detection.max_hands('both')Hand einmal erkennen
Findet die Hand im aktuellen Bild und markiert sie genau einmal.

Parameter
(keine)
Python
hand_detection = HandDetection(0)
hand_detection.detect_once()Kontinuierliche Handerkennung starten / stoppen
Verfolgt die Hand im aktuellen Bild fortlaufend und markiert sie auf dem Bildschirm.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| unit | Dropdown-Option | Aktion | starten(start), stoppen(stop) | - |
Python
hand_detection = HandDetection(0)
# unit = "start"
hand_detection.detect_continuous()
# unit = "stop"
hand_detection.stop()Ergebnis anzeigen
Legt fest, ob das Ergebnis der Handerkennung im Kamerabild angezeigt wird oder nicht.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| on | Dropdown-Option | Anzeige ON / OFF | anzeigen(on=True), ausblenden(off=False) | TRUE |
Python
hand_detection = HandDetection(0)
hand_detection.display(True)
hand_detection.display(False)Position von Handpartien
Gibt die Position von Handfläche / Handgelenk der angegebenen Hand zurück.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| side | Dropdown-Option | Seite der Hand | links(left), rechts(right) | - |
| unit | Dropdown-Option | Handpartie | Handfläche(palm), Handgelenk(wrist) | - |
| pos | Dropdown-Option | Art der Koordinate / Größe | x, y | - |
Python
hand_detection = HandDetection(0)
hand_detection.hand('left', 'palm', 'x')
hand_detection.hand('right', 'wrist', 'y')
hand_detection.hand('left', 'hand', 'min_x')
hand_detection.hand('right', 'palm', 'width')Position von Fingergelenken
Gibt die Koordinaten der Gelenke des angegebenen Fingers zurück.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| side | Dropdown-Option | Seite der Hand | links(left), rechts(right) | - |
| unit | Dropdown-Option | Finger | Daumen(thumb), Zeigefinger(index), Mittelfinger(middle), Ringfinger(ring), kleiner Finger(pinky) | - |
| joint | Dropdown-Option | Lage des Gelenks | erstes Gelenk(first), zweites Gelenk(second), drittes Gelenk(third), Fingerspitze(last) | - |
| pos | Dropdown-Option | Koordinate | x, y | - |
Python
hand_detection = HandDetection(0)
hand_detection.finger('left', 'index', 'first', 'x')
hand_detection.finger('right', 'thumb', 'last', 'y')Handrechteck
Gibt Position und Größe des Rechtecks um den angegebenen Handbereich zurück.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| side | Dropdown-Option | Seite der Hand | links(left), rechts(right) | - |
| unit | Dropdown-Option | Handpartie | Hand(hand), Handfläche(palm) | - |
| pos | Dropdown-Option | Angabe zum Rechteck | min. x-Position(min_x), max. x-Position(max_x), min. y-Position(min_y), max. y-Position(max_y), Breite(width), Höhe(height), Fläche(area) | - |
Python
hand_detection = HandDetection(0)
hand_detection.hand('left', 'hand', 'min_x')
hand_detection.hand('right', 'palm', 'width')Abstand zwischen Hand und Hand
Gibt den Abstand zwischen zwei Handpartien zurück.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| unit1 | Eingabe (Zeichenkette) | erste Handpartie | Hand: 'side_unit' (z. B. 'left_palm'). side=left/right, unit=palm/wrist/hand | - |
| unit2 | Eingabe (Zeichenkette) | zweite Handpartie | Hand: 'side_unit' (z. B. 'right_palm'). side=left/right, unit=palm/wrist/hand | - |
| type | Dropdown-Option | Art des Abstands | Abstand (weggelassen oder None), horizontaler Abstand(horizontal), vertikaler Abstand(vertical) | None |
Python
hand_detection = HandDetection(0)
# Hand ↔ Hand / Abstand
hand_detection.get_distance('left_palm', 'right_palm')Abstand zwischen Hand und Finger
Gibt den Abstand zwischen einer Handpartie und einem Fingergelenk zurück.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| unit1 | Eingabe (Zeichenkette) | erste Partie | Hand: 'side_unit' (z. B. 'left_palm'). side=left/right, unit=palm/wrist/hand | - |
| unit2 | Eingabe (Zeichenkette) | zweite Partie | Finger: 'side_unit_joint' (z. B. 'right_index_first'). unit=thumb/index/middle/ring/pinky, joint=first/second/third/last | - |
| type | Dropdown-Option | Art des Abstands | Abstand (weggelassen oder None), horizontaler Abstand(horizontal), vertikaler Abstand(vertical) | None |
Python
hand_detection = HandDetection(0)
# Hand ↔ Fingergelenk / horizontaler Abstand
hand_detection.get_distance('left_palm', 'right_index_first')Abstand zwischen Finger und Finger
Gibt den Abstand zwischen zwei Fingergelenken zurück.

Parameter
| Name | Art | Beschreibung | Bereich / Typ | Standardwert |
|---|---|---|---|---|
| unit1 | Eingabe (Zeichenkette) | erste Partie | Finger: 'side_unit_joint' (z. B. 'left_thumb_last'). unit=thumb/index/middle/ring/pinky, joint=first/second/third/last | - |
| unit2 | Eingabe (Zeichenkette) | zweite Partie | Finger: 'side_unit_joint' (z. B. 'right_index_first'). unit=thumb/index/middle/ring/pinky, joint=first/second/third/last | - |
| type | Dropdown-Option | Art des Abstands | Abstand (weggelassen oder None), horizontaler Abstand(horizontal), vertikaler Abstand(vertical) | None |
Python
hand_detection = HandDetection(0)
# Fingergelenk ↔ Fingergelenk / vertikaler Abstand
hand_detection.get_distance('left_thumb_last', 'right_index_first', 'vertical')Ladezustand des Handmodells
Gibt den Ladezustand des Handmodells zurück.
Ist es noch nicht geladen, wird 0 zurückgegeben, während des Ladens 1 und nach dem Laden 2.

Parameter
(keine)
Python
hand_detection = HandDetection(0)
hand_detection.model_state()Hand erkannt?
Ob eine Hand gefunden wurde

Parameter
(keine)
Python
hand_detection = HandDetection(0)
hand_detection.detected()