Electronic – Detection of signals buried in noise

signalsignal integritysignal processingsignal-to-noisesnr

This is more of a general question to see which methods are the most common to improve the detection of a signal which is buried in noise. Currently, we are building an optical system for medical imaging and the signal that is being detected is 1000x lower than the noise floor.

Currently, we are looking at methods such as lock-in amplification/detection and other types of filtering but it was an open question to see which are common methods to improve the detection of a signal in a noisy background.

Best Answer

The only way that a signal that is "buried in the noise" can be detected is if you can run the signal + noise through some filter that attenuates the noise more than it attenuates the signal. At which point the signal is no longer buried in the noise, so "buried in the noise" was just a hasty assumption.

In radio carrying an audio (or Morse code) signal in SSB or AM, you take the signal + noise and you filter it by the approximate bandwidth of the signal, then you run it through a detector.

In radio carrying digital data, you run it through a matched filter and then a detector.

In spread-spectrum radio, you correlate the signal + noise with a pseudo-random sequence, then bandpass filter, then detect.

In visual systems, you correlate the noisy image with a 2-D prototype of the anticipated signal, or you run the noisy image through a spatial low-pass filter, then you detect.

In all cases, the signal has to be distinct in some way from the noise -- if it is not, then you cannot filter out the noise without filtering out the signal, too.

I'll add to this:

At the top level, a filter for signals is like a coffee filter or a colander: you have the stuff you want (coffee or fresh-cooked pasta) and the stuff you don't want (coffee grounds, or starchy hot water), but it's all mixed together. So you run the mess through a filter. In the case of coffee, you keep the stuff that gets through the filter. In the case of the colander, you keep the stuff that gets left behind. In either case, you're using the fact that one thing (coffee grounds or pieces of pasta) is bigger than the other (water molecules and all the other stuff you want in coffee, and don't want in pasta).

A signal filter does the same thing -- you get rid of what you don't want because it is different from what you do want. If you can't figure out how it's different, and how to build an algorithm to separate it -- you can't filter your signal from your noise.