Simple Science

Scienza all'avanguardia spiegata semplicemente

# Informatica# Visione artificiale e riconoscimento di modelli

Framework semplificato per il riconoscimento delle gesture personalizzate

Crea facilmente sistemi di riconoscimento delle gesture personalizzate con pochi dati.

― 7 leggere min


Semplificare ilSemplificare ilRiconoscimento dei Gestipersonalizzati senza sforzo.Allena modelli di gesture
Indice

Il Riconoscimento dei gesti delle mani è una tecnologia che permette ai computer di capire e rispondere ai movimenti delle nostre mani. È fondamentale per rendere le interazioni con i dispositivi naturali e semplici. Per esempio, può essere usato nella realtà virtuale e aumentata, nelle videochiamate e persino nel controllo di dispositivi smart.

Tuttavia, la maggior parte dei sistemi riconosce solo un elenco predefinito di gesti. Questo può essere un problema perché le persone spesso vogliono usare nuovi gesti che non sono nella lista. La sfida nasce dalla varietà di forme e movimenti delle mani che le persone possono fare. Non è possibile includere ogni gesto possibile in un programma.

Framework Personalizzato per il Riconoscimento dei Gesti delle Mani

Per affrontare questo problema, abbiamo creato un framework facile da usare che consente a chiunque di personalizzare il proprio sistema di riconoscimento dei gesti delle mani. Gli utenti possono scattare alcune foto dei gesti desiderati usando una webcam. Queste immagini permettono al sistema di apprendere e riconoscere nuovi gesti che non facevano parte del programma originale.

Il nostro framework include un modello che sa già come elaborare le immagini delle mani. Questo modello può essere adattato per adattarsi ai gesti specifici dell'utente. Per chi ha poca conoscenza di machine learning, offriamo un modo semplice per addestrare e usare il modello di riconoscimento dei gesti senza bisogno di scrivere molto codice.

Inoltre, offriamo un'opzione senza codice per chi non ha esperienza con il machine learning. Questo rende ancora più semplice creare e testare le capacità di riconoscimento dei gesti.

Una volta che il modello è addestrato, può funzionare su dispositivi in tempo reale. Gli utenti possono facilmente implementare la funzione necessaria nel nostro API open-source per l'inferenza del modello chiamato MediaPipe Tasks. L'intero setup può essere completato in pochi minuti.

Come Funziona il Sistema

L'obiettivo principale del nostro sistema è offrire un modo semplice per gli utenti di creare il proprio sistema di riconoscimento dei gesti usando un numero minimo di immagini. In particolare, gli utenti hanno bisogno solo di un piccolo numero di immagini per ogni gesto. Questo lo rende accessibile a tutti, anche a quelli senza una formazione nel machine learning.

Il nostro sistema di riconoscimento dei gesti funziona estraendo i punti di riferimento delle mani. Questi punti sono specifici della mano, che vengono poi trasformati in una rappresentazione numerica (embedding vector) che il sistema può usare per riconoscere i gesti.

Il riconoscimento dei gesti delle mani è fondamentale per un'interazione fluida e intuitiva tra esseri umani e computer. Con il miglioramento della tecnologia, identificare e rispondere con precisione ai gesti delle mani contribuirà a creare esperienze immersive senza interruzioni.

Addestramento con Dati Limitati

Una caratteristica chiave del nostro approccio è che consente agli utenti di addestrare modelli di riconoscimento dei gesti delle mani efficaci con dati limitati. Usiamo un modello pre-addestrato che è già stato addestrato su una considerevole quantità di dati video, insegnandogli vari movimenti e forme delle mani. Gli utenti possono quindi affinare questo modello per le loro esigenze specifiche di gesto.

Facendo così, gli utenti possono addestrare un sistema di riconoscimento efficace usando anche solo poche immagini per ogni gesto. Inoltre, il modello pre-addestrato conserva conoscenze su molte forme e movimenti delle mani, rendendolo un ottimo punto di partenza per riconoscere nuovi gesti.

Il Processo di Riconoscimento dei Gesti

Il processo del nostro riconoscimento dei gesti delle mani è semplice. Ecco come funziona:

  1. Una fotocamera RGB cattura un'immagine della mano.
  2. Il sistema estrae punti (landmarks) sulla mano e determina quale mano è visualizzata (sinistra o destra).
  3. Questi punti di riferimento vengono poi inviati al modello di riconoscimento dei gesti personalizzato per la valutazione.
  4. Il modello elabora queste informazioni e riconosce il gesto in tempo reale.

Il nostro sistema può funzionare a oltre 30 fotogrammi al secondo sulla maggior parte dei dispositivi mobili, dimostrando quanto possa essere efficace ed efficiente.

Utilizzo di Modelli Esistenti per Gesti Personalizzati

Costruiamo su ricerche esistenti nel riconoscimento dei gesti delle mani in tempo reale per creare la nostra soluzione personalizzata. Il nostro metodo inizia con un modello che cattura i punti di riferimento delle mani, fondamentale per riconoscere i gesti con precisione.

Per addestrare il nostro modello, abbiamo usato una raccolta di video che mostrano persone che fanno spelling con le dita in lingua dei segni. Ogni video si concentra su una mano, catturando le caratteristiche più importanti che aiutano il sistema ad apprendere.

Il modello utilizza queste caratteristiche per costruire una rappresentazione delle forme e dei pattern di movimento delle mani. Di conseguenza, può riconoscere vari gesti con precisione, anche con una piccola quantità di dati di addestramento.

Migliorare il Riconoscimento dei Punti di Riferimento delle Mani

Una sfida nel riconoscimento dei gesti delle mani si verifica quando due mani sono vicine o si sovrappongono. Se il modello di punti di riferimento delle mani non riesce a rilevare con precisione i punti di riferimento in queste situazioni, influisce negativamente sul riconoscimento dei gesti.

Per migliorare l'accuratezza in tali casi, abbiamo introdotto un metodo che fornisce indizi su quale mano è quale (sinistra o destra). Questo aiuta il modello a concentrarsi sulla mano giusta e migliora significativamente il riconoscimento dei punti di riferimento.

Il nuovo modello ha mostrato un'accuratezza migliorata, soprattutto in situazioni dove le mani sono vicine o sovrapposte. Questo progresso consente un riconoscimento dei gesti più affidabile in diversi contesti.

Pipeline di Addestramento e Inferenza

Abbiamo sviluppato una pipeline di addestramento user-friendly chiamata MediaPipe Model Maker. Questo strumento consente agli utenti di creare senza sforzo nuovi modelli di riconoscimento dei gesti delle mani. Gli utenti devono fornire un insieme di immagini etichettate con i nomi appropriati dei gesti.

Durante l'addestramento, le immagini di input vengono elaborate per generare punti di riferimento delle mani in tempo reale. La struttura del modello di riconoscimento dei gesti personalizzato può essere regolata, consentendo agli utenti di modificare impostazioni come la forma dei layer, il tasso di apprendimento e la dimensione del batch.

Poiché il nostro approccio richiede dati di addestramento minimi, gli utenti possono addestrare modelli rapidamente, spesso in pochi minuti. Una volta completato l'addestramento, il modello personalizzato viene convertito in un formato utilizzabile per l'inferenza in tempo reale.

La pipeline di inferenza elabora le immagini delle mani grezze una alla volta. Il componente di rilevamento dei punti di riferimento delle mani converte ogni immagine in vettori di punti di riferimento. Questi vettori vengono poi mappati ai vettori di embedding dei gesti e infine controllati contro gesti noti per produrre risultati.

Prestazioni in tempo reale

Il nostro sistema è progettato per prestazioni in tempo reale su vari dispositivi. L'intera pipeline può elaborare le immagini rapidamente, rendendola efficiente ed efficace.

Con l'API MediaPipe Tasks, gli utenti possono facilmente integrare il loro modello di riconoscimento dei gesti personalizzato in varie applicazioni. Questa struttura modulare consente flessibilità nel sostituire qualsiasi parte del processo, se necessario.

Sia le pipeline di addestramento che quelle di inferenza sono state rese pubblicamente disponibili, incoraggiando un uso e uno sviluppo più ampi.

Conclusione

La ricerca mostra un modo semplice ed efficace per addestrare modelli personalizzati di riconoscimento dei gesti delle mani utilizzando dati di addestramento minimi. Affinando i modelli preesistenti, il nostro framework consente a persone con poca o nessuna esperienza di machine learning di creare sistemi di riconoscimento dei gesti funzionali.

I miglioramenti apportati al riconoscimento dei punti di riferimento delle mani aumentano l'efficacia dell'intero sistema, rendendolo pratico per applicazioni nel mondo reale. I risultati evidenziano il potenziale del nostro sistema personalizzato di riconoscimento dei gesti delle mani per migliorare le interazioni uomo-computer in vari settori, dalla realtà virtuale ai dispositivi smart per la casa.

Fonte originale

Titolo: On-device Real-time Custom Hand Gesture Recognition

Estratto: Most existing hand gesture recognition (HGR) systems are limited to a predefined set of gestures. However, users and developers often want to recognize new, unseen gestures. This is challenging due to the vast diversity of all plausible hand shapes, e.g. it is impossible for developers to include all hand gestures in a predefined list. In this paper, we present a user-friendly framework that lets users easily customize and deploy their own gesture recognition pipeline. Our framework provides a pre-trained single-hand embedding model that can be fine-tuned for custom gesture recognition. Users can perform gestures in front of a webcam to collect a small amount of images per gesture. We also offer a low-code solution to train and deploy the custom gesture recognition model. This makes it easy for users with limited ML expertise to use our framework. We further provide a no-code web front-end for users without any ML expertise. This makes it even easier to build and test the end-to-end pipeline. The resulting custom HGR is then ready to be run on-device for real-time scenarios. This can be done by calling a simple function in our open-sourced model inference API, MediaPipe Tasks. This entire process only takes a few minutes.

Autori: Esha Uboweja, David Tian, Qifei Wang, Yi-Chun Kuo, Joe Zou, Lu Wang, George Sung, Matthias Grundmann

Ultimo aggiornamento: 2023-09-19 00:00:00

Lingua: English

URL di origine: https://arxiv.org/abs/2309.10858

Fonte PDF: https://arxiv.org/pdf/2309.10858

Licenza: https://creativecommons.org/licenses/by/4.0/

Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.

Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.

Altro dagli autori

Articoli simili