Forum: Digitale Signalverarbeitung / DSP / Machine Learning DSP Filter Rauschunterdrückung


von Sascha (Gast)


Lesenswert?

Hallo,
wer kennt effektive DSP algorithmen, um rauschen aus der Sprache heraus 
zu filtern? Es geht um eine Funkanwendung im Sprachfrequenzbereich 
300-3000Hz.
Würde da noch ganz gerne auf meinem Cortex M7 einen Rauschfilter 
realisieren.
Habe aber in die DSP Richtung noch keine Versuche gemacht.

Gruß Sascha

von ?!? (Gast)


Lesenswert?

http://www.hoerfabric.de/2/Technologie/
http://www.youtube.com/watch?v=zSAm44xABto

Die werden den Algorithmus zwar nicht rausrücken, aber vielleicht kann 
man sich Anregungen holen für eigene Gedanken. Auf der Webseite ist auch 
einiges beschrieben. Und ein Hörbeispiel ist auch angehängt.

von sa (Gast)


Lesenswert?

Literatur:
Vaseghi, Saeed V. Advanced digital signal processing and noise 
reduction. John Wiley & Sons, 2008.

Gibt viel wissenschaftliche Literatur auf scholar.google.de

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?


von Tobias P. (hubertus)


Lesenswert?

Wenn die Varianz vom Rauschen bekannt ist, dann kann man ein 
Wiener-Filter benutzen.
Wenn sie nicht bekannt ist, dann kriegt man das Rauschen auch weg mit 
einem LMS oder NLMS Filter. Als Eingangssignal fürs Filter verwendet man 
das Sprachsignal, und als Referenzsignal benutzt man das um einige 
Abtastperioden verzögerte Sprachsignal. Da das Rauschen nahezu 0 
Autokorrelation besitzt, das Sprachsignal aber schon, bringt man das 
Rauschen so weg. Hab ich selbst mal in Simulink und auf einem kleinen 
DSP implementiert.

von Sascha (Gast)


Lesenswert?

Hallo,
und schon mal vielen Dank für die Diskussion und Anregungen.
Ich habe die Komplexität zwar schon geahnt, aber es ist doch ein ganz 
ordentliches Thema muss ich feststellen.
Werde eins nach dem anderen nachlesen und auf implementierbarkeit 
prüfen.
Da die DSP Leistung meines Controllers nicht ins unendliche reicht sind 
doch deutliche Grenzen gesetzt.

Gruß Sascha

von Horst (Gast)


Lesenswert?

Sascha schrieb:
> Hallo,
> und schon mal vielen Dank für die Diskussion und Anregungen.
> Ich habe die Komplexität zwar schon geahnt, aber es ist doch ein ganz
> ordentliches Thema muss ich feststellen.
> Werde eins nach dem anderen nachlesen und auf implementierbarkeit
> prüfen.
> Da die DSP Leistung meines Controllers nicht ins unendliche reicht sind
> doch deutliche Grenzen gesetzt.
>
> Gruß Sascha

Naja, also bei "lahmer" Sprachverarbeitung ist die DSP Leistung eines 
Cortex M7 schon als ungefähr unendlich anzunehmen, wenn man nicht nach 
Matlab-Manier drauf los programmiert.

von Sascha (Gast)


Lesenswert?

Hallo,
Horst du machst mir Mut, ich programmiere den CM7 was DSP angeht 
komplett in Assembler. Das Ding ist schon schnell, nur weis ich nicht 
was die FFT und IFT so verschlingt?

Gruß Sascha

von Gerrit B. (gbuhe)


Lesenswert?

Hallo Sascha,

für ein adaptives FIR-Filter mit LMS-Algorithmus benötigst Du keine FFT 
(siehe Vorschlag Hubertus oben). Die Adaption der Filterkoeffizienten 
erfolgt rein im Zeitbereich.

Damit würde ich das Problem angehen.

Viele Grüße und viel Erfolg!

Gerrit

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.