Filmora
Filmora - App di editing video AI
App di editing video potente e semplice
Scarica

Filmora Video Editor

Il miglior software di editing video e audio
  • Strumenti avanzati di regolazione del colore per aiutarti a realizzare video creativi.
  • Oltre mille effetti straordinari progettati per bellezza, giocatore, viaggiatore, ecc.
  • Premi per le app di Microsoft Store 2022 & Leader nell'editing video di G2 Crowd Report Primavera 2022

La guida completa al hand tracking e alle sue tipologie

Aggiornato il 30/07/2024• Soluzioni comprovate

Nell'era dei progressi, l'Hand Tracking è una tecnologia affascinante con una vasta gamma di applicazioni sia nella realtà virtuale che in quella aumentata.

Hand Tracking è un processo attraverso il quale un computer può analizzare e interpretare il movimento delle mani di una persona. Ciò può essere fatto utilizzando vari dispositivi, come i guanti intelligenti, spesso noti come guanti di dati.

In questo articolo parleremo della tecnologia Hand Tracking, delle sue varie applicazioni e di come crearla utilizzando Python, OpenCV e Media Pipe.

In questo articolo
  1. Che cos'è il Hand Tracking? Dove si applica?
    1. Tracking con l'interfaccia
    2. Tracking senza interfaccia
    1. Che cos'è OpenCV
    2. Che cos'è il Media Pipe
    3. Guida a tappe
  2. Utilizzate Filmora per dimostrare la vostra abilità di Hand Tracking.

Parte 1. Che cos'è il Hand Tracking? Dove si applica?

L'Hand Tracking si riferisce al processo di tracciamento della posizione e del movimento delle mani dell'utente nella realtà virtuale. In genere si utilizza una combinazione di sensori, tra cui telecamere, sensori a infrarossi o sensori a ultrasuoni.

Grazie al tracking delle mani dell'utente, i sistemi VR possono offrire esperienze più coinvolgenti e interattive. Ad esempio, il Hand Tracking può essere utilizzato per consentire agli utenti di interagire con gli oggetti virtuali, oltre che per fornire input per i gesti e il linguaggio del corpo.

Oculus Quest 2 è una cuffia per la realtà virtuale che consente di immergersi in mondi virtuali. Una delle caratteristiche più interessanti di Quest 2 è l'Hand Tracking, che consente di interagire con il mondo virtuale circostante utilizzando le mani.

Grazie al Hand Tracking, è possibile interagire con il mondo virtuale in modo più naturale e intuitivo. È possibile utilizzare le mani per prendere oggetti, disegnare e persino digitare su una tastiera virtuale. Inoltre, apre nuove possibilità di gioco, consentendo di giocare in modi nuovi e innovativi.

tecnologia di hand tracking

Parte 2. Tipi di hand tracking

Esistono due tipi principali di Hand Tracking: con interfaccia e senza interfaccia:

Tracking con l'interfaccia

Con l'interfaccia Hand Tracking, è necessario utilizzare un dispositivo come un guanto o un controller per interagire con il mondo virtuale. Questo può essere utilizzato in applicazioni VR o AR. È ulteriormente suddiviso in due sistemi:

1. Guanti per la cattura inerziale del movimento

I guanti per la cattura inerziale del movimento utilizzano sensori Unità di misura inerziale o IMU con sensori integrati per tracciare il movimento delle mani. Questi sensori includono giroscopi, accelerometri e talvolta magnetometri per misurare rispettivamente la velocità angolare, rilevare la forza e l'accelerazione gravitazionale e misurare il campo magnetico terrestre.

Questi guanti possono essere utilizzati per diversi scopi, come i giochi, la realtà virtuale e la cattura del movimento per film e videogiochi. I guanti inerziali per la cattura del movimento stanno diventando sempre più popolari perché offrono un'esperienza più coinvolgente rispetto ai controller tradizionali.

2. Sistemi di acquisizione ottica del movimento

La cattura ottica del movimento è un processo che utilizza telecamere e sensori riflettenti per tracciare il movimento nello spazio tridimensionale. Questi sistemi sono spesso utilizzati nei film e nei videogiochi per creare animazioni realistiche.

I sistemi di acquisizione ottica del movimento emettono luce infrarossa dalla telecamera. I marcatori riflettono la luce, che viene poi catturata dalle telecamere. Il movimento dei marcatori viene quindi utilizzato per creare un modello tridimensionale dell'oggetto.

Più telecamere vengono utilizzate, più accurati sono i risultati. Pur essendo molto precisa, questa tecnologia può essere limitata da fattori quali la posizione e il movimento del corpo.

Tracking senza interfaccia

Conosciuto anche come Markerless Hand Tracking, questo tipo di Hand Tracking consente agli utenti di tracciare i movimenti della mano senza bisogno di marcatori esterni o guanti di dati, il che significa maggiore interazione spontanea e libertà di movimento. Questo potrebbe avere un impatto enorme su tutto, dai giochi alla realtà virtuale, all'interazione uomo-macchina.

Al momento, lo Hand Tracking senza marcatori è ancora in fase iniziale e presenta alcune limitazioni. Tuttavia, con il continuo sviluppo di questa tecnologia, è probabile che in futuro ne vedremo sempre più applicazioni.

Parte 3. Utilizzo di Python, OpenCV e MediaPipe per creare un hand tracking

Sopra abbiamo appreso che cos'è l'Hand Tracking e i suoi due tipi. Vediamo ora come creare un tracciamento della mano con due librerie Python: OpenCV e MediaPipe.

Prima di approfondire l'argomento, impariamo a conoscere rapidamente Python. Python è un linguaggio versatile utilizzato per un'ampia gamma di attività, tra cui l'elaborazione delle immagini e la computer vision. Utilizzeremo Python e due librerie Python: OpenCV e MediaPipe, per creare un modulo Hand Tracking.

Che cos'è OpenCV

Per una conoscenza più approfondita di OpenCV, leggete il nostro articolo: Opencv Tracking, una recensione competitiva.(同期交付文章,请插入相关内链~)

Che cos'è il Media Pipe

Media Pipe è un framework open-source di Google che fornisce una serie di strumenti per lavorare con i dati multimediali o per l'elaborazione dei media. Include moduli per la gestione di audio, video e immagini. Media Pipe supporta anche diversi codec e formati di file.

La creazione di un programma di Hand Tracking con MediaPipe avviene in due fasi:

  1. Rilevamento palmare: Nella prima fase, MediaPipe deve lavorare con l'intera immagine di input, fornendo un'immagine ritagliata della mano.
  2. Identificazione dei punti di riferimento della mano: Nella seconda fase, il framework lavora con l'immagine ritagliata della mano per trovare 21 punti di riferimento della mano.
20 punti di riferimento della mano per l'identificazione - hand tracking

Guida a tappe

Prima di iniziare a creare Hand Tracking, è necessario installare l'applicazione Pycharm IDE sul PC. Una volta installato, lanciatelo e seguite passo passo le istruzioni:

Installare OpenCV e MediaPipe

Fare clic sull'opzione "New Project" e selezionare "Create" nella finestra successiva. Aprite il Terminal per installare le due librerie.

installare e lanciare l'applicazione pycharm sul pc

Copiare e incollare il seguente comando nel Terminal per installare OpenCV:

copiare e incollare il comando per installare opencv

Ora, per installare MediaPipe, copiate e incollate il seguente comando:

installare mediapipe

Codifica

Un file main.py per la scrittura del codice verrà creato automaticamente nell'applicazione Pycharm una volta creato un nuovo progetto.

Passo 1 Importare le librerie

Per prima cosa, importare OpenCV e MediaPipe per utilizzare le loro dipendenze. Una volta fatto, creare un oggetto Cap per la cattura del video e altri tre oggetti: mpHands, mani, e mpDraw per manipolare l'input usando MediaPipe.

importare le librerie
Passo 2 Acquisizione ed elaborazione di un'immagine in ingresso

Copiare e incollare la seguente riga di codice per prendere l'immagine in ingresso dalla webcam del PC.

acquisizione ed elaborazione di un'immagine in ingresso

L'immagine viene convertita in RGB da BGR perché MediaPipe lavora con questo tipo di immagine. L'immagine RBG viene quindi elaborata per tracciare la mano.

Passo 3 Lavorare con entrambe le mani

Ora, create una classe per il tracciamento e, affinché la funzione hands funzioni, inserite i parametri di base. Quindi, fornire tutta l'inizializzazione necessaria. Questo include i parametri di base e le inizializzazioni di MediaPipe. Mettere "self" prima di ogni oggetto per fornire accesso ai suoi attributi e metodi.

lavorare con entrambe le mani
Passo 4Creazione di un metodo per il tracking Hands nell'immagine di input
metodo di creazione per il tracciamento delle mani

Successivamente, utilizzare il codice di cui sopra per creare un metodo da utilizzare in modo specifico per identificare le mani nell'immagine di input. Next, use the above code to create a method to be used specifically to identify the hands in the input image.

Passo 5 Individuare le coordinate 'X' e 'Y' di ciascun punto della mano

Per creare un metodo per trovare le coordinate x e y dei punti della mano z21 e un elenco da utilizzare per mantenere i valori di questi punti, scrivere il codice seguente:

individuare la coordinata x e y del punto della mano

In questo metodo, utilizzare il codice usato per trovare l'ID e il punto di riferimento della mano di ogni punto della mano. Inoltre, inserire il codice che si utilizzerà per cerchiare il punto della mano.

Passo 6 Metodo principale

Ora, scrivete il seguente codice fittizio per mostrare ciò che il modulo può fare, cioè identificare e tracciare le mani. Il codice appare nel metodo main e utilizza l'oggetto lmlist e l'immagine.

Passo 7 Esecuzione del metodo principale

Per eseguire il metodo main, copiare e incollare le seguenti righe di codice:

esecuzione del metodo principale
Passo 8 Risultato

Il modulo e l'output del programma saranno gli stessi e, una volta completati senza errori, si otterrà l'output, cioè il modulo traccerà e identificherà i movimenti della mano senza problemi.

Parte 4. Utilizzate Filmora per dimostrare la vostra abilità di Hand Tracking.

Dopo le spiegazioni di cui sopra e le nozioni apprese, ci auguriamo che abbiate acquisito la conoscenza del modulo di hand tracking e che siate pronti ad agire. In questa sede, vi consiglieremo anche un editor video professionale e di facile utilizzo per mostrare la scena del movimento della mano. – Filmora!

Filmora è disponibile per tutti i tipi di utenti. È possibile utilizzarlo facilmente per modificare i video, aggiungere effetti e inserire naturalmente la parte del movimento della mano.

Per saperne di più su Filmora:

Puoi scaricare e provare Filmora Video Editor tramite i link seguenti:


Provalo Gratis
Per win11 / Win10 / 8.1 / 8/ 7 (64 bit)
Scopri di Più
Homepage di Filmora Windows
Garanzia di Download Sicuro, zero malware
endorse
Provalo Gratis
Per macOS V 10.14 o versioni successive
Scopri di Più
Homepage di Filmora macOS
Garanzia di Download Sicuro, zero malware
endorse

(vai a scaricare Filmora mobile sul tuo dispositivo mobile tramite Appstore e GooglePlay).


Conclusione

In questo articolo abbiamo analizzato il Hand Tracking e i suoi due tipi, ovvero il tracking con interfaccia e il tracking senza interfaccia. Inoltre, abbiamo fornito una guida passo-passo sull'uso di Python, OpenCV e MediaPipe per creare un modulo di Hand Tracking.

Speriamo che questa guida sia stata utile per risolvere i vostri dubbi e che possiate creare un modulo Hand Tracking in poco tempo. E provate Filmora per creare un video magico con le vostre scene di Hand Tracking!

Mario Difrancesco
Mario Difrancesco is a writer and a lover of all things video.