How to take dark frames for astrophotography

Dark Frames are used to calibrate for noise on the sensor itself. This can be both noise caused by heat (random activation of the pixels) as well as hot pixels.

To capture dark frames, images are taken with your sensor completly covered, hense the name 'darks'. Your camera/telescope must be set to the same exposure length temperature as when taking light exposures. Matching the temperature is easy to do with a cooled camera, such as those from ASI, however for cameras with no cooling, such as DSLRs, it can be more difficult to achieve. A good way to ensure that temperature is a similar level to the light frames is to take darks directly before or after gathering your data. Generally the longer the exposure the more precise one has to be with temperature. For narrow-band photography I normally do 5 minute subs with an ZWO ASI294mm pro, and if my darks are more than a couple of degrees off it is very noticeable.

Taking dark frames can be a lengthy process, as exposure length must match the exposure used to gather data. The amount of dark frames used depends on the situation. Most of the time I will use about 40, which get combined to one master dark file by my processing software. This is on the high end, and you can easily get away with less, I would say 10 is the minimum needed to get satisfactory results. One good thing about dark frames is you can save these and build a library with them to use for multiple projects. The sensor shoudln't change signigicantly over time, so I only take new darks around every 6 months as hot pixels on the sensor can change.


Key tips:
Make sure temperature, gain/ISO, and exposure time are all matched.

Make sure no light is leaking into the sensor. It helps to take darks at night when it is dark anyway, make sure the lens/telescope is properly covered and check no light is getting in anywhere else. I also like to set my filter wheel to narrow-band this lets through the least light just in case.

Keep your dark frames in case you want to reprocess old data.