AstroBin is the home of astrophotography - Share full resolution images, preserve acquisition details, discover equipment, discuss techniques, and learn from the community.Discover AstroBin

Synthetic Super Luminance Made Easy!

John HayesMichael SmithersTony Gondola
33 replies1.2k views
John Hayes avatar

INTRODUCTION

I’m excited to announce a new, free Pixinsight script from Mike Cranfield at Cosmic Photons for producing synthetic luminance images. The idea for this script originated from a discussion here on the Astrobin forums about the best way to generate a synthetic Lum channel. I noticed that most us have our own favorite way to combine RGB data to form a synthetic Lum channel and to combine LRGB data to form a super-synthetic Lum channel. It also became clear to me that not all of the methods that folks were using are correct. In fact, I realized that there’s a bit more nuance to this whole thing than I realized at the onset and that even my own favorite method was slightly flawed!

Using high quality ‘L’ data can improve the SNR of a RGB image when it is properly combined in processing and it turns out that you can further improve the SNR of your Lum data by properly combining it with synthetic Lum data derived from the RGB data itself. The challenge is to figure out how to properly weight the contributions from the LRGB channels so that you arrive at a statistically correct super synthetic luminance image. The reward is that if you create the image properly, it will have the highest possible SNR that will be imprinted on your RGB data when you combine them to produce your final image.

At this point, a few of you may be thinking, “So what! I can just denoise the result no matter how I do it, so why bother?” And that’s a fair question that I can address in two ways. First, if your goal is to maximize detail and to stay as true to your data as possible, the optimum starting point is the one with the best possible SNR. The goal should be to use the least amount of denoising as possible. Second, this tool is so easy to use, why bother doing anything else? Once you load your data, it only requires pushing two buttons…and bingo, you are done. You’ll still use denoising but you’ll be starting from the highest SNR that your data can produce.

HOW TO USE IT

This new “SyntheticLuminance” script reduces the process to just a couple of operations. Let’s take a look.

📷 image.pngimage.pngThe first step is to simply load your R, G, B, and L channels into the script. Then press the “Set Auto Weights” button. The script will compute the appropriate weighting scales based on the SNR of each channel. Next, press the checkmark to execute the process and get the results. There is an option to allow computing a new synthetic luminance from your original data plus another synthetic image that you’ve computed by some other method. There is also an option for using mismatched luminance images but that’s really just for experimentation. It doesn’t properly normalize the images with respect to gains and offsets so the result will not be statistically correct. The script also shows the predicted and actual SNR of the results, which you can compare with your original data to see the improvement.

Here is my recommended work flow for creating a statistically correct synthetic Lum image. Start with four integrated LRGB channels in linear space.

1) Use your favorite tool to gradient correct the individual integrated LRGB channels. It is important to do this before channel combination or you may see spatially varying color artifacts that may be difficult to remove. Gradient correction before RGB combination should result in a nearly perfectly "flat" image.

2) Perform RGB color combination

3) Perform SPCC color calibration on the RGB image

4) Extract the RGB channels from the color calibrated image created in step 3.

5) Load those RGB channels along with the gradient corrected Lum channel in to the SyntheticLuminance script to create a synthetic super Lum channel (SSLC).

6) Now you are ready to process and combine the SSLC + RGB data from step 3 as you normally would—normally in non-linear space.

AN EXAMPLE

Here is a close up comparison of LUM (from the scope), Synthetic LUM from the RGB Image, and the SSLC image displayed with a very heavy stretch. This is pretty clean data to start with and it includes a lot of RGB relative to the LUM data but you can see a clear improvement in the SSLC image over the straight LUM channel.

📷 image.pngimage.pngBy loading these images into the RGB channels, the script is also useful for evaluating the results. Here is what it shows.

LUM: SNR = 3.2492e+05 (55.12 dB)

SynLUM: SNR = 1.0896e+06 (60.37 dB)

SSLC: SNR = 1.3664e+06 (61.36 dB)

You can see that by combining all of the channels to form the SSLC, we improved the SNR by 6.24 dB over the raw LUM data, which is a factor of 4.2 times better. That’s pretty good!

WHERE TO FIND IT

You can find installation instructions and the repository address for this script at Mike’s website at: https://cosmicphotons.com

THANKS TO MIKE!

Although I suggested this idea to Mike and acted as an advisor, it’s really a stretch to call this a collaboration because Mike did all of the heavy lifting on this project. As he normally does, he produced world class documentation for using and understanding the inner workings of this script. So…BE SURE TO READ THE DOCUMENTATION!! Mike put a huge effort into it and it is worth your time to check it out. If you have questions, that should be your first stop.

Finally, I want to personally thank Mike for all the hard work he put into this project. When I first proposed it, I thought that it would be absolutely trivial but like many other things, nothing is ever as easy as you think it’s going to be and Mike did an amazing job of digging through all the details!

Have fun with it. I think that it should be a really useful tool for just about everyone doing LRGB processing in PI.

- John

Well written Helpful Insightful Respectful Engaging
Craig Towell avatar

Excellent. I have found it a bit tedious to create a super synth lum manually (especially for the small gain) so this will certainly get some use from me. Thanks for the announcement.

Well written Respectful Supportive
Spacetime Pictures avatar

Thanks for the good writing. This will definitely join the processing toolbox! Always amazed with what software can do to our beloved data nowadays.

Well written Respectful Supportive
John Hayes avatar

Craig Towell · Sep 11, 2026 at 08:05 PM

Excellent. I have found it a bit tedious to create a super synth lum manually (especially for the small gain) so this will certainly get some use from me. Thanks for the announcement.

Even though it’s not immediately evident in the images, notice that the “small gain” for the relatively clean data set that I presented was a factor of over four in SNR! Of course, your results may vary depending on the data but I bet that in many cases it will be more than you might guess.

John

Well written Concise Engaging
Tony Gondola avatar

Yes, this is a game of inches so whatever gains you can get are worthwhile.

Ashraf AbuSara avatar

Gonna try this out now. Seems like a great tool. It’s been a while, but back when I was watching Adam Block’s site I thought doing background extraction on individual channels just tripples the work for no additional gain compared to doing it on a channel combined image. Maybe that has changed. Gonna try your workflow for this tool.

Thanks John!

Respectful Supportive
Michael Smithers avatar

Forgive me for asking, I have limited experience with this hobby. I use a osc cameras and stack my NB filter data in separate channels and go from there. Will this script be of any use to me or is it for monochrome cameras only? TIA

CS Mick

Well written Respectful
John Hayes avatar

Michael Smithers · Sep 12, 2026 at 04:10 AM

Forgive me for asking, I have limited experience with this hobby. I use a osc cameras and stack my NB filter data in separate channels and go from there. Will this script be of any use to me or is it for monochrome cameras only? TIA

CS Mick

Mick,

This process is most useful for RGB imaging. It could be used for NB imaging but that’s a much more complicated thing to describe and most imagers don’t bother with a luminance channel in that case. So, to more directly answer your question: Yes, you could use it to create a synthetic Lum channel from integrated RGB channels from an OSC camera and that might provide a boost to SNR in your final result. I don’t run an OSC camera anymore so I haven’t tried it. You’ll have to help me out and tell me how well it works with your data.

- John

Well written Helpful Respectful Concise Engaging Supportive
Kay Ogetay avatar

This is a great work. Thank you, John and Mike! This was much needed. Every time I worked on my images, I wondered why we don’t have a script like this. And it is great to see the quantitative results as well, that is indeed a great improvement. I’ll try this this weekend!

Well written Respectful Supportive
Michael Smithers avatar

John Hayes · Sep 12, 2026, 05:54 AM

You’ll have to help me out and tell me how well it works with your data.

I will do just that. Thank you sharing your expertise.

Mick

Respectful Supportive
Craig Towell avatar

John Hayes · Sep 11, 2026 at 11:28 PM

Craig Towell · Sep 11, 2026 at 08:05 PM

Excellent. I have found it a bit tedious to create a super synth lum manually (especially for the small gain) so this will certainly get some use from me. Thanks for the announcement.

Even though it’s not immediately evident in the images, notice that the “small gain” for the relatively clean data set that I presented was a factor of over four in SNR! Of course, your results may vary depending on the data but I bet that in many cases it will be more than you might guess.

John

I’ve never seen anything like that improvement in SNR in my own attempts, perhaps because I tend to short-change myself with the RGB channels and pour all the time into luminance instead. Normally I’d shoot a minimum of 8-10 hours L, and then 1 or maybe 2 hours each of RGB. Perhaps if I devoted more time to RGB the synthetic L from that would be improved, but then would I not just be better to spend that extra time just gathering more L?

Well written Respectful Engaging
Vin avatar

Interesting. But I don’t shoot L at all - so looking at the workflow, would this make a difference? Doing gradient correction, RGB combo, followed by SPCC and then channel extraction to combine with L requires L, or am I missing something?

How would the SNR maths of this approach compare to the SNR maths of just stacking all the R G B frames together into one super-stacked synthetic master (in addition to the individual colour channel masters), and then applying RGB combo, SPFC, gradients, SPCC etc on that?

GalacticRAVE avatar

Hi John & Mike,

excellent, such a tool is much appreciated! a suggestion: splitting the RGB image (which you need for SPCC) into separate channels and then to upload the individual channels into the script appears to me unecessary load on the user, why not upload the RGB directly into the script (and split it into temporary frames in the script) ? nothing dramatic, just a little convenience issue. thanx again for this great script!

Matthias

Helpful Respectful Concise Supportive
Michael Smithers avatar

Hi John, I tried the osc experiment.

LRGB snr was 5.6 estimate from synthetic luminant total was 7.1

After running the script actual snr was just under at 6.7. I think that is an improvement, but I am the least qualified person to test this 😆.

Cheers Mick

Respectful Concise
Mark McComiskey avatar

Very cool. Excited to give the documentation a read and try this out.

Well written Respectful
Jos Stassen avatar

Thx John & Mike!

I use SuperL a lot. Thanks for creating this script. Looking forward to try this later this weekend!

Respectful Supportive
John Hayes avatar

Craig Towell · Sep 12, 2026 at 07:24 AM

John Hayes · Sep 11, 2026 at 11:28 PM

Craig Towell · Sep 11, 2026 at 08:05 PM

Excellent. I have found it a bit tedious to create a super synth lum manually (especially for the small gain) so this will certainly get some use from me. Thanks for the announcement.

Even though it’s not immediately evident in the images, notice that the “small gain” for the relatively clean data set that I presented was a factor of over four in SNR! Of course, your results may vary depending on the data but I bet that in many cases it will be more than you might guess.

John

I’ve never seen anything like that improvement in SNR in my own attempts, perhaps because I tend to short-change myself with the RGB channels and pour all the time into luminance instead. Normally I’d shoot a minimum of 8-10 hours L, and then 1 or maybe 2 hours each of RGB. Perhaps if I devoted more time to RGB the synthetic L from that would be improved, but then would I not just be better to spend that extra time just gathering more L?

Craig,

The ideal balance might be equal exposure between R+G+B and L so you are probably closer to that than the way I operate. I generally take equal exposure for all channels, which results in a much larger contribution from the RGB than L to the final SSLC result—and you can see that in the channel weights that I posted. Neither approach is really wrong but in either case, you should see an improvement in the SNR of the SSLC over your lum data. In your case, with so much lum data relative to RGB, the gain will indeed be smaller relative to how I expose.

John

Well written Helpful Respectful Concise Supportive
John Hayes avatar

Vin · Sep 12, 2026 at 08:01 AM

Interesting. But I don’t shoot L at all - so looking at the workflow, would this make a difference? Doing gradient correction, RGB combo, followed by SPCC and then channel extraction to combine with L requires L, or am I missing something?

How would the SNR maths of this approach compare to the SNR maths of just stacking all the R G B frames together into one super-stacked synthetic master (in addition to the individual colour channel masters), and then applying RGB combo, SPFC, gradients, SPCC etc on that?

You can process with a syn-lum channel derived from the RGB data but I don’t think that it’s going to buy you a lot over just doing an RGB process.

As for creating a syn-lum channel using the ImageIntegration tool, that works as well and it’s a popular method. With only RGB, you are limited by the need for at least 4 frames in the tool. You also need to select the proper normalization and weighting options to get the correct result. You also need to make sure that you are using color calibrated channels as well—and you want to do that BEFORE averaging; not after.

- John

Well written Helpful Concise Engaging
John Hayes avatar

GalacticRAVE · Sep 12, 2026 at 08:36 AM

Hi John & Mike,

excellent, such a tool is much appreciated! a suggestion: splitting the RGB image (which you need for SPCC) into separate channels and then to upload the individual channels into the script appears to me unecessary load on the user, why not upload the RGB directly into the script (and split it into temporary frames in the script) ? nothing dramatic, just a little convenience issue. thanx again for this great script!

Matthias

Figuring out the details of how to allow input is always a challenge. The original concept was to simply input the raw LRGB channels and push a button; but, we quickly realized that that wasn’t right. Mike chose to stick with keeping the channels separate and there are some advantages to that. I suppose that there could be an option to input R, G, B -or- RGB and I can take up that suggestion to Mike. In practice, it’s not that hard to split the channels out but I agree that it’s an extra step.

- John

Helpful Respectful Concise
Samuel Warfel avatar

@John Hayes Thank you for sharing this fantastic resource, I have often fretted about “losing” the luminance information in my RGB data I was using only the color from, but wasn’t up to the challenge of figuring out how to properly extract it. This could not be easier to use!

Do you anticipate this changing the way you shoot at all (or would you advise it for others), in terms of potentially shooting more RGB and less lum, to help ensure plenty of signal for the color and also not “lose” as much luminance information by shooting more RGB instead of lum? Naturally, I assume that the extracted lum is not quite as good as actual lum in terms of signal per hour of imaging time, but it could make it feel like less of a “waste” to add more RGB data that doesn’t contribute to the luminance SNR of the image, which I never enjoyed the feeling of in the past.
Thank you, and clear skies!

Well written Respectful Engaging Supportive
John Hayes avatar

Samuel Warfel · Sep 13, 2026 at 08:16 PM

Do you anticipate this changing the way you shoot at all (or would you advise it for others), in terms of potentially shooting more RGB and less lum, to help ensure plenty of signal for the color and also not “lose” as much luminance information by shooting more RGB instead of lum? Naturally,

I tend to shoot equal exposures for each LRGB channel and didn’t think much about it. When I looked at the relative contributions using this tool, I realized that I probably don’t need to shoot quite as much RGB data because it is the main driver of the SNR in the SSLC result. If you want equal contributions, you need as much total exposure in the RGB image as in the Lum channel. That’s a known result and I may move in that direction with my own imaging.

John

Well written Helpful Respectful Concise Engaging
Martin Dowd avatar

Startools Compose Module has incorporated an automatic Synthetic Luminance channel option for both LRGB and RGB for the past 8 years or so

The ST Compose module is a complete channel compositing tool and is quick and simple to use.

Kudos to Ivo Jager , Startools inventor and developer

Avid Startools User

Martin

Supportive
Mike Cranfield avatar

GalacticRAVE · Sep 12, 2026 at 08:36 AM

Hi John & Mike,

excellent, such a tool is much appreciated! a suggestion: splitting the RGB image (which you need for SPCC) into separate channels and then to upload the individual channels into the script appears to me unecessary load on the user, why not upload the RGB directly into the script (and split it into temporary frames in the script) ? nothing dramatic, just a little convenience issue. thanx again for this great script!

Matthias

Thanks for this suggestion Matthias, now incorporated in version 1.1.

CS, Mike

Rob Kiefer avatar

Thanks a lot for developing this script! I am looking forward testing this and comparing the results with my previous workflow!

Rob

Well written Respectful Supportive
AstroGadac avatar

Thank you so much to you and Mike for this! I have been doing the superluminance method since I saw you talking about it a while ago on AB, and while its totally worth it (in Bortle 8 you take all the SNR you can get), it does get tedious at times. This looks like a great addition to our collective toolbox 👍️

Well written Respectful Engaging Supportive