Procdure for processing Deep Space images using a one-shot color camera.

Background: Processing of deep space images requires several steps and is very time consuming. The first steps are geared towards calibrating the images using the 'lights', 'darks', 'biases', and 'flats' acquired.
Once the images are calibrated they can be aligned so that all images match.
Then all of the aligned images are stacked or 'integrated' into a single master image. At this point the image is then stretched and then different image processing techniques utilized to bring out the details of the image..
The following are the detailed steps that I take when I am procssing deep space images.

Deep Space Imaging Procedures:
1. I have a series of pre-made custom tailored Icons for each of the processes that I utilize. Each process is tailored to match my equipment. This saves me the time to not have to configure each process for my equipment.
2. Generate appropriate subdirectories to store the images. Start by creating a ‘PI Folder’, then under the PI Folder create the following sub-folders: FlatCal, ImageCal, Debayer, SubFrame, and Star Align.
3. Activate the ImageCalibration process. Perform Flats image calibration using all of the acquired flats and a master bias from pre-made library. Store result in the FlatCal subfolder.
4. Activate the ImageIntegration process. Perform flats integration to create a master flat.
5. Save the flat master as a FITS file in the ‘PI Folder’. For example ‘M1 FlatMaster.FITS.
6. Activate the ImageCalibration process. Perform image calibration using all acquired images, flat master, and master dark from pre-made library. Store result in the ImageCal subfolder.
7. Activate the Debayer process. Perform Debayer by selecting all of the images in the ImageCal subfolder. Store the results in the ‘Debayer’ subfolder.
8. Activate the SubFrameSelector process. Select all of the images in the ‘Debayer’ subfolder. Select ‘Measure Subframes’. Select the ‘Subframe’ folder for the ‘Directory’. I always utilize a premade weighting factor which I store in a Word file. I then ‘copy and paste’ the premade weight equation into the ‘Weighting’ on the SubframeSelector/Expressions’ frame and then activate the weight equation (press the ‘>’) on the right side of the weighting panel.
9. Evaluate each image by using the ‘SubframeSelector/Measurements panel. I then select ‘FWHM”, then ‘SNR’, then ‘Eccentricity’, then ‘Stars’. In each case I look through the graph to identify any images that are very different than the others. For instance, in the ‘FWHM’ chart I look for any image whose overall star size is much larger than the rest. I then ‘click’ on the image to see if there is any problem with the image. If so, I deselect the image so it is not used during integration. I do this for ‘FWHM’, ‘SNR’, ‘Eccentricity., and ‘Stars’.
10. While I have SubframeSelector running, I also select ‘Blink’ and select all of the files in the ‘Debayer’ directory. Then select ‘Auto STF” and then sequence through each image. If I find an image of poor quality, I go back to SubframeSelector and deselect that image so it is not used in integration.
11. I then select ‘Weight’ from the ‘Measurement Table’ (vice ‘Index’) and scroll down to the highest weighted image. I then select the image for viewing and apply stretch the image. If the image looks good, I note the image number for use as the reference image during star alignment.
12. Lastly I select ‘Output Subframes’ from the ‘Routine’ section of the SubframeSelector’ panel. This activates the SubframeSelector process and generates weighted files.
13. Activate the ‘StarAlignment’ process. Select all of the files in the ‘Subframe’ directory, then select the reference image. Select the ‘StarAlign’ directory as the Output Directory. Then activate the process. This produces a set of aligned images in the ‘StarAlign’ directory.
14. Activate the ‘ImageIntegration’ process. Select all of the files in the ‘StarAlign’ directory, and activate the process. This produces a single integrated image. Save the image with a proper name using either FITS if XISM format. I usually call this the master file for example, M1 Master.xisf.
15. At this point you have an aligned and integrated image. The image is still in linear (non stretched) format. Each of the next processes refines the image. I always save each result so that I can go back and retrace/change my iterations.
16. Next I perform a background extraction process. There are three different processes that I utilize. AutomaticBackgroundExtractor, DynamicBackgroundExtractor, or GradientCorrection. I sometimes try all three to see which gives the best result. I usually start with GradientCorrector first.
17. Once I have completed the background flattening, I then perform ‘ImageSolve’ script. This is a platesolve script that is then used with color correction process.
18. Once the Imagesolve process has completed I then perform color correction using ‘SpectroPhotometricColorCalibration’. I also may utilize ‘AutoColor’ script if there is a problem with SPCC.
19. ‘BlurXterminator’ is next utilized as a deconvolution tool. I may adjust the strength of the tool depending upon how ‘sharp’ I want the stars to appear.
20. NoiseXterminator is next. I generally use the default settings.
21. This is the last step before stretching unless I want to run the ‘StarXterminator’ process generate separate ‘stars only’ and ‘starless’ images.
22. I usually use GeneralizedHyperbolicStretch script for all of my image stretching. I may utilize ‘HistogramStretch’ if I image a star cluster or even a globular cluster. GeneralizedHyperbolicStretch has a lot of capability and options so I may try a few different stretch functions before I decide on the optimum.
23. At this point you have a non-linear master. Further efforts are refining the image and depends upon what the image needs in order to bring out the colors or details.
24. I utilize the following PixInsight processes to refine the image:
    a. CurvesTransformation to increase contrast.
    b. ColorSaturation to enhance/de-emphasize particular colors.
    c. MultiscaleLinearTransform to either sharpen or smooth an image.
    d. HDRMultiscleTransform to increase the dynamic range between dark and light portions of the image.
    e. LocalHistgramEqualization
25. There are times when I want to create a mask so that I can work on foreground and background separately. For this I use either ‘RangeSelction’ mask, or I use either the ‘GAME’ or ‘FAME” scripts.
26. If I have utilized ‘StarXterminator’ to generate separate ‘stars only’ and ‘starless’ images. I then work on both images separately utilizing the same processes as above until I like each of the processed ‘stars only’ and ‘starless’ images. I then combine the images using ‘ImageBlend’ script. This script also provides some control over how the images are to be combined into a single composite image.
27. Each image is different, so I adjust my image processing technique accordingly.
28. I then run two other scripts to generate different images. The first is the ‘AnnotateImage’ script which creates a platesolved image. The second is the ImageAnnotationFrame script which adds information to the image.
29. Lastly I use the ‘Annotation’ process to add a label to the image and I store this image separately.
30. Up to this point all of the images have been stored in either FITS is XISM format. I then save each of the final images (processed master, master with annotation, master with platesolve, etc) in JPEG format.
31. When I am satisfied with the result I delete the FlatCal, ImageCal, Debayer, SubFrame, and Star Align sub-folders since they are no longer needed.


Click to Return to Home Page
Click to Return to Home Page Click to Return to Home Page