Hi Mike,
Sorry for the delay in answering to your post. Well, you already have answered to your own question using very smart methods

Indeed, ImageIntegration's image weighting function for the ith image is:
w
i = (n
i * s
i)
-2where n
i are noise estimates and s
i are scaling factors:
s
i = ADev( I
0 )/ADev( I
i )
and ADev( I ) is the average absolute deviation from the median computed for all pixels of image I (excluding pixels outside the ]0,0.98] range), used here as a robust estimate of dispersion. By convention, the first image in the integration list (denoted here with a zero subindex) is the reference image for weighting purposes. The quadratic shape of the weighting function attempts to account for the fact that the signal-to-noise ratio is proportional to the square of the signal. We have had some controversy in the PTeam around the way we are squaring scaled noise estimates. Personally I think that the function we are using is correct for a model where we can express an image as:
I
i = B
i + k
i*(S + n
i)
where B
i is a background zero offset, S is the deterministic signal and k
i is a scaling factor. We can compute each B
i in a robust way as the median of all significant pixels. Note that all additive pedestals B
i are automatically excluded from the weighting function: (1) in the computation of scaling factors because ADev() measures variability from the median, and (2) in the computation of noise estimates because the multiscale noise evaluation algorithm calculates
unbiased noise estimates from wavelet difference coefficients, which have zero mean on each wavelet layer.