Gesture recognition

Da Wikipedia, l'enciclopedia libera.
Jump to navigation Jump to search

Il riconoscimento dei gesti (Gesture recognition) è un ambito dell'informatica e della tecnologia del linguaggio che ha l'obiettivo di interpretare i gesti umani attraverso algoritmi matematici. I gesti possono essere originati da qualsiasi posizione o movimento del corpo, ma comunemente provengono dal volto o dalla mano. Attualmente la ricerca è focalizzata sul riconoscimento delle emozioni attraverso l'analisi del volto e il riconoscimento dei gesti della mano, utilizzando telecamere e algoritmi di visione artificiale per interpretare il linguaggio dei segni. Tuttavia, altri temi riguardanti le tecniche di riconoscimento dei gesti sono l'identificazione e il riconoscimento della postura, dell'andatura, della prossemica e dei comportamenti umani.

Il riconoscimento dei gesti può essere visto come un mezzo utilizzato dai computer per cominciare a capire il linguaggio del corpo umano, creando così un "collegamento" più forte tra le macchine e gli esseri umani rispetto alle primitive interfacce utente testuali o anche alle GUI (graphical user interface), che limitano ancora la maggior parte degli input a tastiera e mouse.

Il riconoscimento dei gesti consente all'uomo di interfacciarsi con la macchina (HMI, vedi 1.4) e interagire in modo più naturale, senza dispositivi meccanici. Utilizzando il concetto di riconoscimento dei gesti è possibile, ad esempio, puntare il dito verso lo schermo del computer facendo sì che il cursore si sposti di conseguenza. Ciò potrebbe rendere i dispositivi di input tradizionali, quali mouse, tastiere e schermi touch-screen, ridondanti.

Il riconoscimento dei gesti può essere realizzato con tecniche di visione artificiale e di elaborazione delle immagini.

Applicazioni[modifica | modifica wikitesto]

Il riconoscimento dei gesti è utilizzato per elaborare informazioni, prodotte da esseri umani, non trasmesse attraverso la parola o la scrittura. Di fatto ci sono diversi tipi di gesti che possono essere identificati da un computer.

  • Riconoscimento del linguaggio dei segni. Proprio come il riconoscimento vocale può trascrivere parole in testo, alcuni tipi di software di riconoscimento dei gesti possono trascrivere i simboli rappresentati attraverso il linguaggio dei segni in testo.
  • Robotica applicata all'assistenza sociale. Utilizzando sensori appropriati (accelerometri e giroscopi) applicati al corpo di un paziente e leggendo i valori generati da tali sensori è possibile aiutare la riabilitazione del paziente. Un buon esempio può essere la riabilitazione da ictus.
  • Indicazioni direzionali attraverso il puntamento. Il puntamento ha uno scopo molto specifico nella nostra società: fare riferimento a un oggetto o una locazione rispetto alla propria posizione. L'uso del riconoscimento dei gesti per determinare in che direzione una persona sta puntando è utile per identificare il contesto delle dichiarazioni o delle istruzioni. Questa applicazione è di particolare interesse nel campo della robotica.
  • Controllo attraverso gesti facciali. Controllare un computer attraverso i gesti facciali è una utile applicazione del riconoscimento dei gesti per gli utenti che possono non essere fisicamente in grado di utilizzare il mouse o la tastiera. Il tracciamento degli occhi, in particolare, può essere utile per controllare il movimento del cursore o focalizzarsi su elementi presenti su uno schermo.
  • Interfacce alternative per il computer. La configurazione tradizionale mouse-tastiera per interagire con un computer potrebbe essere sostituita dal riconoscimento dei gesti, che consentirebbe agli utenti di eseguire le comuni operazioni con la mano o coi gesti del viso, con il solo uso di una telecamera.
  • Tecnologia di gioco immersiva. I gesti possono essere usati per controllare le interazioni all'interno dei videogiochi per cercare di rendere l'esperienza di gioco più realistica e coinvolgente.
  • Controller virtuali. Per i sistemi in cui l'atto di reperimento o di acquisizione di un controller fisico potrebbe richiedere troppo tempo, possono essere usati i gesti come un meccanismo di controllo alternativo. Un paio di esempi potrebbero essere il controllo di dispositivi secondari in una macchina o di un televisore.
  • "Computazione emozionale". Il riconoscimento dei gesti è utilizzato nel processo di identificazione delle espressioni emozionali utilizzando sistemi informatici.
  • Controllo remoto. Attraverso l'uso del riconoscimento dei gesti è possibile il controllo remoto, attraverso il movimento della mano, di vari dispositivi. Il segnale non deve solo indicare la risposta desiderata, ma anche quale dispositivo controllare.

Dispositivi di input[modifica | modifica wikitesto]

La capacità di tracciare i movimenti di una persona e determinare quali gesti possano essere stati eseguiti può essere ottenuta attraverso vari strumenti. Sebbene siano state effettuate numerose ricerche nel riconoscimento dei gesti attraverso elaborazioni di immagini / video, vi sono diverse differenze tra gli strumenti e gli ambienti utilizzati nelle varie implementazioni.

  • Telecamere a riconoscimento di profondità. Utilizzando telecamere specializzate è possibile generare una mappa di profondità a breve distanza di ciò che viene visto attraverso la telecamera, e utilizzare questi dati per approssimare una rappresentazione 3D di ciò che si vede. Queste telecamere risultano essere abbastanza efficaci nel rilevamento dei gesti delle mani a causa della loro capacità a corto raggio.
  • Telecamere per la stereovisione. Utilizzando due telecamere i cui rapporti reciproci sono noti, è possibile approssimare una rappresentazione 3D di quello che viene visto dalle due telecamere. Per ottenere i rapporti delle telecamere è possibile utilizzare un riferimento di posizione, ad esempio degli emettitori infrarossi.
  • Controller basati su gesti. Questi controller possono essere visti come un'estensione del corpo; quando vengono eseguiti determinati gesti, i loro movimenti possono essere facilmente catturati da un software. I gesti del mouse ne sono un esempio, dove il movimento del mouse è correlato a un simbolo disegnato a mano da una persona, o come il Wii Remote, che può catturare i propri cambiamenti di accelerazione nel corso del tempo, generando così una rappresentazione dei gesti eseguiti.
  • Telecamera singola. In situazioni in cui, per mancanza di risorse o per necessità ambientali, non fosse possibile utilizzare altri dispositivi, è possibile utilizzare una normale telecamera (o webcam) per il riconoscimento dei gesti basato su immagini. Anche se non sempre efficace come il riconoscimento tramite stereovisione o telecamere a profondità, l'utilizzo di una singola telecamera consente una maggiore portabilità e accessibilità ad un pubblico più ampio.

Sviluppi futuri[modifica | modifica wikitesto]

Ci sono molte sfide aperte connesse con la precisione e l'usabilità dei software di riconoscimento dei gesti. Per il riconoscimento dei gesti basato su immagini vi sono limitazioni sia sull'equipaggiamento utilizzato che sul rumore dell'immagine. Immagini o video possono non essere in condizioni di illuminazione buone; oggetti sullo sfondo o caratteristiche distintive degli utilizzatori possono rendere più difficile il riconoscimento.

La varietà di implementazioni può anche causare problemi per la variabilità della tecnologia utilizzata. Ad esempio, un algoritmo tarato per una fotocamera potrebbe non funzionare per una fotocamera differente. La quantità di rumore di fondo causa anche difficoltà di tracciamento e di riconoscimento, soprattutto quando si verificano delle occlusioni (parziali o totali). Inoltre, la distanza dalla fotocamera, la risoluzione e la qualità della stessa, possono causare variazioni nella precisione del riconoscimento. Al fine di catturare i gesti umani da parte di sensori visuali è necessario l'utilizzo di metodi di visione artificiale robusti, per esempio per il tracciamento e il riconoscimento della postura della mano o per catturare i movimenti del capo, espressioni del viso o di direzione dello sguardo.

Braccio del gorilla[modifica | modifica wikitesto]

Il "Braccio del gorilla" è un effetto collaterale dell'uso dei touch-screen disposti verticalmente, che ha portato ad un tracollo di tale tecnologia come sistema portante di input, nonostante un inizio promettente nei primi anni '80. I progettisti delle interfacce tattili, non tennero in dovuta considerazione che gli esseri umani non sono fatti per tenere le braccia stese di fronte a se stessi per lungo tempo effettuando piccoli movimenti. Dopo pochi tocchi, l'operatore inizia a sentire il braccio dolorante e indolenzito, impossibilitato nel proseguimento del suo compito.

Il braccio del gorilla è un problema che non si presenta negli usi specialistici a breve termine (uso di ATM, biglietteria elettronica nelle stazioni ferroviarie...), dal momento che implicano solo interazioni brevi che non durano abbastanza a lungo da causare questo inconveniente.

Bibliografia[modifica | modifica wikitesto]

  • Matthias Rehm, Nikolaus Bee, Elisabeth André, "Wave Like an Egyptian - Accelerometer Based

Gesture Recognition for Culture Specific Interactions", British Computer Society, 2007.

  • Ying Wu and Thomas S. Huang, "Vision-Based Gesture Recognition: A Review", In: Gesture-

Based Communication in Human-Computer Interaction, Volume 1739 of Springer Lecture Notes in Computer Science, pages 103-115, 1999, ISBN 978-3-540-66935-7, doi 10.1007/3-540-46616-9.

  • Thad Starner, Alex Pentland, "Visual Recognition of American Sign Language Using Hidden

Markov Models", Massachusetts Institute of Technology.

  • Kai Nickel, Rainer Stiefelhagen, �Visual recognition of pointing gestures for human-robot

interaction�, Image and Vision Computing, vol 25, Issue 12, December 2007, pp 1875–1884.

  • Lars Bretzner and Tony Lindeberg "Use Your Hand as a 3-D Mouse...", Proc. 5th European

Conference on Computer Vision (H. Burkhardt and B. Neumann, eds.), vol. 1406 of Lecture Notes in Computer Science, (Freiburg, Germany), pp. 141�157, Springer Verlag, Berlin, June 1998.

  • Lars Bretzner, Ivan Laptev, Tony Lindeberg, Sören Lenman, Yngve Sundblad "A Prototype

System for Computer Vision Based Human Computer Interaction", Technical report CVAP251, ISRN KTH NA/P�01/09�SE. Department of Numerical Analysis and Computer Science, KTH (Royal Institute of Technology), SE-100 44 Stockholm, Sweden, April 23-25, 2001.

  • Per Malmestig, So�e Sundberg, SignWiiver - implementation of sign language technology.
  • AiLive Inc., LiveMove White Paper, 2006.
  • Ivan Laptev and Tony Lindeberg "Tracking of Multi-state Hand Models Using Particle Filtering

and a Hierarchy of Multi-scale Image Features", Proceedings Scale-Space and Morphology in Computer Vision, Volume 2106 of Springer Lecture Notes in Computer Science, pages 63–74, Vancouver, BC, 1999. ISBN 978-3-540-42317-1, doi 10.1007/3-540-47778-0.

  • Christian von Hardenberg and François Bérard, "Bare-hand human-computer interaction", ACM

International Conference Proceeding Series; Vol. 15 archive Proceedings of the 2001 workshop on Perceptive user interfaces, Orlando, Florida, Pages: 1 - 8, 2001.

  • M. Kolsch and M. Turk "Fast 2D Hand Tracking with Flocks of Features and Multi-Cue Integration",

CVPRW '04. Proceedings Computer Vision and Pattern Recognition Workshop, May 27-June 2, 2004, doi 10.1109/CVPR.2004.71.

  • A Erol, G Bebis, M Nicolescu, RD Boyle, X Twombly, "Vision-based hand pose estimation:

A review", Computer Vision and Image Understanding Volume 108, Issues 1-2, October-November 2007, Pages 52–73 Special Issue on Vision for Human-Computer Interaction, doi:10.1016/j.cviu.2006.10.012.

  • Marco Infussi, �Chi: interfacce creative�, _underscored science ed. ltd.
Informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica