For 1-D signals (spectra) or 2-D signals (images), is there a way to impose the constraint that the data within a group is uncorrelated? I am iteratively applying background correction model fitted to regions that I identify as background (a "segmentation problem") through a mixture model.
The assumption is that background regions should contain exclusively random noise (Gaussian distributed) after appropriate correction, so after many iterations I should be left with a sum of two probability distributions (in signal intensity) - one related to "noise" (
yn) in the background and the true signal (
ys) which is approximately exponential. However, part the the true signal contribution can "look" Gaussian when computing the probability density without taking sample independence/correlation into account - so it gets lumped in with the background and the separation is not so clean.
For this illustration, I break down the true signal as a sum of two components (
ys2), but in reality the actual signal comprises countless contributions that appears approximately exponential.
yn <- rnorm(N, 0, .05) # random ys1 <- qnorm(p, 0, 1/5) # signal ys2 <- qexp(p, 5) # signal
To get the desired effect for my illustration, I'll choose
x this way:
x <- asin(ys1)
The individual signals (left column) and probability densities (right column) are shown below:
par(mfrow=c(3, 2)) plot(x, yn, type="o") plot(density(yn, adjust=2)) plot(x, ys1, type="o") plot(density(ys1, adjust=2)) plot(x, ys2, type="o") plot(density(ys2, adjust=1))
I want to separate
yn from the desired portion of my signal
ys1+ys2. However, because
ys1+yn "looks" approximately Gaussian,
ys1 gets associated with
yn rather than
ys2 - so the separation is not so clean.
gauss <- ys1+yn # approximately Gaussian (what I really want is yn) expon <- ys1+ys2 # approximately exponential (desired) par(mfrow=c(2, 2)) plot(x, gauss, type="l") plot(density(gauss)) plot(x, expon, type="l") plot(density(expon))
I expect that if I can impose a constraint that the points in the Gaussian distribution should not have any autocorrelation, I can get the separation between
ys1 that I desire. Is this a reasonable expectation and is it straightforward to implement such a constraint in mixture models?