Riassunto analitico
L'elaborato si propone come obiettivo la generazione di gesti in conversazioni diadiche, sfruttando audio e relativa trascrizione testuale come ingressi di controllo. L'approccio scelto al fine di perseguire tale fine è di tipo data-driven: è infatti stata applicata una architettura di deep learning composta di due modelli denominati come VQVAE (Vector Quantizer Variational Auto Encoder) e Modello di Diffusione. La generazione automatica di gesti è oggigiorno un campo di forte crescita ed innovazione, anche dovuta alla diversità di campi in cui trova applicazione come il controllo di agenti virtuali in videogiochi e produzioni cinematografiche o di robot sociali con sembianze umanoidi. In questo lavoro, i gesti sono stati rappresentati tramite rotazioni applicate a ciascun giunto presente nello scheletro umanoide, in quest'ultimo le ossa risultano essere i corpi rigidi congiungenti due o più articolazioni. Così facendo è stato possibile ricostruire il movimento del corpo tramite una struttura ad albero. Il VQVAE è stato utilizzato al fine di apprendere una sequenza finita di codici di movimento compressi precedentemente dal codificatore (encoder) del modello. Ciascun codice risiede quindi in uno spazio di codifica ristretto la cui rappresentazione è latente. In seguito ciascun codice viene decodificato sino allo spazio originale di rappresentazione del movimento dal decodificatore (decoder). Il modello è stato allenato per minimizzare la perdita di informazioni fra i movimenti contenuti nel dataset ed i movimenti decodificati dal modello. Successivamente, un Modello di Diffusione è stato applicato per generare gesti dati gli ingressi di audio e testo. Lo spazio latente imparato dal VQVAE, in questo caso, è stato utilizzato per imparare la distribuzione di dati di movimento rispetto agli input di audio e testo, così da poter essere utilizzato per selezionare il codice di movimento più affine agli ingressi ricevuti.
|
Abstract
This thesis aims to tackle a dyadic gesture generation task given audio and related text transcription as inputs. The chosen approach to reach the goal has been a data-driven one: the proposed work leverages a deep learning pipeline built of two models named VQVAE (Vector Quantizer Variational Auto Encoder) and diffusion model. Gesture generation tasks gain importance given various fields of application, spreading from virtual agents in videogames and the cinema industry to social human-lookalike robotics.
Gestures are defined in this work as skeleton-joint rotations, where bones act as links between the firsts. In this perspective, a human body is eventually represented by a tree structure with pre-defined parent-child relationships between joints and links. Given the data-driven approach, the TWH (Talk With Hands) dataset has been employed in order to train the full pipeline of the project.
As said before, a VQVAE is used to learn codes of gesture from the encodings in raw input data. The structure that composes a VQVAE is, in fact, made of an encoder, a codebook (of a finite length), and a decoder. The model is trained to minimize the loss of information between the former gesture data and the reconstructed one. Then, a diffusion model is used to associate the audio and text inputs with the most probable gesture code from the latent space of VQVAE. Once this code is decoded using the decoder from the VQVAE, a proper gesture is produced and can be further applied to the joints as an input.
|