Read Noise and Dark Current Using CaLIGHTs v3.1.6

I am going to build on my last post “Counting Electrons with CaLIGHT v3.1.6” where I demonstrated how you can evaluate your astrophotos at the electron level.

Read Noise

Here I have gone ahead and called up a BIAS frame for my QHY294C using a GAIN=1600. This is a 1/10000th second exposure. I am not using any master frames here…no masterDARK or masterBIAS. I am also not using the Noise Filter, Bad Pixel Filter or Row Noise Filter. I chose a very large area for calculating statistics because I am interested in the overall statistics for this BIAS frame.

In my post “Counting Electrons with CaLIGHT v3.1.6”, I was able to determine the system gain of my QHY294C to be 0.218e-(16b) at GAIN=1600. This value means that, at GAIN=1600, an increment of one in the pixel value is equivalent to an increase of 0.218 electrons in the pixel well. So, I am going to display what happens when I change the CaLIGHTs Multiplier to 0.218.

The image looks exactly the same but the statistics have changed. For this analysis the Min, Avg and Max values are not used. I only care that the min values are not zero. This would tell me that some values are being clipped at zero…which I don’t want because it will mess up the SD values. For BIAS and DARK frames, the SD values reflect the noise in the image. The SD values for red and blue pixels are 1.71e- and 1.69e- respectfully. There is always twice as many green pixels which causes their SD value to be calculated differently. 

A BIAS frame contains, not surprisingly, the camera BIAS. This BIAS is composed of a signal and its associated noise. The signal can be considered the same for every BIAS frame. Its associated noise is different for each BIAS frame and it is commonly referred to as the camera Read Noise.

The BIAS signal is what is captured in a masterBIAS frame. This BIAS signal is like an array of small offset values…one for each pixel. Each offset is unique for each pixel and are unique for each camera. If I tell CaLIGHTs to use a masterBIAS frame it will subtract this BIAS signal and we will be left with the Read Noise.

The image is slightly different because the BIAS signal has been subtracted and what you are viewing is the Read Noise.

The SD values have decreased slightly to 1.62e- for the red pixels and 1.62e- for the blue pixels. These values are the best estimate for the camera Read Noise. QHYCCD has stated that the QHY294C read noise at GAIN=1600 is 1.63e-. So I have just shown how you can use CaLIGHTs to determine your camera’s read noise.

DARK Current

In 2021 I did a lot of research regarding DARK current and I found that how DARK Current is documented by astroCAM vendors is slightly misleading. I created this graph for one of my videos. It displays what QHYCCD says the DARK Current is for my QHY294C and what ZWO says the DARK Current is for their ASI2600MC. The graph implies that the ASI2600MC has better DARK Current characteristic than my QHY294C which I agree is true…BUT…Did you know that if I plotted the performance curve for my uncooled Nikon D5300, or any DSLR, it would be better than both of them!  This bizarre situation arises because all DSLRs use a mathematical concept I call BLACKADU.

For any given DSLR, their BIAS and DARK frames contain the same average values for their pixels. This is because the electronics in all DSLRs bias the pixel values up or down so that zero light corresponds to a fixed constant. For my D5300 this is 600. For 14b Canon cameras this is typically 2048. These values are constants and do not vary with ISO, Exposure or camera temperature. What does vary greatly is the noise in these DARK frames. But noise has nothing to do with the DARK Current graph displayed here.

The Y axis for the DARK Current graph is labelled “DARK current (e-/s/pixel)”. This graph is actually how fast the average pixel value in DARK frames for the QHY294C and ASI2600MC will increase at different camera temperatures. For example:

At a camera temperature of approximately 14 Celcius my QHY294C pixels will collect DARK current electrons at an average rate of 0.1e-/s. This data point is indicated by the blue arrow. For a 600 second DARK frame this means the pixels will collect, on average, 0.1 x 600 = 60e-.  If I use the system gain at GAIN=1600, which equals 0.218e-, I can calculate that the average pixel value in my DARK frames would increase by 60/0.218 = 275 counts.

The ASI2600MC curve tells me that this camera’s average pixel values would also increase, but to a much smaller amount. As I explained earlier, the average pixel values in any DSLR would not increase at all. So while these curves are commonly supplied by dedicated astroCAM vendors I think you can now understand why I think they are of limited use.

This graph only tells you how the average pixel values will react to DARK Current. MasterDARK frames go one step further as they identify how each pixel reacts to DARK Current. Some pixels react more strongly to DARK current than others. This means that the camera GAIN(ISO), Exposure and temperature need to match your LIGHT frames. In some cases you can scale your masterDARK frames. Scaling is a quick and dirty method for dealing with different settings. CaLIGHTs has a DARK optimization option which uses a statistical method for determine the correct scaling factor. This works well for DSLRs that do not exhibit significant Amp Glow. My QHY294C has significant Amp Glow so I have created masterDARKs for a limited combination of GAINs, Exposures and Temperatures. I only shoot astrophotos at these settings.

DARK Current also has a random Noise component but it is not documented anywhere. DARK Current Noise is large for DSLRs…mainly because DSLRs rely on passive cooling. I did my own research on this topic with my Nikon D5300. You can find my write-up on how I cut the DARK Current Noise in HALF for my D5300.

It is possible to identify the DARK Current Noise in my QHY294C. I can use a DARK frame and it’s associated masterDARK. This will remove the DARK Current signal from my DARK frame and leave a combination of the DARK Current noise and the Read Noise.

Here I have set the CaLIGHTs Multiplier to 0.218 so that the SD values are scaled in electrons(e-). This is what a single DARK frame looks like without any masterDARK being used. The SD values are quite high. 43e-(red) and 59e-(blue). You can also see the Amp Glow as a starburst located towards the top of the right edge. Less obvious is the brightening of the top and bottom edges. The DARK frame is a 600 second exposure with the camera GAIN=1600 and the cooler set to -10 Celcius.

Here I have applied a masterDARK. The most obvious effect is the canceling out of the Amp Glow. The SD values are also much smaller. 4.25e-(red) and 2.65e-(blue) The Max value for the red pixels is 2470 which is much larger that for the blue pixels (Max=782) which helps to explain the difference in values. You may also notice that the Min values for the red and blue pixels are both zero which also messes with the statistics. I suspect that some of the red pixels are hot pixels. Hot pixels always have high pixel values…even in DARK frames. It’s possible that the pixels that are causing the Min=0 values are Cold pixels. Lets keep going even though the statistics are getting a little suspect.

So lets do some calculation on the blue pixel SD value of 2.65e-. We know that the noise in this image should contain only the Read Noise and the Dark Current Noise. The Read Noise at GAIN=1600 is 1.63e-. So calculating for the Dark Current Noise yields the follow:

TotalNoise = SquareRoot(ReadNoise^2 + DarkCurrentNoise^2)   re-arranging terms yields

DarkCurrentNoise = SquareRoot(TotalNoise^2 – ReadNoise^2) = SquareRoot(2.65 x 2.65 – 1.63 x 1.63) = 2.09e-

So…even though I am cooling this camera to -10 Celcius the Dark Current Noise is larger than the Read Noise? I think that’s significant because vendors like to emphasis low read noise and yet Dark Current noise can be just as significant. Going back to the DARK Current Graph I know that, for my QHY294C, the e-/s/pixel value at -10 Celcius is 0.009. For a 600 second DARK frame this would be 0.009 x 600 = 5.4e- which is 2.5 times larger than my calculated DARK Current noise.

I also have DARK frames taken where the cooler was set to 0 Celcius. When I repeat this test using a 0 Celcius DARK frame and masterDARK I get the following SD values.  5.35e-(red) and 4.75e-(blue) Using the same equations I solved for DarkCurrentNoise in the blue pixels and find it equals 4.46e- Increasing the camera temperature from -10 to 0 has caused the Dark Current Noise to more than double. That’s important when taking Narrowband images that collect very low numbers of electrons. It is a common assumption that the noise exhibited in the pixels of an imaging chip will roughly double for every increase of 6 Celcius so I have reason to believe my calculations have some credibility. Going back to the DARK Current Graph I know that, for my QHY294C, the e-/s/pixel value at 0 Celcius is 0.0215. For a 600 second DARK frame this would be 0.0215 x 600 = 12.9e- which is 2.9 times larger than my calculated DARK Current noise.

ASI2600MC Pro

I have BIAS, DARKs, masterBIAS and masterDARKs for an AIS2600MC pro . This post is already too long so I will just summarize what I found. The files I have are for GAIN=0 and GAIN=100 which are the two settings suggested for astrophotography. The cooler was set to -15 Celcius for these files.

First I used a GAIN=0 BIAS and masterBIAS to determine the camera’s Read Noise. According to the ZWO site, the system gain at GAIN=0 is 0.775 e-/ADU. This is a 16b camera so this is also the number I used as a custom Multiplier. The SD values for the red and blue pixels are 3.00e- and 3.03e- respectively. The ZWO website indicates that the Read Noise should be 3.35e-.

I then switched to the GAIN=100 BIAS and masterBIAS. ZWO indicates that the system gain at GAIN=100 will be 0.25e-/ADU, so I changed the custom Multiplier to 0.25. The resulting SD values for the red and blue pixels are 1.25e- and 1.27e- respectively. The ZWO website indicates that the Read Noise at GAIN=100 is 1.45e-. So the CaLIGHTs calculated Read Noise values are slightly lower that what ZWO reports on their website.

Finally, I used the GAIN=0 DARK and masterDARK to try and calculate a value for the DARK Current Noise. The resulting SD values for the red and blue pixels are 3.26e- and 3.38e- respectively. Using the CaLIGHTs derived Read Noises I calculated that the DARK Current Noise for the red and blue pixels are 1.28e- and 1.50e- respectively

Switching to the GAIN=100 DARK and masterDARK, the resulting SD values for the red and blue pixels are 1.36e- and 1.40e- respectively. Using the CaLIGHTs derived Read Noises I calculated that the DARK Current Noise for the red and blue pixels are 0.54e- and 0.59e- respectively.

It is tempting to compare the QHY294C DARK Current Noise figure of 2.09e- at -10 Celcius with the ASI2600MC Pro DARK Current Noise figures of 0.54e- and 0.59e- at -15 Celcius. The ASI2600MC Pro was operating at -15 Celcius which is almost 6 degrees Celcius colder than my QHY294C(-10 Celcius). Remember that the noise doubles when the temperature increases by 6 Celcius. The other detail here is that my QHY294C DARKs are 600 second exposures. The ASI2600MC Pro DARKs are 180 second exposures. The QHY294C DARKs are over 3 times longer. I don’t know if the DARK Current Noise increases with exposure but DARK Current is widely described as a phenomenon that increases with time. So…if you start with a ASI2600MC Pro DARK Current Noise value of roughly 0.57e- and then double it to account for the nearly 6 Celcius temperature difference between the two cameras and then multiple this result by 600/180 to accommodate the difference in exposures you end up with a figure of 3.8e- compared to the 2.09e- figure from the QHY294C. It’s probably not a fair comparison…but it sure is interesting.

Canon 750D

I also have BIAS, DARKs, masterBIAS and masterDARKs for a Canon 750D. This is a 14 bit DSLR camera with no cooler. All of the files are taken at ISO 1600. The DARK and masterDARK are 180 second exposures. The photontophotos.net website states that the fullwell at ISO 1600 is 1848e-. There are two other parameters that are important in determining the system gain. BlackADU=2048 and MaxADU=15360 are two important parameters extracted from camera RAW files (cr2 in this case) by CaLIGHTs. BlackADU=2048 means that the pixel values in every RAW file taken by this camera will be biased up or down so that a value of 2048 always corresponds to total darkness. Every DSLR has a BlackADU value. MaxADU=15360 means that the maximum pixel value in the camera RAW files will be 15360. Some manufacturers do this for unknown reasons. The maximum possible value for MaxADU is 16384 for a 14 bit camera.

So…all this means is that at ISO 1600 the camera will scale the 0 to 1848 electrons to correspond to a 2048 to 15360 pixel value range. This means that the CaLIGHTs Multiplier needs to be set to 1848 / (15360 – 2048) = 0.139

When I use the BIAS, masterBIAS and the Multiplier = 0.139, the red and blue SD values are 2.01e- and 1.97e-. I would conclude that the Canon 750D has a Read Noise of 2e-. The Photonstophotos.net site says that the Canon 750D Read Noise is 1.9e-. Pretty darn close.

When I use the DARK, masterDARK and the Multiplier = 0.139, the red and blue SD values are 4.72- and 4.52e-. Using the CaLIGHTs derived Read Noises I calculated that the DARK Current Noise for the red and blue pixels are 4.27e- and 4.07e- respectively. I think these large values are to be expected because the camera temperature was 28 Celcius when this 180 second DARK was taken…which is not unusual for an uncooled DSLR. I suspect that trying to cope with the unregulated camera temperature is a big reason why DSLR users resist attempting full image calibration with BIAS and DARK frames.

Nikon D5300

I also have BIAS, DARK, masterBIAS and masterDARKs for my Nikon D5300. These were all taken at ISO 1600. The DARKs were taken with 300 second exposures. BlackADU=600 and MaxADU=16384 are the parameters for this camera. The old Sensorgen site indicated that the fullwell is 2097e- at ISO 1600. Combining all of these parameters yields a system gain as follows

System gain = 2097 / (16384 – 600) = 0.133

With the CaLIGHTs Multiplier set to 0.133, the SD values for red and blue pixels are 1.70e- and 1.74e-. The sensorgen site indicated that the Read Noise is 2.0e-. This is larger that what CaLIGHTs calculated…more on this a little later.

When I use the DARK, masterDARK and the Multiplier=0.133 the red and blue SD values are 4.05e- and 4.21e-. Using the CaLIGHTs derived Read Noises I calculated that the DARK Current Noise for the red and blue pixels are 3.68e- and 3.83e-.

The results for my D5300 are a little bit better than for the Canon 750D but there is something going on with my D5300. The folks at Nikon have a very unique scheme for how they write their .NEF RAW files for this camera…and I expect many other Nikon cameras. They took the approach that because BlackADU is 600 it does not make sense to bother with pixel values that are less than 600. As a result they impose a minimum clamp of roughly 590 on these pixels value. Canon does not have a minimum clamp like this…neither does the astroCAM vendors. What this means is that the BIAS and DARK frame for my D5300 have a very significant number of their pixel values clipped at this 590 limit.

This is a histogram for my Nikon D5300 300 second DARK that I generated using CaLIGHTs. A histogram is basically a fancy sorting of the pixel values. The pixels are first separated into red, green1, green2 and blue pixels. Then each pixel color is sorted so that it’s possible to determine how many pixels have a value of 600, 601, 602, 603 etc. This graph then has these pixel values as the X axis and the number of pixels with that same value as the y axis. Overall this graph should look like a classic bell curve..but the entire lower half of the bell curve is missing! It’s not shown here but there is a HUGE number of pixels where the value is 590. This is what happens as a result of Nikon’s “minimum clamp at 590” scheme. The same histogram for a Canon DSLR has the entire bell curve.

This really messes up any statistics that CaLIGHTs calculates, which is why I suspect that the SD values calculated for my D5300 are not credible. I don’t think this messes up any LIGHT frames taken with this camera. The sky background and the method of “exposing to the right” keep the pixel values well away from the 590 minimum clamp.

What does get corrupted are masterBIAS and masterDARKs. All master files depend on their being no clipping, or clamping, of the data otherwise the results can be skewed significantly. My experience with my D5300 was that my masterBIAS and masterDARK seemed to work well for me. It may also be that achieving low noise astrophotos was always going to be difficult because of the high DARK Current Noise due to the absence of a cooler.

Peter

Leave a Comment