articolo - Parlaritaliano
Transcript
articolo - Parlaritaliano
UN SISTEMA DI SPEAKER IDENTIFICATION PER LA SEGMENTAZIONE AUTOMATICA DI VIDEOGIORNALI Gennaro Percannella1, Carlo Sansone2, Domenico Sorrentino1, Mario Vento1 1 Dipartimento di Ingegneria dell’Informazione e Ingegneria Elettrica, Università degli Studi di Salerno; 2Dipartimento di Informatica e Sistemistica, Università di Napoli “Federico II” {pergen, sorrentino, mvento}@unisa.it, [email protected] 1. SOMMARIO In questo articolo è presentato un sistema di Speaker Identification che opera in tempo reale. Il presente lavoro è inquadrato nel framework più generale della segmentazione ed indicizzazione automatica dei videogiornali. In tale contesto, l’impiego dell’informazione audio può permettere una migliore individuazione delle notizie, rispetto al caso in cui si faccia uso della sola informazione video. Il sistema proposto effettua una classificazione di tipo text-independent ed estrae feature sia nel dominio del tempo che in quello della frequenza. La classificazione è effettuata attraverso una rete neurale basata sull’architettura Learning Vector Quantization. Per la sperimentazione del sistema è stato realizzato un dataset costituito da segmenti audio estratti dalle registrazione di dodici telegiornali nazionali, in cui sono presenti dieci differenti anchor di entrambi i sessi. Le acquisizioni dell’audio di ogni singolo presentatore sono effettuate in edizioni diverse dello stesso notiziario, supponendo che le caratteristiche principali dell’audio non cambiano nelle varie registrazioni. Le prove sperimentali hanno dimostrato che un uso combinato delle feature estratte, consente di ottenere prestazioni superiori rispetto all’uso di un singolo set di feature. Il sistema raggiunge un tasso di riconoscimento superiore al 99% quando la lunghezza della finestra di analisi, in cui avviene la classificazione, dura almeno 1,5 secondi. 2. INTRODUZIONE Negli ultimi anni, la comunità scientifica internazionale ha compiuto numerosi sforzi per affrontare il problema della segmentazione video e le relative problematiche più generali di indicizzazione e recupero dei contenuti. La maggior parte degli approcci alla segmentazione video si basa sull’estrazione di informazioni dai frame del filmato, usando tecniche di Image Analysis. Tuttavia, già da qualche anno, è stato dimostrato il proficuo utilizzo dell’audio come sorgente alternativa di informazione per la segmentazione (De Santo et al., 2002), (Foote, 1999), (Nam et al., 1997), (Saraceno et al., 1997), (Tsekeridou et al., 1998). L’utilizzo dell’audio per la segmentazione di filmati è particolarmente interessante in alcuni domini applicativi, p.e. nell’ambito della gestione di videogiornali, dove, grazie alla traccia audio, è possibile ottenere una corretta segmentazione anche quando l’informazione relativa al video non è adeguata. Si consideri il caso in cui le immagini di un servizio esterno di un telegiornale scorrono sullo schermo, mentre la voce di un anchorman, non visibile allo spettatore, le sta commentando. In tal caso, l’analisi basata solamente su contenuti visuali fallisce perchè non considera il servizio come un unico segmento. Un sistema che esamina la traccia audio, invece, identificando la voce dello speaker, può essere un utile strumento per aiutare a segmentare opportunamente il video anche in questi casi particolari. 741 A partire da queste considerazioni, in questo articolo proponiamo un sistema di Speaker Identification che può essere usato per segmentare automaticamente le notizie di un videogiornale in tempo reale. L’obiettivo di un sistema di Speaker Identification è determinare quale, tra un gruppo di voci conosciute, è quella più corrispondente ai campioni di voce presenti all’ingresso del sistema. Se non si richiede che lo speaker per essere identificato pronunci uno specifico set di frasi, come nel nostro caso, il sistema è detto text-independent. Il problema dello Speaker Identification è stato affrontato nella letteratura attraverso la rappresentazione del segnale audio con differenti feature, calcolate o nel dominio del tempo o in quello della frequenza. Diversi sono i paradigmi di classificazione sviluppati principalmente basati su reti neurali e modelli gaussiani. L’articolo di Reynolds (Reynolds et al., 1995) illustra uno dei sistemi di Speaker Identification più frequentemente adottati in letteratura. Esso usa feature valutate nel dominio della frequenza, attraverso l’utilizzo dei cosiddetti coefficienti Mel-scale cepstral (Picone, 1993). Il sistema ottiene un tasso di riconoscimento superiore al 94% sul KING Speech Corpus database (Godfrey et al., 1994). Vari autori hanno proposto feature calcolate a partire dal modello descritto da Reynolds. In particolare, in Murthy et al. (1999), viene applicata una trasformazione alle feature Mel-scale cepstral in modo da compensare le componenti di rumore del canale audio. Le feature sono poi calcolate nel dominio trasformato e usate per la classificazione. I risultati sul database NIST pervengono ad un 90% del tasso di riconoscimento. In Torres et al. (2000), gli autori, usando anche le wavelet, propongono un’architettura del sistema di Speaker Identification con un classificatore neurale per ogni speaker. L’identificazione è ottenuta attraverso l’assegnazione dei campioni di ingresso allo speaker relativo al classificatore che esibisce l’uscita più alta. In Seo et al. (2001), invece, viene utilizzata un’analisi delle componenti principali sulle feature proposte da Reynolds et al. (2005), in modo da ridurre la complessità computazionale della fase di classificazione. In tal modo gli autori ottengono un tasso di riconoscimento del 90% su un set di 50 speakers. Altri autori hanno proposto l’uso di feature acustiche ottenibili direttamente nel dominio del tempo, come i toni, il tasso di parole, la qualità di voce e la variazione temporale del segnale audio. Questo è il caso di Miyajima (Miyajima et al., 2001), dove viene proposto un sistema dedicato a riconoscere solo segmenti voiced della traccia audio, e di Wang (Wang et al., 2002), in cui gli autori provano ad identificare gli speaker del KING Speech Corpus. In entrambi i casi, per la fase di classificazione sono sviluppati modelli di misture di gaussiane. Il sistema che noi proponiamo, parte da quello proposto da Reynolds, ed utilizza feature calcolate sia nel dominio del tempo che in quello della frequenza. In particolare, in questo lavoro viene descritta un’analisi sperimentale considerando tre set di feature, tre diversi training set, e due classificatori neurali. L’uso combinato di tutte le feature proposte migliora significativamente le performance del sistema rispetto all’uso di un singolo set di feature; questo accade per ogni dimensione del training set e per ogni classificatore. Su un database di 10 speaker, il sistema da noi proposto è capace di raggiungere un tasso di riconoscimento del 99%, con un tempo di classificazione di circa 1,5 secondi. Tale durata è sicuramente ragionevole per considerare l’applicativo operante in tempo reale. Il resto dell’articolo è suddiviso come segue: nel prossimo paragrafo mostriamo l’architettura del sistema proposto, insieme con una descrizione delle feature usate. Il 742 paragrafo 4 descrive, invece, il database audio utilizzato, mentre nel paragrafo 5 riportiamo l’analisi sperimentale del sistema presentato, con i relativi risultati. Prima delle conclusioni, nella quinta sessione, illustriamo l’applicativo di Speaker Identification realizzato. 3. ARCHITETTURA DEL SISTEMA Nella figura 1 è mostrata l’architettura del sistema, i cui blocchi principali sono illustrati dettagliatamente nei sottoparagrafi che seguono. Sorgente Buffer Preprocessing Audio Normalizzazione Feature Estrazione Feature Speaker Identificato Classificazione Figura 1: Diagramma a blocchi dell’architettura del sistema 3.1 Preprocessing A monte della pre-elaborazione, il segnale di ingresso viene acquisito e successivamente caricato in un buffer circolare da cui sono prelevati i campioni audio per l’estrazione e la classificazione delle feature. I campioni bufferizzati alimentano il modulo di pre-processing, il cui scopo è preparare i dati per il calcolo delle feature, attraverso operazioni di frame blocking, pre-enfasi e di finestratura del segnale. La fase di frame-blocking consiste nel suddividere i campioni audio in frame di lunghezza fissata. Per attenuare le transizioni tra frame e fornire una migliore correlazione tra le parti successive del segnale acquisito, viene permessa una sovrapposizione tra frame adiacenti. La lunghezza del frame audio è fissata a circa 23 msec ed il tasso di campionamento è di 44.1 KHz (1024 campioni per ogni frame). Questa scelta tiene conto del fatto che alcuni studi (Picone, 1993) suggeriscono che la maggior parte delle feature adottate forniscono informazioni più significative se calcolate su un intervallo maggiore di 20 msec; inoltre la FFT, usata durante l’estrazione delle feature, richiede che il numero di campioni sia una potenza di 2. La sovrapposizione tra i due frame adiacenti è stata fissata a due terzi della lunghezza del frame. Per ridurre significativamente le componenti in alta frequenza dovute al rumore ambientale, a valle dell’operazione di Frame-blocking, i campioni audio sono posti in un filtro di pre-enfasi. Successivamente, una finestra di Hamming applicata al segnale riduce ancora di più gli effetti di bordo, dando più peso ai campioni che sono nella parte centrale del frame. 743 3.2 Estrazione delle feature Dopo la fase di preprocessing, i frame sono pronti per essere sottoposti al processo di estrazione delle feature. Abbiamo adottato tre differenti set di feature, legati rispettivamente alle tre seguenti tipologie di coefficienti: Linear Predictive Cepstral Coefficients (LPCC), Post Filter Linear (PF) e Mel Filtered Cepstral Coefficients (MFCC). In tutto sono calcolati complessivamente 14 coefficienti per ogni set di feature. Le feature LPCC sono ottenute attraverso un analisi di predizione lineare usando il metodo di Levinson-Durbin (Hayers, 1996). Anche le feature PF (Mammone at al., 1996) sono estratte attraverso un’analisi di predizione lineare. Esse sono usate in modo da migliorare le performance in bassa frequenza del sistema ottenibili con le sole LPCC. Le feature MFCC (Reynolds et al., 1995) sono invece calcolate nel dominio della frequenza, attraverso la trasformata inversa di Fourier applicata al logaritmo dello spettro del segnale di ingresso. Prima di passare alla fase di classificazione, i vettori delle feature sono stati normalizzati in modo da aumentare il loro potere discriminante ed evitare che il classificatore si polarizzi solo su di un sottoinsieme di feature. 3.3 Classificazione La classificazione è ottenuta attraverso una rete neurale LVQ addestrata con un algoritmo FSCL (Ahalt et al., 1990) che consente un uso ottimale dei neuroni in quanto ne evita il loro sottoutilizzo. Abbiamo testato due reti neurali, aventi rispettivamente 50 e 100 prototipi per classe. Il sistema è “closed set”, ovvero lo speaker da identificare fa parte di un insieme finito di persone noto a priori. E’ relativamente semplice aggiungere al sistema un opzione di rigetto (Cordella et al., 1998), per trattare meglio i casi in cui il segnale di ingresso non appartiene a nessuno degli speaker presenti nell’insieme di addestramento. La classificazione, però, non viene effettuata sulla base dell’analisi di un solo frame alla volta: se così fosse, l’identificazione dello speaker sarebbe di certo poco affidabile in quanto molto sensibile ai silenzi o ai segmenti unvoiced che possono durare più di 23 msec. Il nostro sistema, invece, combina le evidenze osservate su di una finestra di analisi costituita da una sequenza di frame (lo shot audio) dopodiché decide per lo speaker più occorrente sulla base di un criterio di votazione a maggioranza. Questo approccio ci permette di superare il problema dei segmenti unvoiced (Murthy et al., 1999). 4. IL DATABASE I database standard più comunemente utilizzati nell’ambito della Speaker Identification non fanno riferimento ai videogiornali. E’ questo il caso del già citato KING Corpus (Godfrey et al., 1994) che, invece, è costituito da registrazioni telefoniche. Dal momento che il nostro scopo è quello di utilizzare il sistema proposto nel contesto della segmentazione automatica dei videogiornali, abbiamo costruito un database prelevando segmenti audio da dodici differenti telegiornali italiani, considerando 10 differenti speaker, 5 di sesso maschile e 5 di sesso femminile. Abbiamo assunto che le caratteristiche del segnale audio di un dato speaker rimangono le stesse, anche se i suoi campioni audio sono estratti da videogiornali registrati in giorni differenti. 744 Ogni segmento audio nel database ha una durata di 15 secondi. Sono stati estratti 250 segmenti per ogni speaker, dunque la durata complessiva del dataset è di circa 1h e 2 min. Con questo database, abbiamo costituito tre training set (TRS) di dimensione diversa, con segmenti audio di durata multipla di 15 sec. Ciò è stato fatto per poter valutare le prestazioni del sistema al variare della dimensione dei dati necessari all’addestramento. Le durate delle porzioni audio dei tre TRS sono rispettivamente di 15, 30 e 45 secondi. La dimensione delle clip che costituiscono il test set (TS) è stata fissata a 30 sec. 5. LA SPERIMENTAZIONE Come è stato brevemente accennato nel paragrafo introduttivo, la sperimentazione è stata effettuata addestrando due reti neurali LVQ, con 50 e 100 prototipi per classe, considerando tre differenti insiemi di feature: un set con sole feature MFCC, un altro con sole LPCC e infine un set contenente le feature MFCC, LPCC e PF contemporaneamente. Per poter scegliere la configurazione del sistema che meglio soddisfi il vincolo di tempo reale, è stata valutata la bontà della risposta del classificatore al variare della durata degli shot. I risultati ottenuti sul TS considerando il solo set di feature MFCC, sono riportati in figura 2. Figura 2: Tasso di errore sul TS in funzione della durata degli shot (in sec) per i tre TRS con dimensione differente. Solo le feature MFCC sono utilizzate. a) Risultati con 50 prototipi. b) Risultati con 100 prototipi. Come si può notare, in generale, il tasso di errore non è particolarmente soddisfacente: l’uso di 100 prototipi per classe dà migliori risultati rispetto all’uso di 50 prototipi per classe. Abbastanza sorprendentemente, i risultati sul TS sono migliori se è usato un TRS 745 più piccolo. Ciò si spiega considerando il fatto che, all’aumentare della dimensione del TRS, può comparire il fenomeno dell’overfitting dei dati. Valutando le prestazioni del sistema con le sole feature LPCC (si veda figura 3), abbiamo osservato un comportamento del sistema leggermente differente. Il tasso di riconoscimento è più alto rispetto al caso precedente e le performance del sistema migliorano passando da un TRS di 15 sec ad un TRS di 30 sec. Tuttavia il fenomeno dell’overfitting rimane anche in questo caso, infatti le prestazioni con un TRS di 45 sec sono sempre peggiori rispetto alle performance del sistema con un TRS di 30 sec. Figura 3: Tasso di errore su TS in funzione della durata degli shot (in sec) per i tre TRS con dimensione differente. Solo le feature LPCC sono utilizzate.a) Risultati con 50 prototipi. b) Risultati con 100 prototipi. Quanto visto finora ci ha incoraggiato ad utilizzare, in modo combinato, le feature MFCC ed LPCC, aggiungendo a queste ultime le feature PF per migliorare la risposta del sistema in bassa frequenza. Aumentando lo spazio delle feature, il fenomeno dell’overfitting scompare e migliorano le performance del riconoscimento del sistema. Ciò è confermato attraverso i risultati mostrati in figura 4. Le prestazioni ottenute, con l’uso combinato di feature, sono veramente interessanti: si ottiene un tasso di riconoscimento superiore al 99% quando la lunghezza dello shot audio diventa maggiore di 1.5 secondi. Si può inoltre osservare che le performance raggiunte dal sistema non cambiano molto addestrando il classificatore con il TRS costituito da segmenti di 45 sec. Inoltre, anche le prestazioni ottenute usando la rete LVQ configurata con 50 prototipi sono abbastanza vicine a quelle della rete rappresentata con 100 prototipi. 746 Figura 4: Tasso di errore su TS in funzione della durata degli shot (in sec) per i tre TRS con dimensione differente. Sono utilizzate le feature MFCC, LPCC e PF. a) Risultati con 50 prototipi. b) Risultati con 100 prototipi. 6. L’APPLICATIVO DI SPEAKER IDENTIFICATION A partire dai risultati e dalle osservazioni fatte nei paragrafi precedenti, è stato costruito un applicativo di Speaker Identification che opera in tempo reale. L’applicativo utilizza la rete LVQ addestrata utilizzando 50 prototipi per classe sul TRS costituito da segmenti di 30 sec. Le figure 5 e 6 mostrano alcune istantanee del modulo di Speaker Identification realizzato. Il sistema mette a disposizione la possibilità di scegliere la durata dello shot usato per riconoscere lo speaker da identificare. Inoltre è capace di stimare l’affidabilità di ogni classificazione ottenuta. Infatti, per ogni campione l’affidabilità R viene calcolata come segue: R = 100 * (1-N2/N1). dove N1 è il numero dei vettori di feature attribuiti allo speaker più probabile e N2 è il numero dei vettori di feature attribuiti al secondo più probabile. Il grado di affidabilità R varia tra 0 e 100 e solo se risulta maggiore o uguale di 50 il campione audio classificato è considerato affidabile (si veda la figura 6). Per testare la validità dell’applicativo, è stato realizzato un video di 2 minuti e 30 secondi mettendo insieme 5 videogiornali ciascuno di 30 sec. Ogni videogiornale è presentato da un diverso speaker, ovviamente appartenente al set sul quale lo speaker è stato addestrato. Settando la lunghezza dello shot ad 1 secondo, il sistema ottiene un tasso 747 di riconoscimento del 96,46%. D’altra parte, se noi consideriamo solo le classificazioni affidabili, il riconoscimento raggiunge il 99.79%. Figura 5: Un’istantanea dell’applicativo di Speaker Identification. Identificazione di un anchor di RAI 1. Figura 6: Un’istantanea dell’applicativo di Speaker Identification. Affidabilità della classificazione. 748 7. CONCLUSIONI In questo articolo abbiamo presentato un sistema di Speaker Identification che opera in tempo reale ed usa feature estratte sia dal dominio del tempo, sia da quello della frequenza. In fase di classificazione attraverso un criterio di votazione a maggioranza viene scelto lo speaker più occorrente su di uno shot audio, in tal modo il sistema è più robusto alla presenza di silenzi e segmenti unvoiced. La sperimentazione su di un database di segmenti audio estratti da notiziari, dimostrano l’efficacia del sistema nell’identificazione degli speaker in tempo reale. Tale sistema può essere di grande aiuto per l’implementazione di un apparato che usa l’informazione relativa alla traccia audio per la segmentazione automatica di uno stream video. 8. BIBLIOGRAFIA Ahalt, S. C.; Krishnamurthy, A. K.; Chen, P.; Melton, D. E., 1990. Competitive Learning Algorithms for Vector Quantization. Neural Networks, 3, 277-290. Cordella, L. P.; Sansone, C.; Tortorella, F.; Vento, M.; De Stefano, C., 1998. Neural Network Classification Reliability: Problems and Applications. Image Processing and Pattern Recognition, 5, 161-200. De Santo, M.; Percannella, G.; Sansone, C.; Vento, M., 2002. Cooperating Experts for Soundtrack Analysis of MPEG Movies. Information Fusion, 3, 3, 225-236. Foote, J., 1999. An Overview of Audio Information Retrieval. Association for Computing Machinery Multimedia Systems, 7, 1, 2-10. Godfrey, J.; Graff, D.; Martin, A.; 1994. Public databases for speaker recognition and verification. In Proceedings of the ESCA Workshop Automatic Speaker Recognition, Identification, Verification, 39-42. Hayers, M. H., 1996. Statistical Digital Signal Processing and Modeling. John Wiley & Sons Inc. Mammone, R.; Zhang, X.; Ramachandran, R., 1996. Robust speaker recognition: a featurebased approach. Institute of Electrical and Electronics Engineers Transaction on Signal Processing Magazine, 13, 58-71. Miyajima, C.; Hattori, Y.; Tokuda, K.; Masuko, T.; Kobayashi, T.; Kitamura, T., 2001. Speaker Identification using Gaussian mixture models based on multi-space probability distribution. In Proceedings. of International Conference on Acoustic, Speech and Signal Processing, 1, 433-436. Murthy, H. A.; Beaufays, F.; Heck, L. P.; Weintraub, M., 1999. Robust text-independent Speaker Identification over telephone channels. Institute of Electrical and Electronics Engineers Transaction on Speech and Audio Processing, 7, 5 , 554-568. Nam, J.; Cetin, E.; Tewfik, A. H., 1997. Speaker Identification and Video Analysis for Hierarchical Video Shot Classification. In Proceedings of International Conference on Image Processing, 2, 550-553. Picone, J., 1993. Signal Modelling Techniques in Speech Recognition. In Proceedings of the Institute of Electrical and Electronics Engineers 1993, 81, 9, 1215-1247. 749 Reynolds, D. A.; Rose, R. C., 1995. Robust text-independent Speaker Identification using Gaussian Mixture speaker models. Institute of Electrical and Electronics Engineers Transaction on Speech and Audio Processing, 3, 1, 72-83. Saraceno, C.; Leonardi, R., 1997. Audio as a Support to Scene Change Detection and Characterization of Video Sequences. In Proceedings of International Conference on Acoustic, Speech and Signal Processing, 4, 2597-2600. Torres, H. M.; Rufiner, H., 2000. Automatic Speaker Identification by means of Mel cepstrum, wavelets and wavelet packets. In Proceedings. of International Conference on Engineering in Medicine and Biology, 2, 978-981. Tsekeridou, S.; Pitas, I., 1998. Speaker Dependent Video Indexing Based on Audio-Visual Interaction. In Proceedings of International Conference Image Processing, 1, 358-362. Seo, C.; Lee, K. Y.; Lee, J., 2001. GMM based on local PCA for Speaker Identification. Electronics Letters , 37, 24, 1486-1488. Wang, L.; Chen, K.; Chi, H., 2002. Capture interspeaker information with a neural network for Speaker Identification. Institute of Electrical and Electronics Engineers Transactions on Neural Networks, 13, 2, 436-445. 750