Zunächst sollten Sie das gestörte Audiosignal laden und eine Fourier-Transformation durchführen, um das Spektrum des Signals zu erhalten. Danach können Sie die inverse Fourier-Transformation (IFFT) verwenden, um das Signal wieder in den Zeitbereich zurückzuverwandeln und das ungestörte Audiosignal zu erhalten.
Hier ist der Code, um eine IFFT in MATLAB durchzuführen und das ungestörte Signal über den Lautsprecher auszugeben:
main.m500 chars18 lines
Hier gehen wir davon aus, dass das gestörte Signal in der Datei "gestoertes_signal.wav" gespeichert ist und dass das Abtastrate des Signals in der Variable "Fs" gespeichert ist.
In der IFFT-Zeile verwenden wir die "ifft" -Funktion und geben das bereinigte Y-Spektrum ein. Ein wichtiger Schritt ist das Entfernen der Störungen im Frequenzbereich, die durch Setzen der ersten 10% des Spektrums auf Null erfolgt.
Am Ende kann das ungestörte Signal mit Hilfe der "sound" -Funktion abgespielt werden.
gistlibby LogSnag