Time
domain:
Frequency
domain:
Butter worth Filter:
Specifications:
I used Butter worth
filter of following specification:
Type: Band pass
Order: 2
Start Frequency: 100
Hz
Stop Frequency: 300
Hz
These frequencies
are normalized with Fs/2 so that can between 0 and 1. i-e:
Start Frequency:
100/ (Fs/2) = 100/ (48000/2) = 0.00467 Hz
Stop Frequency: 300/
(Fs/2) = 300/ (48000/2) = 0.00625 Hz
I choose these set
of frequencies to minimize the high frequency noise which is starting above
1100 Hz. Our desired signal is below 1000 Hz (Human voice) which we want to
extract. I started by choosing different set of frequencies such as
Start freq : 100 Hz
, Stop freq : 900Hz Start freq : 100 Hz , Stop freq : 800Hz
Start freq : 100 Hz
, Stop freq : 700Hz Start freq : 100 Hz , Stop freq : 600Hz
Start freq : 100 Hz
, Stop freq : 500Hz And got the best noise reduction at : Start freq : 100 Hz ,
Stop freq : 300Hz So I selected these frequencies.
Transfer function:
0.0001682 - 0.0003364 z^-2 + 0.0001682 z^-4
------------------------------------------------------------------------
1 - 3.962 z^-1 + 5.888 z^-2 - 3.889 z^-3 +
0.9637 z^-4
Frequency Response
of Butter worth filter:
Filtered Signal:
Time Domain:
Frequency Domain:
Comparison:
The transition (cut
off region) of Butterworth filter is not as sharp as in the case of FIR filters
so high frequencies are not decreased completely as shown in the figure, so to
completely get rid of these frequencies and cutting human voice signal I used a
low pass FIR filter of cut off frequency 1100 Hz on the output of Butterworth
filter.
Visual Comparison:
Original signal
After applying
Butter worth Filter:
After applying low
pass FIR Filter:
Hidden Message:
“Forgive me if don’t
shake hand.” Tombstone