From Tokens to Faces: Investigating Discrete Speech Representations for 3D Facial Animation
Questo articolo valuta quattro famiglie di rappresentazioni del parlato discrete per l'animazione facciale 3D, dimostrando che la codifica delle classi fonetiche produce previsioni accurate e consentendo l'introduzione di una pipeline di Audio Visual Text-to-Speech (AVTTS) che utilizza rappresentazioni discrete condivise per decodificare simultaneamente il parlato e il movimento facciale 3D.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Immagina di cercare di insegnare a un robot come parlare e muovere il viso contemporaneamente. Hai la voce del robot, ma come dici al suo volto cosa fare? Gli dai una sceneggiatura dettagliata di ogni movimento muscolare? Gli dai un file audio grezzo? O gli dai un insieme di semplici istruzioni codificate?
Questo articolo, intitolato "From Tokens to Faces", è essenzialmente un test di assaggio. I ricercatori volevano scoprire quale tipo di "codice di istruzioni" funzioni meglio per rendere un volto animato in 3D naturale mentre parla.
I quattro tipi di "Codici di Istruzione"
I ricercatori hanno testato quattro modi diversi per tradurre il parlato umano in dati (chiamati "rappresentazioni") che un computer possa comprendere:
- Il Codice "Semantico" (HuBERT): Pensa a questo come a un traduttore che comprende il significato della frase. Sa cosa viene detto e il contesto circostante. È bravo a comprendere l' "idea" del parlato.
- Il Codice "Acustico" (WavTokenizer): Questo è come un compressore audio ad alta velocità. Si concentra puramente sulle onde sonore e su come si percepiscono, ignorando il significato o le lettere specifiche. È molto efficiente nel ricreare il suono, ma non "conosce" davvero le parole.
- Il Codice "Ibrido" (SpeechTokenizer): Questo è un mix dei due. Cerca di comprendere sia il significato delle parole che la consistenza del suono contemporaneamente.
- Il Codice "Basato su Etichette" (CosyVoice2): Questo è come un insegnante severo che usa una lista di controllo. Scompone il parlato in etichette specifiche e discrete (come lettere o suoni particolari) e si concentra sulla struttura del linguaggio piuttosto che sul suono fluido.
L'Esperimento: Il Decoder del Volto
I ricercatori hanno preso questi quattro diversi codici e li hanno inseriti in due diversi "driver del volto" (decoder):
- Il GRU: Un driver passo dopo passo che guarda un fotogramma del volto alla volta.
- Il Transformer: Un driver che guarda l'intera frase in una volta sola, come leggere un paragrafo per comprenderne il flusso.
Hanno poi misurato quanto bene i volti animati risultanti corrispondessero ai volti umani utilizzando tre metodi:
- Matematica: Misurando la distanza tra le labbra del robot e le labbra dell'umano.
- Fluidità: Controllando se il volto era scattoso o si muoveva in modo fluido.
- Il test dell' "Occhio Umano": Hanno fatto guardare i video a persone reali e hanno chiesto loro di valutare quanto sembrassero realistici, simile a un test di assaggio alla cieca.
Cosa hanno scoperto
Ecco i risultati sorprendenti, spiegati in modo semplice:
- Il significato conta: Il codice "Semantico" (il traduttore) e il codice "Basato su Etichette" (la lista di controllo) sono stati i vincitori. Hanno prodotto i volti più realistici. Si scopre che, affinché un volto si muova naturalmente, deve sapere cosa viene detto (le classi fonetiche), non solo come vibrano le onde sonore.
- Troppo suono è un male: Il codice "Acustico" (suono puro) e il codice "Ibrido" (suono + significato) sono stati scarsi. Sembra che se il computer è troppo concentrato sui dettagli del suono grezzo, si confonda su come muovere le labbra. Il "rumore" del suono è stato d'intralcio all'animazione facciale.
- Il miglior driver: Il driver "Transformer" (quello che guarda l'intera frase) ha funzionato molto meglio con i codici discreti rispetto al driver passo dopo passo.
- La sorpresa del "Basato su Etichette": Il codice "Basato su Etichette", progettato originariamente per il text-to-speech, ha funzionato quasi altrettanto bene del complesso codice "Semantico". Questo è un grande passo avanti perché è più semplice e strutturato.
La Grande Idea: La Macchina "Tutto in Uno"
Di solito, per creare una testa parlante, bisogna seguire due passaggi:
- Trasformare il testo in audio.
- Trasformare quell'audio in un volto in movimento.
I ricercatori hanno dimostrato che, poiché il codice "Basato su Etichette" è così bravo a rappresentare il parlato, può essere utilizzato come un linguaggio condiviso. Puoi inserire del testo nel sistema, e questo può generare sia l'audio che il volto in movimento esattamente allo stesso tempo, perfettamente sincronizzati, senza bisogno di un passaggio intermedio. È come un direttore d'orchestra che può dirigere sia l'orchestra (la voce) che i ballerini (il volto) da un unico spartito.
In sintamente
Per far sì che il volto di un robot sembri reale, non serve fornirgli ogni minimo dettaglio dell'onda sonora. Devi fornirgli una comprensione chiara e strutturata dei suoni e delle lettere pronunciate. Se dai al computer una "mappa" chiara del parlato (come una lista di controllo dei suoni), può capire come muovere le labbra perfettamente, anche se non ha a disposizione il file audio grezzo per partire.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.