Forums

filtering out background noise

Started by kcchesnut February 14, 2005
i've only done really basic work with audio ... so i'm not even sure
what to call this?

what i want to do is be able to take audio input from a microphone and
filter out background noise. e.g. if i'm in my car and have music
playing but also want to do speech recognition with a mic. the mic
would get my spoken command along with the music being played. then i
would have a separate feed of just the music that was being played. so
that somehow i could do some processing to filter out the music from
the mic feed and only have the spoken audio left.

what is the proper name for this process?

are there any links that i should look at first?

Thanks,
casey
http://www.brains-N-brawn.com

"kcchesnut" <casey@brains-n-brawn.com> wrote in message
news:1108396894.217960.136470@o13g2000cwo.googlegroups.com...
> i've only done really basic work with audio ... so i'm not even sure > what to call this? > > what i want to do is be able to take audio input from a microphone and > filter out background noise. e.g. if i'm in my car and have music > playing but also want to do speech recognition with a mic. the mic > would get my spoken command along with the music being played. then i > would have a separate feed of just the music that was being played. so > that somehow i could do some processing to filter out the music from > the mic feed and only have the spoken audio left. > > what is the proper name for this process? >
adaptive noise cancellation (sometimes ANC).
> are there any links that i should look at first? > > Thanks, > casey > http://www.brains-N-brawn.com >
If you google "noise reduction", "improving SNR (Signal to
Noise Ratio)", "Intelligibility", "robustness", "Spectral
subtraction", " Active noise cancellation", you will get
about 10^8 hits.

This is a problem that has plagued Automatic Speech
Recognition and audio communications for decades.  It can be
attacked in a number of ways- mic type, mic placement, mouth
to mic distance, number of mics, acoustic damping, signal
processing (which is near and dear to this list, but
certainly not the only way to deal with it), improved rules
and heuristics in the recognition engine, etc.  BTW, if you
can feed the inverse of the music spectrum (which you have
an approximation of) into the speech + music + noise
spectrum you can cancel a lot of the music, but not the
additional noise.

Welcome to the club.  If you solve it, let us know.
Meanwhile have fun learning and experimenting.

-- 
Chip Wood

"kcchesnut" <casey@brains-n-brawn.com> wrote in message
news:1108396894.217960.136470@o13g2000cwo.googlegroups.com...
> what i want to do is be able to take audio input from a
microphone and
> filter out background noise. e.g. if i'm in my car and
have music
> playing but also want to do speech recognition with a mic.
kcchesnut wrote:

> i've only done really basic work with audio ... so i'm not even sure > what to call this? > > what i want to do is be able to take audio input from a microphone and > filter out background noise. e.g. if i'm in my car and have music > playing but also want to do speech recognition with a mic. the mic > would get my spoken command along with the music being played. then i > would have a separate feed of just the music that was being played. so > that somehow i could do some processing to filter out the music from > the mic feed and only have the spoken audio left. > > what is the proper name for this process?
Magic. There are, however, microphones that inherently reject signals that don't originate very close to them.
> are there any links that i should look at first?
Google for noise-canceling microphones. Jerry -- Engineering is the art of making what you want from things you can get. &#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;&#2013266095;
hi, 

car-noise and music might require 
separate and different handling. 

car-noise can be reduced by 
spectral subtraction.

for the music i'd google for 
source-separation or better 
have a look into papers about 
echo-cancelling. 
a seperate feed of 'clean' music 
will help much, but be aware that 
you will receive a delayed and 
heqavyly equalized signal from 
the mic. 



hope it helps, 

carsten neubauer
http://www.c14sw.de



"kcchesnut" <casey@brains-n-brawn.com> wrote in message news:<1108396894.217960.136470@o13g2000cwo.googlegroups.com>...
> i've only done really basic work with audio ... so i'm not even sure > what to call this? > > what i want to do is be able to take audio input from a microphone and > filter out background noise. e.g. if i'm in my car and have music > playing but also want to do speech recognition with a mic. the mic > would get my spoken command along with the music being played. then i > would have a separate feed of just the music that was being played. so > that somehow i could do some processing to filter out the music from > the mic feed and only have the spoken audio left. > > what is the proper name for this process? > > are there any links that i should look at first? > > Thanks, > casey > http://www.brains-N-brawn.com
Jerry Avins wrote:

> kcchesnut wrote: > > >>i've only done really basic work with audio ... so i'm not even sure >>what to call this? >> >>what i want to do is be able to take audio input from a microphone and >>filter out background noise. e.g. if i'm in my car and have music >>playing but also want to do speech recognition with a mic. the mic >>would get my spoken command along with the music being played. then i >>would have a separate feed of just the music that was being played. so >>that somehow i could do some processing to filter out the music from >>the mic feed and only have the spoken audio left. >> >>what is the proper name for this process? > > > Magic. There are, however, microphones that inherently reject signals > that don't originate very close to them. > > >>are there any links that i should look at first? > > > Google for noise-canceling microphones. > > Jerry
I would also recommend posting your question on comp.speech.users paying particular attention to responses of Martin Markoe <martin@emicrophones.com> I'd also discount a troll who disagrees with anything Martin says just because Martin said it ;] Seriously, this is an ongoing topic on that group that I'm not qualified to contribute.
Excellent information, Carsten.  To expand just a bit, for the music component, 
the system can "know" what the noise will sound like--it is the music signal 
filtered through the transfer function created by the amplifier, speakers, 
interior acoustics, microphone, etc..  This makes it possible to use fairly 
straightforward adaptive filtering techniques which find and mimic the system 
transfer function.  Search on "acoustic echo canceller" for more on this.  Car 
noise, road noise, other people talking, etc. are unknown noise sources and 
hence require different techniques.

"Carsten Neubauer" <cn@c14sw.de> wrote in message 
news:48888e7a.0502141205.4920664d@posting.google.com...
> hi, > > car-noise and music might require > separate and different handling. > > car-noise can be reduced by > spectral subtraction. > > for the music i'd google for > source-separation or better > have a look into papers about > echo-cancelling. > a seperate feed of 'clean' music > will help much, but be aware that > you will receive a delayed and > heqavyly equalized signal from > the mic. > > > > hope it helps, > > carsten neubauer > http://www.c14sw.de > > > > "kcchesnut" <casey@brains-n-brawn.com> wrote in message > news:<1108396894.217960.136470@o13g2000cwo.googlegroups.com>... >> i've only done really basic work with audio ... so i'm not even sure >> what to call this? >> >> what i want to do is be able to take audio input from a microphone and >> filter out background noise. e.g. if i'm in my car and have music >> playing but also want to do speech recognition with a mic. the mic >> would get my spoken command along with the music being played. then i >> would have a separate feed of just the music that was being played. so >> that somehow i could do some processing to filter out the music from >> the mic feed and only have the spoken audio left. >> >> what is the proper name for this process? >> >> are there any links that i should look at first? >> >> Thanks, >> casey >> http://www.brains-N-brawn.com
Your best bet for a good noise canceler is probably at Compandent:
http://www.compandent.com/products_anc.htm
They have a nice demo there, which sounds pretty good and can give you 
an idea of how those Noise Cancelers sound like in the presence of car 
noise for example.

VNG


kcchesnut wrote:
> i've only done really basic work with audio ... so i'm not even sure > what to call this? > > what i want to do is be able to take audio input from a microphone and > filter out background noise. e.g. if i'm in my car and have music > playing but also want to do speech recognition with a mic. the mic > would get my spoken command along with the music being played. then i > would have a separate feed of just the music that was being played. so > that somehow i could do some processing to filter out the music from > the mic feed and only have the spoken audio left. > > what is the proper name for this process? > > are there any links that i should look at first? > > Thanks, > casey > http://www.brains-N-brawn.com >