Processing Example

M81 & M82

by Alejandro Tombolini

Introduction

This image is from Manoj Koushik published in Image Processing Challenges - Linear and nonlinear postprocessing of an image taken with Moon with gradients - Main notes: CanonBandingReduction for vertical banding, DBE to remove gradients, Morphological Transformation to reduce stars. Date: June  2016.

Processing

For this project I used four previously integrated images provided by Manoj; Red_Driz_Master, Green_Driz_Master, Blue_Driz_Master and Syn_Lum_Master. The filters used for the images are:  

Astrodon 31mm Ha 20nm FWHM: 12x900" -20C bin 1x1
Astrodon 31mm Stromgren V: 12x900" -20C bin 1x1
Astrodon 31mm Stromgren Y: 12x900" -20C bin 1x1

The gradient presents in the images can be removed using DynamicBackgroundExtraction with the settings detailed in the following screenshots. Although the gradients are different in each image, I have used the same DBE instance which worked perfectly well in all of them. I could also have applied DBE after combining the channels.  

M81M82

M81M82

M81M82

Using the ChannelCombination tool to generate an RGB image

M81M82

As can be seen in the following screenshot there is some vertical banding in the image. To remove the vertical banding use the CanonBandingReduction script, but rotate the image 90º before since the tool can only be applied for horizontal banding. After reducing the banding rotate the image back again. 

M81M82

Apply the BackgroundNeutralization tool. Select a preview that represent the background of the image and read the maximum pixel values from Statistics.

M81M82

Apply the ColorCalibration tool. Update the values of the background reference from the preview previously used and use the rest of the values as default.

M81M82

Generate a PSF to be used in the Deconvolution process. 

M81M82

Generate a star mask using the Starmask tool to protect the cores of stars during deconvolution. To build this mask first clone the image, then copy the parameters of the STF to the HistogramTranformation tool by dragging the blue triangle to the bottom bar of the HT tool, then apply HT to the image. 

M81M82

Once stretched, smooth the _clone image by removing three layers using the MultiscaleLinearTransform tool.

M81M82

Now apply the StarMask process on the _clone to generate the star_mask using the following parameters:

M81M82

Protecting the stars with star_mask1 apply the Deconvolution tool to the image. This process will bring out little details in the galaxies and improve the medium and small stars profiles.

M81M82

Non linear stretch using the MaskedStretch tool.

M81M82

After the stretch you can see that the size of the stars is much bigger in the blue channel.

M81M82

Reduce the stars by applying MorphologicalTransformation to each channel but first generate a star_mask using the StarMask tool to protect the galaxies and the background during this process. Also apply a dilation to the mask using MorphologicalTransformation to increase the area where will be worked on.

M81M82

MorphologicalTransformation to the red channel protecting stars with a starmask:

M81M82

MorphologicalTransformation to the green channel protecting the stars with a starmask:

M81M82

MorphologicalTransformation to the blue channel protecting stars with starmask:

M81M82

Join the channels using the ChannelCombination tool.

M81M82

Now I will start processing the Syn_Lum image following the same procedure removing the gradient and correcting the banding.

Apply DynamicBackgroundExtraction

M81M82

Rotate the image and apply the CanonBandingReduction script and then rotate the image back.

M81M82

Non linear stretch of the image using the MaskedStretch tool.

M81M82

I will also perform star reduction to the big stars protecting the images with the previous star_mask and applying MorphologicalTransformation

M81M82

Apply HDRMultiscaleTransform to compress the dynamic range in the galaxies.

M81M82

LRGBCombination to add the Syn_Lum to the RGB image. Clone the Syn_Lum_Master image to use as mask protecting the background during the LRGBCombination.

M81M82

Apply SCNR to remove some green using the Syn_Lum_Master_clone to protect the background.

M81M82

Invert the mask (Syn_Lum_Master_clone) and apply GammaStretch to darken the background

M81M82

A little noise reduction, protecting the image with a new mask. To build the mask use the RangeSelection tool and then multiply the rangemask by six using the PixelMath tool.

M81M82

Apply TGVDenoise to the image protecting the background and the periphery of the galaxies.

M81M82

Invert the rangemask and apply CurvesTransformation to increase contrast and add a little saturation.

M81M82

Final Image

M81M82

Download full image

Thanks to Gerrit Barrere for the help in improving the English translation.

Last Update: 27/11/2023 03:52 UT