Quale input utilizzare per un modello AR di un suono vocale?


8

Ho registrato una pronuncia di 2 secondi di un suono vocale. I primi 0,12 secondi circa del segnale sono mostrati di seguito.

Ora, ho costruito un modello di auto-regressione (AR) di 8 ° ordine per comprimere questo segnale. (In realtà, sto solo modellando 160 campioni o 0,02 secondi alla volta.) La arfunzione nella Toolbox Identification System di Matlab può stimare i parametri per un adattamento dello spettro "ottimale".

Il mio problema è scegliere l'input stocastico al filtro del modello. Suppongo che ci sia qualcosa di meglio del rumore bianco. La periodicità (14 periodi per 0,02 secondi) mi porta a pensare che sarebbe adatto un treno di impulsi con lo stesso periodo.

In tal caso, come sceglierei l'ampiezza e come troverei la periodicità? Le stime ACF e PSD sono piuttosto rumorose. Sono anche sulla buona strada?

inserisci qui la descrizione dell'immagine


1
Cordiali saluti, ho finito per ridimensionare il treno di impulsi in modo che la sua energia di segnale (misurata nel dominio del tempo) fosse la stessa di quella del segnale registrato.
Andreas,

Risposte:


5

Uno stimatore del tono è comunemente usato per trovare la periodicità vocale. Gli stimatori di intonazione comuni includono l'analisi del cepstrum / cepstral, lo spettro di prodotti armonici e gli algoritmi compositi, come YAAPT .


Grazie. Come dovrei scegliere l'ampiezza dell'impulso?
Andreas,

4

Penso che la tua scommessa migliore sia il rilevatore di intonazione "YIN", descritto in questo documento: http://audition.ens.fr/adc/pdf/2002_JASA_YIN.pdf . È abbastanza semplice e funziona molto bene. Lo presentano in passaggi o miglioramenti rispetto all'idea precedente e anche solo l'implementazione dei primi passi dovrebbe essere sufficiente.

La maggior parte dei rilevatori di tonalità attualmente in uso sono correlati all'autocorrelazione. Il problema più grande con la maggior parte degli algoritmi di rilevamento dell'intonazione è quello degli errori di ottava, che rilevano un tono più basso o più alto. È interessante dire che la tua funzione di autocorrelazione è rumorosa. Dovresti vedere un sacco di rumore, con picchi a multipli interi e divisori della frequenza fondamentale. Si spera che il pitch lag corrispondente alla frequenza fondamentale abbia il valore più grande, ma spesso sarà ad un'ottava secondaria (perché i segnali non sono perfettamente periodici) o ad un'ottava più alta (a causa di una forte formante che causa uno dei più alti le armoniche devono essere davvero rumorose). Vorrei raccomandare una dimensione della finestra grande circa quanto due dei periodi di intonazione più bassi possibili.

Quel segnale sembra anche che abbia una componente di frequenza molto bassa - il parlato di solito non si muove su e giù in quel modo. Potrei raccomandare di elaborarlo con, diciamo, un filtro passa-alto 24 dB / oct a circa 50 Hz.


Grazie ad entrambi, controllerò quei rilevatori di tonalità. Quando il periodo è stimato, come posso trovare l'ampiezza appropriata per il treno di impulsi?
Andreas,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.