VAD - - erstellt: Robert Schaar s63012 erstellt: Robert Schaar s63012 Mensch-Maschine-Robotik
1. Einleitung 2. Aufbau des Algorithmus 2.1. allgemeiner Aufbau 2.2. Fourier-Transformation 2.3. Short-Time Energy 2.4. Most Dominant Frequency Component 2.5. Spectral Flatness Measure 3. Implementierung im Workshop 4. Quellen
1. Einleitung Verfahren, zur Erkennung von Sprache in Audiodaten unabhängig von der menschlichen Stimme/Sprache weibliche/männliche Stimme Erkennung von Sprachpausen auch bei Audio-Signalen (Musikdaten) wichtige Anforderungen an VAD: Einfachheit/Robustheit Zuverlässigkeit/Genauheit Anpassung/Echtzeit-Verhalten
1. Einleitung VAD ist in ITU-Empfehlung G.722 beschrieben International Telecommunication Union unnötige Datenübertragung von inhaltsleeren Datenpaketen Rechenleistung einsparen Übertragungskapazität verringern Energiemanagement von Endgeräten(Smartphones) optimieren Roboter kann mit VAD Sprache von Personen erkennen z.b. Kunde im Baumarkt weitere Anwendungsfälle: IP-Telefonie (VoIP / Skype) Spracherkennungssoftware
2. Aufbau/Implementierung des Algorithmus Vorstellung Algorithmus EUSIPCO (European Signal Processing Conference 2009) einfach implementierbar Effizient in Laufzeit Echtzeit-Verarbeitung Entwicklung University of Technology, Teheran, Iran M. H. Moattar / M. M. Homayounpour 3 wichtige Features zur Erkennung von Sprache: Short-Time Energy Most Dominant Frequency Component Spectral Flatness Measure
2.1. allgemeiner Aufbau Größe jedes Frames = 10ms Framing der Sprachdaten aus WAVE-Sounddatei RIFF-Header/DATA Ermittlung der Anzahl der Frames z.b. bei 7,8 sec ca. 670 KByte
2.1. allgemeiner Aufbau ersten 30 Frames zur Initialisierung/Lernen Rauschen erlernen keine Sprache enthalten Erkennung von Sprache durch 3 Features für jedes Frame Vergleich mit den Referenzwerte(Tresholds) Markierung der Frames als Sprache/Rauschen
2.2. Fourier-Transformation Mathematiker: Jean Baptiste Joseph Fourier geb. 1768 Methode der Fourier-Analysis Jahr 1822 Fourier-Reihen vier verschiedene Arten von Fourier-Transformation DFT ( Distrekte Fourier-Transformation) Eingangsdaten: Signale aus Zeit-Domäne Zerlegung in Teilwellen» unter anderem Sinus oder Kosinus oder Kombination Umwandlung in eine Frequenz-Domäne sehr nützlich in der Signalverarbeitung» Bestimmung vorkommender Frequenzen in abgetasteten Signal» Bestimmung der einzelnen Amplituden zu diesen Frequenzen
2.2. Fourier-Transformation inverser DFT Rekonstruktion des Signales FFT ( Fast Fourier-Transformation) James Cooley / John W. Tukey Jahr 1965 basiert auf DFT schnellere Berechnung / weniger Rechenaufwand Berechnung von Zwischenergebnisse inverser FFT Rekonstruktion des Signales Gleicher Berechnung wie DFT
2.3. Short-Time Energy ermittelt den Energieerhalt des aktuellen Frames Quadrierung der Wave-Daten und Aufsummierung E( i) = N x= 0 Wi( x ) 2 Effizienz dieser Funktion Erkennung bei alleiniger Benutzung zu gering
2.4. Most Dominant Frequency Component aufbauend auf der Fourier- Transformation Finden des dominantesten Frequenzanteils F( i) = arg max k S( k) Funktion zur Erkennung ob Sprachaktivität in Frame herrscht bzgl. mit Frame-Energy noch zu ungenau
2.5. Spectral Flatness Measure aufbauend auf Fourier-Transformation Maß, wie sehr Energie des Signals über verschiedenen Frequenzen verteilt ist SFM ( i) N N 1 n= 0 = N 1 n= 0 xi( n) N xi( n) wird unter anderem in db gegemessen erstellt: Robert Schaar s63012
Tresholds werden bei ersten 30 Frames ermittelt Optimierung weiterhin während Laufzeit Vergleich von den drei ermittelten Features jedes Frames mit ermittelten Tresholds Markierung des Frames als: Sprache wenn mind. 2 Features Schwellenwert überschreitet Rauschen wenn 2 Features Schwellenwert unterschreitet
3. Implementierung im Workshop Implementierung in Skriptsprache PHP für VAD-Prototyp Klasse Wave, FFT, SimpleVAD gewohnte Entwicklungsumgebung Fast lauffähige Anwendung Derzeitiges Problem: Spectral Flatness Measure nicht 100% geeignet für VAD-Algorithmus Performance-Leistung bei Fourier-Transformation Berechnung t > 5min Sprachbasierte Rundungsfehler bei geometrischen Mittel Spätere Konvertierung in MATLAB Vorgefertigte Funktion von MATLAB: Fourier-Transformation Einlesen der WAVE-Datei schnellere Ermittlung des E und SFM erstellt: Robert Schaar s63012 Mensch-Maschine-Robotik
4. Quellen http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.176.6740 http://en.wikipedia.org/wiki/spectral_flatness http://www.dspdimension.com/admin/dft-a-pied/ http://en.wikipedia.org/wiki/voice_activity_detection http://www-sipl.technion.ac.il/new/teaching/projects/winter2006/effcient %20Voice%20Activity%20Detection%20Algorithms%20Using%20Long- Term%20Speech%20Information.pdf
Vielen Dank für Eure Aufmerksamkeit