Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC Diana Bindrich, diana13th@yahoo.de Stephan...

Post on 05-Apr-2015

104 views 2 download

Transcript of Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC Diana Bindrich, diana13th@yahoo.de Stephan...

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Diana Bindrich, diana13th@yahoo.deStephan Lehmann, uni@stephanlehmann.net

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

Stimmbänder schwingen

stimmhafter Laut

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

Stimmbänder schwingen

Stimmbänder schwingen nicht

stimmhafter Laut stimmloser Laut

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

Stimmbänder schwingen

Stimmbänder schwingen nicht

stimmhafter Laut stimmloser Laut

Weitere Artikulierungdurch den Rachenraum

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

Stimmbänder schwingen

Stimmbänder schwingen nicht

stimmhafter Laut stimmloser Laut

Weitere Artikulierungdurch den Rachenraum

Sprachsignal s(n)

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

Stimmbänder schwingen

Stimmbänder schwingen nicht

stimmhafter Laut stimmloser Laut

Weitere Artikulierungdurch den Rachenraum

Sprachsignal s(n)

800 bis 1600 Hz 2400 bis 3200 Hz

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Luft kommt aus den Lungen

strömt an den Stimmbändern vorbei

Stimmbänder schwingen

Stimmbänder schwingen nicht

stimmhafter Laut stimmloser Laut

Weitere Artikulierungdurch den Rachenraum

Sprachsignal s(n)

800 bis 1600 Hz 2400 bis 3200 Hz

Grundfrequenz50 bis 400 Hz

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

stimmhafter Laut stimmloser LautSprachsignal s(n)

800 bis 1600 Hz 2400 bis 3200 Hz

50 bis 400 Hz

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

stimmhafter Laut stimmloser LautSprachsignal s(n)

800 bis 1600 Hz 2400 bis 3200 Hz

50 bis 400 Hz

Abtastung mit 8 kHz zulässig

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

H(z) Sprachsignal

Rauschen

Periodische Impulse

Verstärkungstimmhaft

stimmlos

LPC- Filter

Vereinfachtes Modell zur Spracherzeugung

G

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

H(z) Sprachsignal

Rauschen

Periodische Impulse

Verstärkungstimmhaft

stimmlos

LPC- Filter

Vereinfachtes Modell zur Spracherzeugung

G

1 21 2

1( )

1 ... pp

H za z a z a z

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

H(z) Sprachsignal

Rauschen

Periodische Impulse

Verstärkungstimmhaft

stimmlos

LPC- Filter

Vereinfachtes Modell zur Spracherzeugung

G

StimmbänderRachenraum

Luftstrom aus der Lunge

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

H(z) Sprachsignal

Rauschen

Periodische Impulse

Verstärkungstimmhaft

stimmlos

LPC- Filter

Vereinfachtes Modell zur Spracherzeugung

G

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Parameter ändern sich beim Sprechen

Modell mit einem festen Parametersatz nur zur Beschreibung sehr kurzer Sprachstücke geeignet

ca. 20 ms

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Abtastung mit 8 kHz

8 Bit/sample

8000 samples/s x 8 Bit/sample

= 64 kBit/s

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Ein Satz Parameter beschreibt nur 20 ms

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Ein Satz Parameter beschreibt nur 20 ms

160 samples pro 20 ms

8000 samples/s

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Ein Satz Parameter beschreibt nur 20 ms

160 samples pro 20 ms8 Bit/sample

8000 samples/s

1280 Bit pro 20 ms

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Stimmhafte Laute:•hohe Energie•weniger Nulldurchgänge da Frequenzbereich niedriger

Stimmlose Laute:•niedrige Energie•Viele Nulldurchgänge

Frequenzbereich: 800 bis 1600 Hz

Frequenzbereich: 2400 bis 3200 Hz

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Energie: 598 Nulldurchgänge: 83

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Energie: 88844 Nulldurchgänge: 14

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Energie: 2690 Nulldurchgänge 8

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Energie 4677 Nulldurchgänge 102

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Die Aufgaben des Octave- Skripts detect.m

1. Sprachsignal einlesen und in 160 samples lange frames aufteilen

2. frame an den dsPIC senden

3. LPC- Parameter vom dsPIC empfangen

4. Mittels empfangenem Gain und Pitch Eingangssignal erzeugen

5. Eingangssignal durch das Filter modulieren lassen

6. Punkt 2-5 mit allen frames wiederholen

7. Alle so neu erzeugten frames zusammenfügen und in Wave- Datei abspeichern

Kompression durch den dsPIC

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

PausenerkennungOctave

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

(0) (1) (2) (3) (4) (5) (6) (7) (8) (9)

(1) (0) (1) (2) (3) (4) (5) (6) (7) (8)

(2) (1) (0) (1) (2) (3) (4) (5) (6) (7)

(3) (2) (1) (0) (1) (2) (3) (4) (5) (6)

(4) (3) (2) (1) (0) (1) (2) (3) (4) (5)

R R R R R R R R R R

R R R R R R R R R R

R R R R R R R R R R

R R R R R R R R R R

R R R R R R R R R R

(5) (4) (3) (2) (1) (0) (1) (2) (3) (4)

(6) (5) (4) (3) (2) (1) (0) (1) (2) (3)

(7) (6) (5) (4) (3) (2) (1) (0) (1) (2)

(8) (7) (6) (5) (4) (3) (2) (1) (0) (1)

(9) (8) (7) (6) (5) (4) (3) (2) (1) (0)

R R R R R R R R R R

R R R R R R R R R R

R R R R R R R R R R

R R R R R R R R R R

R R R R R R R R R R

1

2

3

4

5

6

7

8

9

10

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

(10)

a R

a R

a R

a R

a R

a R

a R

a R

a R

a R

159

0( ) ( ) ( )

nR k s n s n k

Gleichungssystem zur Bestimmung der Filterkoeffizienten

mit

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

2

1

(0) ( )p

kk

G R a R k

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

Entscheidung stimmlos/stimmhaft

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

Entscheidung stimmlos/stimmhaft

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

1

0

1( ) ( )

N

k

AMDF k s n s n kN

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

Entscheidung stimmlos/stimmhaft

pitch=T

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

T

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

Entscheidung stimmlos/stimmhaft

pitch=0 pitch=T

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

T

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIChl_LPC

Nulldurchgänge zählen

LPC- Koeffizienten

Bestimmung des Gain

Entscheidung stimmlos/stimmhaft

pitch=0 pitch=T

Zurücksenden vonKoeffizienten, Gain, Pitch

LevinsonDurbin

AMDF

Autokorrelation

getPitch

findMin

T

ak

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

12 Werte (Koeffs, Gain, Pitch) statt 160

Parameterkompression 160/12 = 13,3

Kompression

ABER:

• Parameter haben andere Wertebereiche

• Gleitkommazahlen für LPC-Parameter haben 32 Bit

• Samples des Signals 8 Bit

• 1280Bit/384 Bit Kompression 3,3

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Optimierung

•Durch geeignete Kodierung der Parameter runter bis 48 Bit mgl -> k=26,6

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Optimierungsmöglichkeiten

Verfahren funktioniert, hat aber Schwächen:• Qualität • Laufzeit

Also:• Andere Koeffizientenverfahren• Weitere Sicherheitsmechanismen• Erweiterungen z.B. CELP (Optimierung über anderes Filtereingangssignal)

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

• Menschliche Sprache

• Modell zur Spracherzeugung

• Speicherplatz

• Unterscheidung stimmhafter und stimmloser Laute

• Umsetzung des Modells auf dem dsPIC

• Optimierungsansätze

• Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Beispiel

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

„Grab every dish of sugar.“

IV Messdatenverarbeitung mit Wavelets – Abschlussprojekt

Komprimierung von Sprachdaten mit LPC10 auf einem dsPIC

Vielen Dank für die Aufmerksamkeit!