I would like to find a way to identify whether some components of a signal I have are "noise components" or not.

Given the fact that the (normalized) autocorrelation function of white noise is a Dirac delta function in zero, would it be a good measure of noisiness the time-lag at which the autocorrelation function first crosses the lag-axis (at positive lags?) Or would you suggest another indicator?

I see that if signals are "not noisy", the zero-crossing time lag of the ACF gets bigger, as it should be. I attach a picture to express this concept.Example of the autocorelation fucntions of a noise and of the signal that I consider less noisy

Thanks for the tip. Regards,



2 Answers 2


You can try solving the problem as a hypothesis testing problem. Consider the following: \begin{align} \mbox{Under }\mathcal{H}_0&: y[n] = s[n] + w[n] \\ \mbox{Under }\mathcal{H}_1&: y[n] = w[n]. \end{align} Then, you can find a test statistic to determine if your window $\Omega_N$ which contains $N$ samples of the measured signal contains signal or not.

Some useful slides for reference.

  • $\begingroup$ Thanks for introducing me to this new field of study, but I really need a quick indicator, not to dig into this interesteing new topic ... $\endgroup$
    – EmThorns
    Commented Aug 1, 2019 at 7:41
  • $\begingroup$ I am reconsidering your approach, which seems very pertinent to my case. What kind of statistics would you consider? Please note that I have slightly updated my original question, to be clearer. Thanks a lot. $\endgroup$
    – EmThorns
    Commented Aug 2, 2019 at 11:08
  • $\begingroup$ Hi: 2 things. 1) I'm not sure how you define noisy but one could argue that the second picture is noisier because the acf at longer lags is larger. 2) Are those acf plots because an acf plot should be discrete rather than continuous. ( unless you have a closed form expression for the acfs ? ). $\endgroup$
    – mark leeds
    Commented Aug 2, 2019 at 13:16
  • $\begingroup$ Do you know the noise characteristics in your signal model? If it is Gaussian, it your final result is a simple energy based detector. Start by using a small sliding window of size $N$. For each window, determine which hypothesis is true by computing the energy. If the energy is less than a threshold, that means no signal, else otherwise. $\endgroup$
    – Maxtron
    Commented Aug 2, 2019 at 15:34
  • $\begingroup$ @mark leeds I don't think noise could be characterized by large side lobes at large lags, because for example a sine wave has lobes that go on forever becase the ACF is periodic, even if the signal is not noisy. Noise (I think) is characterized by a strong peak at zero time lag, and then the ACF should be approximately zero everywhere else. To answer your second question, those plots are derived from a discrete ACF computed using MATLAB and the function xcorr $\endgroup$
    – EmThorns
    Commented Aug 7, 2019 at 16:12

Logically, think of what an autocorrelation can be used for: it takes a signal, and looks for repetitive patterns by comparing the original signal to a shifter version of the signal.

Since that’s the case, the zero time lag of just about any signal will have a non-zero value, since it essentially multiples all signal components with themselves, and then adds them together. Thus, the zero lag coefficient is the autocorrelation won’t really give you much (in my opinion) for your application.

If you know some of your signals ahead of time, consider cross-correlation/matched filtering instead. If that won’t work, try to perhaps characterize a noise distribution or something along those lines.

  • $\begingroup$ Thanks. I didn't say the zero time lag, but the time lag at which the auto-correlation crosses the axis x i.e. y=0, not x=0. Perhaps I was nor clear enough ... $\endgroup$
    – EmThorns
    Commented Aug 1, 2019 at 23:56
  • $\begingroup$ Indeed, “zero crossing time lag” isn’t very clear in English. Instead, it sounds like you’re looking to say “the time lag at which the autocorrelation value is a minimum or zero”. At any rate I’m not sure that gets you much either, noisy signals will have many points near zero in their autocorrelation, as well as many that aren’t. Since the process is random, the effective “sidelobes” (as we say in the radar community) of the autocorrelation function will also be random $\endgroup$ Commented Aug 2, 2019 at 0:23
  • $\begingroup$ I integrated my question with a figure, perhaps my concept I wanted to express is now clearer. Please let me know what you think about it and thanks again for your help. $\endgroup$
    – EmThorns
    Commented Aug 2, 2019 at 9:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.