Forum: Mikrocontroller und Digitale Elektronik Mikrofon an Controller -> Filtern in Software?


von Ralf (Gast)


Lesenswert?

Hallo,

ich möchte das Ausgangssignal eines Mikrofonverstärkers am Controller 
einlesen und damit ein paar LEDs ansteuern. Im Prinzip ähnlich wie ein 
VU-Meter, allerdings möchte ich nicht unbedingt exakt die Lautstärke 
wieder geben. Es geht eher darum auf Sprache zu reagieren.

Die Schaltung und Firmware funktionieren bereits wie erwartet. Jetzt kam 
mir die Idee, dass ich nun eigentlich auch mal mit Filtern in Software 
spielen könnte, um zum Beispiel nur auf Sprache und nicht auf "alles" zu 
reagieren.

Soweit ich das im Hinterkopf habe, liegt das obere Limit beim normalen 
Sprechen bei etwa 2kHz. Wie lauten die Stichwörter, die ich für die 
Suche nach solch einen Filter brauche? Die FIR/IIR-Filterbeschreibungen, 
die ich hier auf der Website gefunden habe zeigen mir nicht, wann ich 
welchen Filter brauche bzw. ob diese überhaupt für mich geeignet sind.

Ralf

von Ben W. (ben_w)


Lesenswert?

das Stichwort ist wohl VAD (voise activity detection)

dazu hatte ich mir mal ein paar opensource Spracherkennungsprogramme 
angeschaut. Die meisten haben einfach nur einen Threshold auf die 
Amplitude.
Einige wenige machen ein FFT Profil vom Signal und haben eine "magische" 
datenbank hinterlegt, mit der sie meinen zwischen Sprache und rauschen 
zu unterscheiden.

von Svenska (Gast)


Lesenswert?

Mit 4 kHz Abtastrate (also 2 kHz Frequenz) bekommt man eine 
verständliche Kommunikation hin, aber ein 's' geht schon bis in den 
zweistelligen Bereich. Deswegen ist es auch so anstrengend, per Telefon 
zu buchstabieren.

Normalerweise reagiert man erstmal auf alles (Amplitude) und versucht 
dann, daraus eine sinnvolle Lautfolge zu generieren. Klappt das nicht, 
war's wohl keine Sprache. Wie man das vorher erkennen kann, weiß ich 
nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.