Originally Silvercap implemented the "Vicent method" with these PixelMaths (free form):
Ha <- (Ha*RGB_bandwidth-RGB*Ha_bandwidth )/(RGB_bandwidth-Ha_bandwidth) - hmm , take out the stars ?
R <- R+(Ha-med(Ha))*HaMultiplier - not sure but, take out the nebula ? Leave only stars ? Continuum ?
Ha <- LinearFit(Ha with R)
R <- max(Ha,R)
Is this really Vicent's method? Looking into the script I miss several components (but when I learned programming object oriented programming was not standard so it makes me unoriented
).
1. I do not see the creation of the continuum map (C = R/H in the case of Ha addition to the R channel)
2. I do not see any denoising of C
3. I do not see any creation of the attenuated R (or R flat fielded by Ha)
I would expect something like this (sorry for the crude programming syntax)
Repeat until "satisfied"
Normalize(H to R);
C = R/H;
C = denoise(C);
R = C*H;
end;
As far as I can see none of these steps are in the script, but it might be hidden to my eyes among all the "this.object.var()" stuff?
Moreover Vicent's method should also handle the difference in star sizes by creating a (k*Ha)GB image (swap the R channel with k*Ha where k is supplied by the user), use the Lum of this k*HaGB image in combination with the chrominiance info (a and b channels) from the HaRGB image created in the loop above.
I cannot see that either in the script
What I can see though is a max(R,H) - so is this really a (max(R,H))GB script, in combination with smart re-scaling (or star handling) of H and R (the two first math expressions in the quote above)?
The final possibility is that I am the one in need of denoising
BR
Matts