Come interpretare il passaggio DCT nel processo di estrazione MFCC?


20

Nella maggior parte delle attività di elaborazione audio, una delle trasformazioni più utilizzate è MFCC (coefficienti cepstrali a frequenza mel) .

Conosco principalmente la matematica che sta dietro l'MFCC: capisco sia il passo della banca del filtro che il ridimensionamento della frequenza Mel.

Quello che non ottengo è il passaggio DCT (Discrete Cosine Transform): che tipo di informazioni ottengo in questo passaggio? Qual è una buona rappresentazione visiva di questo passaggio?


1
Vorrei aggiungere una breve spiegazione di MFCC, o almeno un link: en.wikipedia.org/wiki/Mel-frequency_cepstral_coefficient
una specie di robot

Risposte:


16

Puoi pensare al DCT come a un passo di compressione. In genere con gli MFCC, prenderai il DCT e manterrai solo i primi coefficienti. Questo è fondamentalmente lo stesso motivo per cui il DCT viene utilizzato nella compressione JPEG. I DCT sono scelti perché le loro condizioni al contorno funzionano meglio su questi tipi di segnali.

Contrastiamo il DCT con la trasformata di Fourier. La trasformata di Fourier è composta da sinusoidi che hanno un numero intero di cicli. Ciò significa che tutte le funzioni di base di Fourier iniziano e finiscono allo stesso valore - non fanno un buon lavoro nel rappresentare segnali che iniziano e finiscono con valori diversi. Ricorda che la trasformata di Fourier assume un'estensione periodica: se immagini il tuo segnale su un foglio di carta, la trasformata di Fourier vuole far rotolare quel foglio in un cilindro in modo che i lati sinistro e destro si incontrino.

Pensa a uno spettro che ha la forma approssimativa di una linea con pendenza negativa (che è piuttosto tipica). La trasformata di Fourier dovrà utilizzare molti coefficienti diversi per adattarsi a questa forma. D'altra parte, il DCT ha coseni con numeri interi di mezzo numero di cicli. Esiste, ad esempio, una funzione di base DCT che assomiglia vagamente a quella linea con pendenza negativa. Non presuppone un'estensione del periodo (invece, un'estensione uniforme), quindi farà un lavoro migliore per adattare quella forma.

Quindi, mettiamolo insieme. Dopo aver calcolato lo spettro della frequenza di mel, si ha una rappresentazione dello spettro sensibile in un modo simile a come funziona l'udito umano. Alcuni aspetti di questa forma sono più rilevanti di altri. Di solito, la forma spettrale più ampia e generale è più importante dei dettagli rumorosi dello spettro. Puoi immaginare di tracciare una linea liscia per seguire la forma spettrale e che la linea liscia che disegni potrebbe dirti altrettanto sul segnale.

Quando prendi il DCT e scarti i coefficienti più alti, prendi questa forma spettrale e mantieni solo le parti che sono più importanti per rappresentare questa forma liscia. Se usi la trasformata di Fourier, non farebbe un buon lavoro nel mantenere le informazioni importanti nei coefficienti bassi.

Se pensi di alimentare gli MFCC come funzionalità di un algoritmo di apprendimento automatico, questi coefficienti di ordine inferiore renderanno buone caratteristiche, poiché rappresentano alcuni aspetti semplici della forma spettrale, mentre i coefficienti di ordine superiore che scarti sono più simili al rumore e non sono importanti su cui allenarsi. Inoltre, l'addestramento sulle magnitudini dello spettro Mel non sarebbe probabilmente altrettanto buono perché l'ampiezza particolare a frequenze diverse è meno importante della forma generale dello spettro.



8

La chiave per comprendere l'MFCC è all'inizio della frase nell'articolo collegato:

Sono derivati ​​da un tipo di rappresentazione cefalica della clip audio ...

MFCCs sono come uno spettro-of-a- log -Spectrum, il cepstrum .

X(t) è solo:

C(z)=F-1(log(|F(X(t))|2)

FF-1

Il motivo per cui il porcospino è pulito è che l'operazione interposta del logaritmo significa che le convoluzioni del segnale originale si presentano come semplici aggiunte nel porcospino .

Tuttavia, questo vantaggio si ripercuote sugli MFCC sollevatore non sia diretto come con il ceppo standard.

Il punto in cui l'MFCC differisce è l'uso della trasformata del coseno discreto (DCT) come trasformata finale invece della trasformata inversa di Fourier.

Il vantaggio del DCT rispetto alla trasformata di Fourier è che i coefficienti risultanti sono valutati in modo reale , il che rende più semplice l'elaborazione e la memorizzazione successive.

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.