Forums

Wavelets

Started by sanindland July 17, 2006
hi there, 

I tried to display the audio signal from WAV file, which is in real time
domain. I have to identify the the noise position, it's time and how much
is the amount of noise presented. For that I decided to transform those
time domain signals into frequency domain signals with the help of DWT,
since I want to know the position and level of noise wrt. milliseconds. I
tried to implement it with different types of Wavelets(Daubechies,
Morlet,....) using Mallat's algorithm using Visual Basic. I got struck
while I want to use these real time signals as input arrays in my
equations. On analysing these factors I have decided in buying Wavelet &
Signal processing extension Package for Mathcad (However, buying Matlab is
not an option in my case). 

Can anyone help me with ideas/ suggestions/ just direct me in the right
path 

Thanks in advance, 
San
sanindland wrote:
> hi there, > > I tried to display the audio signal from WAV file, which is in real time > domain. I have to identify the the noise position, it's time and how much > is the amount of noise presented.
"Noise" is a very general term. I guess since you are interested in locality, you are looking for short bursts of "outliers" (clicks, transients). Just recently, somebody posted this link, which might be helpful for detection of such events: "Detection of Abrupt Changes" http://www.irisa.fr/sisthem/kniga/
> For that I decided to transform those > time domain signals into frequency domain signals with the help of DWT, > since I want to know the position and level of noise wrt. milliseconds. I > tried to implement it with different types of Wavelets(Daubechies, > Morlet,....) using Mallat's algorithm using Visual Basic. I got struck > while I want to use these real time signals as input arrays in my > equations. On analysing these factors I have decided in buying Wavelet & > Signal processing extension Package for Mathcad (However, buying Matlab is > not an option in my case). > > Can anyone help me with ideas/ suggestions/ just direct me in the right > path
To be more specific, you have to write more about what kind of "noises" you are looking for, and in what kind of "signals" they are embedded in. Detection via DWT is just one of many feasible paths. Sometimes, much simpler methods are adequate. Regards, Andor
>"Noise" is a very general term. I guess since you are interested in >locality, you are looking for short bursts of "outliers" (clicks, >transients).
Hi Andor, Thanks for your response. To be more precise in my question, I have recorded the audio signals (normal songs) from different receiver systems and I have to study the characteristics of the receiver system. Hence, I would like to compare the audio qualities by identifying amount of noise. (IAM NOT CLEAR: I think that the audible noise from 20Hz -20KHz is the major difference and one can't hear the noise above these audible freq. range and hence makes no difference in audio qualities. These noise may be Crackss, humm or hissing sound,......other than wanted music signal) For this I have decided to do frequency domain transformation and I would like to know what noise (as frequencies) at what time(resolution in ms). Again a question arises how to differentiate noise from the required signal Just recently, somebody posted this link, which might be
>helpful for detection of such events: >"Detection of Abrupt Changes" >http://www.irisa.fr/sisthem/kniga/
Thanks for the link. I haven't read it entirely. But, on having a brief look, I hope that it deals with change in signal if one has the prior knowledge of the signal. In my case, I don't have any prior knowledge of the signal. Added to it, I hope that this link deals with online identification, whereas just offline is more enough in my case.
>To be more specific, you have to write more about what kind of "noises" >you are looking for, and in what kind of "signals" they are embedded >in. Detection via DWT is just one of many feasible paths. Sometimes, >much simpler methods are adequate.
As far as I know, I considered time-freq. analysis is the only solution and hence I preferred Wavelet as it has better resolution than STFT
>Regards, >Andor > >
sanindland wrote:
> >"Noise" is a very general term. I guess since you are interested in > >locality, you are looking for short bursts of "outliers" (clicks, > >transients). > > Hi Andor, > > Thanks for your response. To be more precise in my question, I have > recorded the audio signals (normal songs) from different receiver systems > and I have to study the characteristics of the receiver system. Hence, I > would like to compare the audio qualities by identifying amount of noise. > > (IAM NOT CLEAR: I think that the audible noise from 20Hz -20KHz is the > major difference and one can't hear the noise above these audible freq. > range and hence makes no difference in audio qualities. These noise may be > Crackss, humm or hissing sound,......other than wanted music signal)
Yes, you can concentrate on the audible audio band. You are facing a very difficult task, unless you have access to the original signal. What kind of receivers are you talking about - radio receivers? One usually measures audio quality in SNR - this implies that you need to know the clean signal and the noise signal. If all you have is the signal + noise you effectively have to perform noise reduction to get seperate estimates for noise and signal. And this, San, is hard. Especially regarding the types of noise you want to remove: crackles, hums and hisses. Each of these noise types requires a different approach. Crackles must be localized and removed by interpolation (localization and interpolation have already been the subject of PHD thesis), hum needs to be detected and filtered (using adaptive filters) and hiss is a wideband stationary noise that is usually handled with spectral subtraction (or wavelet based algorithms, like you are intending).
> For this I have decided to do frequency domain transformation and I would > like to know what noise (as frequencies) at what time(resolution in ms).
Only crackles have a time locality. Hiss and hum is usually over a longer duration (seconds or minutes, not ms).
> Again a question arises how to differentiate noise from the required > signal.
Indeed. Is this for a commercial or for an academic project?
> > Just recently, somebody posted this link, which might be > >helpful for detection of such events: > >"Detection of Abrupt Changes" > >http://www.irisa.fr/sisthem/kniga/ > > Thanks for the link. I haven't read it entirely. But, on having a brief > look, I hope that it deals with change in signal if one has the prior > knowledge of the signal. In my case, I don't have any prior knowledge of > the signal.
If you know that the signal is music and the noise is either crackle, hum or hiss (or a combination), you already have a lot of prior knowledge.
> Added to it, I hope that this link deals with online > identification, whereas just offline is more enough in my case. > > >To be more specific, you have to write more about what kind of "noises" > >you are looking for, and in what kind of "signals" they are embedded > >in. Detection via DWT is just one of many feasible paths. Sometimes, > >much simpler methods are adequate. > > As far as I know, I considered time-freq. analysis is the only solution > and hence I preferred Wavelet as it has better resolution than STFT.
If you have to implement this from scratch, I would first research all the known methods for click / hum / hiss reduction. The available literature is vast. You can start with S. V. Vaseghi: "Advanced Digital Signal Processing and Noise Reduction" from Wiley. I have the third edition. It covers all of those noise removal algorithms you seek. A book with less detail but available for free online is "Digital Audio Restoration" from Godsill / Rayner (available here: http://www-sigproc.eng.cam.ac.uk/~sjg/springer/index.html). Regards, Andor
Yes, you can concentrate on the audible audio band. You are facing a
>very difficult task, unless you have access to the original signal.
Hallo Andor, Thanks for your response. Yes, you are 100% right, I was working on it for around 3.5 months, but with no fruit.(I am not clear what you mean by access to the original signal)
>What kind of receivers are you talking about - radio receivers?
Yes, its normal radio receiver antenna with amplifier, radio and loud speakers
>One usually measures audio quality in SNR - this implies that you need >to know the clean signal and the noise signal. If all you have is the >signal + noise you effectively have to perform noise reduction to get >seperate estimates for noise and signal. And this, San, is hard. >Especially regarding the types of noise you want to remove: crackles, >hums and hisses.
Yes, I am trying to do SNR of a random signal.(Is there anyother way?) Yet, I am not clear even in theoretical point of view of how to identify noise from the signal in audio band. Each of these noise types requires a different
>approach. Crackles must be localized and removed by interpolation >(localization and interpolation have already been the subject of PHD >thesis), hum needs to be detected and filtered (using adaptive filters) >and hiss is a wideband stationary noise that is usually handled with >spectral subtraction (or wavelet based algorithms, like you are >intending).
If you have any suggestion/ links regarding spectral subtraction do please send it to me. I will also google it for some basic idea.
>Only crackles have a time locality. Hiss and hum is usually over a >longer duration (seconds or minutes, not ms). >> Again a question arises how to differentiate noise from the required >> signal. >Indeed. Is this for a commercial or for an academic project?
This is not for a commercial project. I am just doing my Master degree, few more papers to complete and I haven't yet started my Master thesis also. I am doing this project as a part of my curriculum.
>If you know that the signal is music and the noise is either crackle, >hum or hiss (or a combination), you already have a lot of prior >knowledge.
I just meant crackle, hum or hiss as an example, since they are not the required music signal. But I can't say for sure that they are definetly in the signal. May be other noise are also present with the signal.
>If you have to implement this from scratch, I would first research all >the known methods for click / hum / hiss reduction. The available >literature is vast. You can start with >S. V. Vaseghi: "Advanced Digital Signal Processing and Noise Reduction" >from Wiley. > >I have the third edition. It covers all of those noise removal >algorithms you seek. A book with less detail but available for free >online is "Digital Audio Restoration" from Godsill / Rayner (available >here: http://www-sigproc.eng.cam.ac.uk/~sjg/springer/index.html).
Thanks for the link. I will be reading it urs sincerely, San
>Regards, >Andor > >
sanindland wrote:
> Yes, you can concentrate on the audible audio band. You are facing a > >very difficult task, unless you have access to the original signal. > > Hallo Andor, > > Thanks for your response. Yes, you are 100% right, I was working on it for > around 3.5 months, but with no fruit.(I am not clear what you mean by > access to the original signal)
A signal transmission model might look like this: original signal ---> transmission path ---> received signal = H(original signal) + noise If you only have the received signal, you have to somehow somehow estimate the transmission transfer function H and the noise. Not easy. However, if you have the orginial signal, you should be able to come up with a good estimate of H, by making assumptions about the noise. ...
> This is not for a commercial project. I am just doing my Master degree, > few more papers to complete and I haven't yet started my Master thesis > also. I am doing this project as a part of my curriculum.
Are you sure that noise reduction was part of this measurement project? Seems kind of steep for a masters thesis.
> > >If you know that the signal is music and the noise is either crackle, > >hum or hiss (or a combination), you already have a lot of prior > >knowledge. > > I just meant crackle, hum or hiss as an example, since they are not the > required music signal. But I can't say for sure that they are definetly in > the signal. May be other noise are also present with the signal.
That doesn't make things much easier.
> > > >If you have to implement this from scratch, I would first research all > >the known methods for click / hum / hiss reduction. The available > >literature is vast. You can start with > >S. V. Vaseghi: "Advanced Digital Signal Processing and Noise Reduction" > >from Wiley. > > > >I have the third edition. It covers all of those noise removal > >algorithms you seek. A book with less detail but available for free > >online is "Digital Audio Restoration" from Godsill / Rayner (available > >here: http://www-sigproc.eng.cam.ac.uk/~sjg/springer/index.html). > > Thanks for the link. I will be reading it
I wouldn't read too much - you easily get lost that way. First get an exact definition of the scope of your project from your advisor. Perhaps you can use some existing noise reduction unit / software and take your project from there. Regards, Andor
....
>Are you sure that noise reduction was part of this measurement project? >Seems kind of steep for a masters thesis.
Hi, thanks for your reply. I have got the recorded signals from different receivers and also wrote a software to display these signals. My main task is to identify how much does the signal differ from that of other receivers and also wrt. time . So, my only hope is to analyse the amount of noise present in the signal and compare the same. ......
>I wouldn't read too much - you easily get lost that way. First get an >exact definition of the scope of your project from your advisor. >Perhaps you can use some existing noise reduction unit / software and >take your project from there.
I will be happy, if I found such a noise reduction unit/ software, then my project is completed. yours sincerely, San
>Regards, >Andor
Andor wrote:

   ...

> A signal transmission model might look like this: > > original signal ---> transmission path ---> received signal = > H(original signal) + noise > > If you only have the received signal, you have to somehow somehow > estimate the transmission transfer function H and the noise. Not easy. > However, if you have the orginial signal, you should be able to come up > with a good estimate of H, by making assumptions about the noise.
Many extended signals have periods of silence. Then the transmission model looks like this: silence ---> transmission path ---> received signal = noise Such periods can offer valuable insights. ... Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
sanindland wrote:
> .... > >Are you sure that noise reduction was part of this measurement project? > >Seems kind of steep for a masters thesis. > > Hi, thanks for your reply. I have got the recorded signals from different > receivers and also wrote a software to display these signals. My main task > is to identify how much does the signal differ from that of other receivers > and also wrt. time . So, my only hope is to analyse the amount of noise > present in the signal and compare the same.
You don't necessarily have to denoise each recording for comparison. If you are interested only in the difference from one receiver to another, you can look at the pairwise difference signals. By computing the (for example) energy of the difference signal, you get a measure of the "distance" of the two recordings. You could then rank the recordings according to the total distance to every other recording (where the top recording has least total distance, etc). There are lots of variations possible to this scheme.
> > ...... > >I wouldn't read too much - you easily get lost that way. First get an > >exact definition of the scope of your project from your advisor. > >Perhaps you can use some existing noise reduction unit / software and > >take your project from there. > > I will be happy, if I found such a noise reduction unit/ software, then my > project is completed.
There are quite a few free such softwares available. You can use Audacity (http://audacity.sourceforge.net/) to start. Regards, Andor