New script for denoising linear monochannel images

Got a chance to use MURE again with fresh data. It works phenomenally well. It's really like magic. Thanks and everybody stay safe during this strange Corona time.
 
New version MureDenoise 1.32 should appear soon as an auto update.

- Improved image normalization and weighting approximations, see the documentation for more information.

- Added to the process console log the standard deviation of method noise in DN, an estimate of the typical amount of noise guessed and removed from the image.

- Several other minor changes noted in the script's change log.
 
@mschuster

Firstly, this script is awesome, Great job! I am getting great results but have two questions:

1) I have run the same data with Variances from 0.6 to 1.2 to test which gives the best result but am not sure how to compare the results having read #203 and #211 regarding DBE issues and how auto-STF treats noise. Should I compare images "as is" (original STF) after running Mure, or should I re-stretch with STF? If the latter should I use auto-stretch (24bit) or use the same black and mid-point values on each image? No doubt the answer is obvious but I have been going around in circles for the past couple of hours and depending what I do the results look different.

As an observation, with auto_STF and Variance 0.9 and above I see faint stars are progressively getting removed and the image gets grainier. With Variance 0.8 the faint stars are retained in line with the original. Variance 0.6 is full of artefacts. On this basis Variance 0.8 appears best, I know its subjective, but is this a reasonable way to select the optimal level of noise reduction?

2) Is it ok to use Mure after using NormaliseScaleGradient?

Thanks
 
Last edited:
2) Is it ok to use Mure after using NormaliseScaleGradient?
Now that NormaliseScaleGradient v1.3 reads the NOISExx headers that are added by WBPP, ImageCalibration or Debayer, it should be OK to use NoramliseScaleGradient after MureDenoise. The NOISExx noise estimates are important in this case because it is necessary to base the image weights on the noise present before noise removal (for example, the noise present before running MureDenoise).

It might be worth doing a test to see if MureDenoise conserves the star flux. Run with and without MureDenoise. Check to see if the NSG calculated scale factors are similar for both runs. You can find the scale in the console output, and it is also recorded in the FITS header. I expect this to be OK, but I have not yet tested it.

Regards, John Murphy
 
Last edited:
Now that NormaliseScaleGradient v1.3 reads the NOISExx headers that are added by WBPP, ImageCalibration or Debayer, it should be OK to use NoramliseScaleGradient after MureDenoise.

It might be worth doing a test to see if MureDenoise conserves the star flux. Run with and without MureDenoise. Check to see if the NSG calculated scale factors are similar for both runs. You can find the scale in the console output, and it is also recorded in the FITS header.

Regards, John Murphy

Maybe the answer is the same but I need to run Registration ==>NSG==>Integration==>Mure in that order?
 
Hello!

Now that the latest version of WBPP can handle data differently, integrating each channel separately, could that be an opportunity for OSC data to use Mure denoise too?
 
I would like to apply MureDenoise processing to a batch of CFA subexposures just before debayering. I am trying this as I do not see a different way to use Mure with a color camera, and knowing that it should be applied to the integrated image for best result.

The process would be SplitCFA > MureDenoise x 4 CFA channels > MergeCFA for each sub. Unfortunately I cannot find a way to use directly ProcessContainer because the flow is too complex (for instance MergeCFA requires 4 images as input).

Probably the only way to manage this is to write a script, or some skillful utilization of Pixemath + Processcontainer.

Has anybody tried and found a solution to make this process automatic? Or more in general to use Mure with OSC cameras?

Thanks a lot in advance for your advice!
 
IIRC @mschuster did warn against using MURE on subexposures because it was capable of destroying faint signal.

what's wrong with SplitCFA and then treating your camera as though it were mono with 3 filters? meaning, just go thru the flow and then apply MURE to the integrated channel masters.
 
Hi @pfile, tx for your answer. Well it is recommended not to apply Mure on debayered images. In fact, I tried to apply it to an integrated master (split mono channel) and the effect was not comparable to the one I got on a pre-debayer sub.
 
i just wonder if the contraindication for debayered images had to do with the interpolation. if you use splitCFA you will be using the equivalent of superpixel debayering which does not interpolate. superpixel would average the two green pixels which isnt exactly interpolation, but splitCFA will give you 4 images (2 greens.)

we havent seen mschuster in a long time so it's not clear that we can get a definitive answer about this.

did you use masters created with splitCFA to run MureDenoiseDetectorSettings? sometimes you need to crank the mure settings a lot especially if you have a stack with a lot of subs.

rob
 
In the case of a single Sub I have run DenoiseDetectorSettings on two bias and two flats subs (after splitting them with SplitCFA). The Gain result was exactly the one expected for my sensor. The de-noising was very good, with the big caveat you raise - that is applying denoising so early wipes away also some signal.
When, instead I tried to work on an integrated light image, I first applied with same parameters above and then with others extracted by master darks and flats (debayered and RGBsplit). But clearly these are naive attempts. I will experiment more and update here if I find out something interesting (I doubt...). Many thanks, Mau
 
try increasing the variance scale a lot, like maybe 2 or 3 just to see what happens to the image.

rob
 
Hi Rob, I tried to increase the variance, as you suggested, and applied Mure to the blue channel of the debayered master light. The output has a dotted texture, as you can see in the screenshot below. I played with the other parameters as well, but I can never get a smooth background. Evidently debayering is pushing Mure's model beyond its scope.
Thanks anyway for your kind suggestions, greatly appreciated!

Mau

Screenshot 2022-01-31 121142 small.jpg
 
yes, i have seen that dotted texture as well.

i suppose you can try another noise reduction technique. francesco meschia outlines another really good method in the middle of this video:


rob
 
Oh, thanks Rob, Francesco's preview technique in MMT is new to me and looks really effective, I'll try it for sure!

Many thanks! Mau
 
Back
Top