Forums

Filters for Noise cancelation

Started by ashw...@yahoo.co.in October 11, 2010
Hello,

I require some guidance regarding the filters to be used for removing noise from Audio files. I have been given a set of noisy Audio files as part of my assignment. I have to use different filters design to remove the noise from Audio files. I have used matlab to obtain the frequency response of the noisy audio signals and determine characteristics of the noisy signal. However I am not sure about the filter to be used for removing the Noise.

The Audio signals is spread in the frequency range of 0 to 1Khz.The characteristics of Noisy signals is as given below

1) Beeps in speech.

Noise signals at frequency 500 and 900hz. I have used notch filters at these frequency and it appears to be working fine.

2) constant background noise

Noise signal at frequency of 1Khz. I was able to remove this by using a low pass filter of cut-off frequency 1Khz.

3) Engine noise

Very high amplitude noise at frequency 200Hz. Need some guidance here as removing signal at frequency of 200Hz degrades the audio quality.

4) Bumble noise

Noise signals spread in the frequency spectrum from 0 to 3.5khz. The amplitude of noise signal is not as high as engine noise, however it appears to be at 200, 500, 750,850 ... Hz (Harmonic noise). Some guidance will be helpful here.

Best regards,
Ashwin
Ashwin-

For 3), what is the relative amplitude (compared to your speech signal) and bandwidth of the noise? In other words,
give a precise characterization of this noise.

-Jeff
> I require some guidance regarding the filters to be used for removing noise from Audio files. I have been given a set
> of noisy Audio files as part of my assignment. I have to use different filters design to remove the noise from Audio
> files. I have used matlab to obtain the frequency response of the noisy audio signals and determine characteristics of
> the noisy signal. However I am not sure about the filter to be used for removing the Noise.
>
> The Audio signals is spread in the frequency range of 0 to 1Khz.The characteristics of Noisy signals is as given below
>
> 1) Beeps in speech.
>
> Noise signals at frequency 500 and 900hz. I have used notch filters at these frequency and it appears to be working
> fine.
>
> 2) constant background noise
>
> Noise signal at frequency of 1Khz. I was able to remove this by using a low pass filter of cut-off frequency 1Khz.
>
> 3) Engine noise
>
> Very high amplitude noise at frequency 200Hz. Need some guidance here as removing signal at frequency of 200Hz
> degrades the audio quality.
>
> 4) Bumble noise
>
> Noise signals spread in the frequency spectrum from 0 to 3.5khz. The amplitude of noise signal is not as high as
> engine noise, however it appears to be at 200, 500, 750,850 ... Hz (Harmonic noise). Some guidance will be helpful
> here.
>
> Best regards,
> Ashwin
Hello,

I would suggest to try and use a Wiener filter for your assignment. A very good starting code is on the Mathworks homepage. You can fing the filter descriptions all over the net, so you can easily addapt your code to handle your task.

Paul

Hello,
>
>I require some guidance regarding the filters to be used for removing noise from Audio files. I have been given a set of noisy Audio files as part of my assignment. I have to use different filters design to remove the noise from Audio files. I have used matlab to obtain the frequency response of the noisy audio signals and determine characteristics of the noisy signal. However I am not sure about the filter to be used for removing the Noise.
>
>The Audio signals is spread in the frequency range of 0 to 1Khz.The characteristics of Noisy signals is as given below
>
>1) Beeps in speech.
>
>Noise signals at frequency 500 and 900hz. I have used notch filters at these frequency and it appears to be working fine.
>
>2) constant background noise
>
>Noise signal at frequency of 1Khz. I was able to remove this by using a low pass filter of cut-off frequency 1Khz.
>
>3) Engine noise
>
>Very high amplitude noise at frequency 200Hz. Need some guidance here as removing signal at frequency of 200Hz degrades the audio quality.
>
>4) Bumble noise
>
>Noise signals spread in the frequency spectrum from 0 to 3.5khz. The amplitude of noise signal is not as high as engine noise, however it appears to be at 200, 500, 750,850 ... Hz (Harmonic noise). Some guidance will be helpful here.
>
>Best regards,
>Ashwin
Hello Paul,Jeff,

Thanks for the information provided. Some more info about noise signals characteristic are provided below:

3) Engine noise - The noise amplitude is 2*10^5 at 200 Hz and the signal amplitude is around 2500 at 200Hz. The noise signals is only at this frequency.

4) Bumble Noise - The max noise amplitude is around 650 at 500Hz, However it is observed that the noise signals are distributed as a decaying sinusoidal wave with maximum amplitude at 500Hz.

I am not sure if I can attach the frequency response, Kindly let me know if it is possible.

Best regards,
Ashwin

Hello,
>
>I require some guidance regarding the filters to be used for removing noise from Audio files. I have been given a set of noisy Audio files as part of my assignment. I have to use different filters design to remove the noise from Audio files. I have used matlab to obtain the frequency response of the noisy audio signals and determine characteristics of the noisy signal. However I am not sure about the filter to be used for removing the Noise.
>
>The Audio signals is spread in the frequency range of 0 to 1Khz.The characteristics of Noisy signals is as given below
>
>1) Beeps in speech.
>
>Noise signals at frequency 500 and 900hz. I have used notch filters at these frequency and it appears to be working fine.
>
>2) constant background noise
>
>Noise signal at frequency of 1Khz. I was able to remove this by using a low pass filter of cut-off frequency 1Khz.
>
>3) Engine noise
>
>Very high amplitude noise at frequency 200Hz. Need some guidance here as removing signal at frequency of 200Hz degrades the audio quality.
>
>4) Bumble noise
>
>Noise signals spread in the frequency spectrum from 0 to 3.5khz. The amplitude of noise signal is not as high as engine noise, however it appears to be at 200, 500, 750,850 ... Hz (Harmonic noise). Some guidance will be helpful here.
>
>Best regards,
>Ashwin
Ashwin-

> Thanks for the information provided. Some more info
> about noise signals characteristic are provided below:
>
> 3) Engine noise - The noise amplitude is 2*10^5 at 200
> Hz and the signal amplitude is around 2500 at 200Hz. The
> noise signals is only at this frequency.

If you're saying the engine noise is basically a "tall spike" then you might try a sharp notch (bandstop) filter. If
you use an IIR filter type, then you would need a fairly high filter order to keep the filter width narrow with nearly
vertical edges. Speech would not be affected except in the one case where a particular speaker happens to have a
natural pitch exactly at 200 Hz.

> 4) Bumble Noise - The max noise amplitude is around 650
> at 500Hz, However it is observed that the noise signals are
> distributed as a decaying sinusoidal wave with maximum
> amplitude at 500Hz.

This one is obviously tougher. It seems that you can model the shape of the noise in the freq domain, so you might
try a technique based on freq domain subtraction followed by inverse FFT. That has to be done carefully; you must
account for both freq and phase changes after modifications, otherwise you can end up with phase discontinuities in
your time domain signal. Suggest to search on "spectral subtraction" -- a popular topic.

To get a better "bumble noise" model, you might try running silence through your noise sources, or if that won't work
because you only have the sample waveforms (signal + noise combined) then look for places where speech is relatively
quiet or there is a pause between words or sentences.

-Jeff

> Hello,
>>
>>I require some guidance regarding the filters to be used for removing noise from Audio files. I have been given a set
>> of noisy Audio files as part of my assignment. I have to use different filters design to remove the noise from Audio
>> files. I have used matlab to obtain the frequency response of the noisy audio signals and determine characteristics
>> of the noisy signal. However I am not sure about the filter to be used for removing the Noise.
>>
>>The Audio signals is spread in the frequency range of 0 to 1Khz.The characteristics of Noisy signals is as given
>> below
>>
>>1) Beeps in speech.
>>
>>Noise signals at frequency 500 and 900hz. I have used notch filters at these frequency and it appears to be working
>> fine.
>>
>>2) constant background noise
>>
>>Noise signal at frequency of 1Khz. I was able to remove this by using a low pass filter of cut-off frequency 1Khz.
>>
>>3) Engine noise
>>
>>Very high amplitude noise at frequency 200Hz. Need some guidance here as removing signal at frequency of 200Hz
>> degrades the audio quality.
>>
>>4) Bumble noise
>>
>>Noise signals spread in the frequency spectrum from 0 to 3.5khz. The amplitude of noise signal is not as high as
>> engine noise, however it appears to be at 200, 500, 750,850 ... Hz (Harmonic noise). Some guidance will be helpful
>> here.
>>
>>Best regards,
>>Ashwin