Skip to content

Rilevamento delle mani ​

Dichiarare l'istanza ​

Se aggiungi un blocco di Rilevamento delle mani (HandDetection) all'area di lavoro, nel codice Python viene inserita automaticamente la dichiarazione di istanza seguente:

python
hand_detection = HandDetection(0)
# se ci sono più istanze
hand_detection_1 = HandDetection(1)

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
indexOpzione di elencoNumero dell'istanza (parte da 0)intero maggiore o uguale a 00

Scegliere la fotocamera ​

Imposta la fotocamera per il rilevamento del volto.

device

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
unitOpzione di elencoNome della fotocameraetichette delle fotocamere del sistema-

Python ​

python
hand_detection = HandDetection(0)

hand_detection.device('')

Caricare il modello ​

Carica il modello delle mani addestrato. Questa operazione è indispensabile per poter usare le funzioni del modulo «Rilevamento delle mani».

load_model

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
waitCasella di controlloSe aspettare la fine del caricamentoTRUE / FALSETRUE

Python ​

python
hand_detection = HandDetection(0)

hand_detection.load_model(wait=True)

Impostare il numero massimo di mani ​

Decide se, cercando le mani, il riferimento è una mano sola o entrambe le mani.

max_hands

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
unitOpzione di elencoNumero di maniuna mano(one), due mani(both)-

Python ​

python
hand_detection = HandDetection(0)

hand_detection.max_hands('one')
hand_detection.max_hands('both')

Rilevare una volta ​

Cerca la mano presente nell'immagine attuale e la mostra una volta sola.

detect_once

Parametri ​

(nessuno)

Python ​

python
hand_detection = HandDetection(0)

hand_detection.detect_once()

Avviare / arrestare il rilevamento continuo ​

Segue in continuo la mano presente nell'immagine attuale e la mostra sullo schermo.

detect_continuous

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
unitOpzione di elencoAzioneavvia(start), arresta(stop)-

Python ​

python
hand_detection = HandDetection(0)

# unit = "start"
hand_detection.detect_continuous()
# unit = "stop"
hand_detection.stop()

Mostrare il risultato del rilevamento ​

Decide se mostrare o no il risultato del rilevamento delle mani sull'immagine della fotocamera.

display

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
onOpzione di elencoVisualizzazione ON / OFFmostra(on=True), nascondi(off=False)TRUE

Python ​

python
hand_detection = HandDetection(0)

hand_detection.display(True)
hand_detection.display(False)

Coordinate di una parte della mano ​

Restituisce le informazioni sulla posizione del palmo o del polso della mano indicata.

hand_data

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
sideOpzione di elencoLato della manosinistra(left), destra(right)-
unitOpzione di elencoParte della manopalmo(palm), polso(wrist)-
posOpzione di elencoTipo di coordinata / dimensionex, y-

Python ​

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')

Coordinate dell'articolazione di un dito ​

Restituisce le coordinate dell'articolazione del dito indicato.

joint_data

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
sideOpzione di elencoLato della manosinistra(left), destra(right)-
unitOpzione di elencoDitopollice(thumb), indice(index), medio(middle), anulare(ring), mignolo(pinky)-
jointOpzione di elencoPosizione dell'articolazioneprima articolazione(first), seconda articolazione(second), terza articolazione(third), punta(last)-
posOpzione di elencoCoordinatax, y-

Python ​

python
hand_detection = HandDetection(0)

hand_detection.finger('left', 'index', 'first', 'x')
hand_detection.finger('right', 'thumb', 'last', 'y')

Informazioni sul rettangolo della mano ​

Restituisce la posizione e le dimensioni del rettangolo dell'area della mano indicata.

hand_square

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
sideOpzione di elencoLato della manosinistra(left), destra(right)-
unitOpzione di elencoParte della manomano(hand), palmo(palm)-
posOpzione di elencoInformazione sul rettangoloposizione x min(min_x), posizione x max(max_x), posizione y min(min_y), posizione y max(max_y), larghezza(width), altezza(height), area(area)-

Python ​

python
hand_detection = HandDetection(0)

hand_detection.hand('left', 'hand', 'min_x')
hand_detection.hand('right', 'palm', 'width')

Distanza tra mano e mano ​

Restituisce la distanza tra due parti della mano.

hand_to_hand_distance

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
unit1Ingresso (testo)Prima parte della manomano: 'side_unit' (p. es. 'left_palm'). side=left/right, unit=palm/wrist/hand-
unit2Ingresso (testo)Seconda parte della manomano: 'side_unit' (p. es. 'right_palm'). side=left/right, unit=palm/wrist/hand-
typeOpzione di elencoTipo di distanzadistanza(omesso o None), distanza orizzontale(horizontal), distanza verticale(vertical)None

Python ​

python
hand_detection = HandDetection(0)

# mano ↔ mano / distanza
hand_detection.get_distance('left_palm', 'right_palm')

Distanza tra mano e dito ​

Restituisce la distanza tra una parte della mano e l'articolazione di un dito.

hand_to_joint_distance

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
unit1Ingresso (testo)Prima partemano: 'side_unit' (p. es. 'left_palm').side=left/right, unit=palm/wrist/hand-
unit2Ingresso (testo)Seconda partedito: 'side_unit_joint' (p. es. 'right_index_first'). unit=thumb/index/middle/ring/pinky, joint=first/second/third/last-
typeOpzione di elencoTipo di distanzadistanza(omesso o None), distanza orizzontale(horizontal), distanza verticale(vertical)None

Python ​

python
hand_detection = HandDetection(0)

# mano ↔ articolazione del dito / distanza orizzontale
hand_detection.get_distance('left_palm', 'right_index_first')

Distanza tra dito e dito ​

Restituisce la distanza tra le articolazioni di due dita.

joint_to_joint_distance

Parametri ​

NomeTipoDescrizioneIntervallo / TipoValore predefinito
unit1Ingresso (testo)Prima partedito: 'side_unit_joint' (p. es. 'left_thumb_last'). unit=thumb/index/middle/ring/pinky, joint=first/second/third/last-
unit2Ingresso (testo)Seconda partedito: 'side_unit_joint' (p. es. 'right_index_first'). unit=thumb/index/middle/ring/pinky, joint=first/second/third/last-
typeOpzione di elencoTipo di distanzadistanza(omesso o None), distanza orizzontale(horizontal), distanza verticale(vertical)None

Python ​

python
hand_detection = HandDetection(0)

# articolazione del dito ↔ articolazione del dito / distanza verticale
hand_detection.get_distance('left_thumb_last', 'right_index_first', 'vertical')

Stato del modello ​

Restituisce lo stato di caricamento del modello della mano.
Restituisce 0 se non è ancora stato caricato, 1 se il caricamento è in corso e 2 se il caricamento è finito.

model_state

Parametri ​

(nessuno)

Python ​

python
hand_detection = HandDetection(0)

hand_detection.model_state()

Se la mano è rilevata ​

Se la mano è stata trovata

detected

Parametri ​

(nessuno)

Python ​

python
hand_detection = HandDetection(0)

hand_detection.detected()