Sunday, October 5, 2014

Vertical Stripes - again

I started imaging IC59 (the Cassiopeia Ghost) and the Heart Nebula. And when I calibrated and stacked my SII subs, this is what I got:

Vertical Stripes again!!!

I wanted to analyze them better, so I
  • calibrated the subs
  • did not align them
  • normalized them, but highlighted an area without any nebulosity or stars
  • used a very low value (1.5) for the STD sigma rejection

Now we can see the stripes really well. The weird thing is that a) the stripes don't go all the way to the left side, and b) they are ~150 pixel wide. But the KAI-16070 chip has a spacing of 40 pixels. So, it can't be the same reason that I saw with the 11002 chip.

I went ahead and checked the other image that I just took (IC59):
Here the stripes are even more prevelant. 

I then went ahead and checked 2 previous images that I took:
Tulip Nebula
Pelican Nebula
They are easily noticeable in all images. And it's always the exact same pattern. I guess the only reason why I didn't notice them was that they were very bright with only very little "empty" background.

I checked with Richard, Tim and Jim. We went through the usual list (bias frames, darks, flats...) But nothing seemed suspicious (I can't see them at all in the bias or dark frames!) Finally, Jim asked me in which mode I took them - in fast download mode. He thinks that that's the problem - he never recommends to use fast download for images - maybe for plate solving or focusing.

So, here are my results from the heart nebula:
With fast download


Without fast download

Richard thought that I might have (ambient) temperature dependent bias drift.

When looking at my bias:

It shows pretty much the exact same stripes as I see in my images (including the gap on the left hand side).

Richard suspected a temperature (ambient) dependent bias drift. I took bias frames in the house, the fridge and the freezer to check this:

HouseFridgeFreezer
  Maximum: 985 ADU
  Background: 959 ADU
  Maximum: 998 ADU
  Background: 976 ADU
  Maximum: 985 ADU
  Background: 959 ADU

The difference is always 26 ADU, but with lower ambient temperature, the signal goes down. And as easily visible, the stripes get more pronounced with lower temperatures. Richard recommended to create bias-free dark frames, i.e. take dark frames and then bias frames at the exact same temperature and subtract the bias from the dark. And then take bias frames at the same ambient temperature as the light frames and use those together with the bias-free dark frames.

Here is the stacked dark master:


And here the bias-free dark master:


If you look closer, you can see that the bias-free dark master has no vertical stripes or such.

So, I took bias frames at the same temperature as my lights (18C). And then I processed the IC59 SII subs again with the bias-free dark and the bias master at 18C. The result:

Bias at same temperature as lights (the lights were taken at 17-25 degrees, I used a bias master that was taken at 20 degrees):
And here with the bias frames at a different temperature:

I then calibrated all lights with corresponding bias frames (i.e. lights that were taken at 17C with bias that were taken at 17C and so on), this is there result:

The stripes are way less in these images, but are still there...

One final reason could be that the flats and lights are fast download and bias and darks are slow download. I'll try to take all as slow download and see how it works.

OK, I think I finally nailed it. Took flats and lights at 4MHz last night. Here is the unaligned stack:

And here is the properly aligned image:

No stripes - only annoying gradients. But I know how to deal with them...

So, only slow (4MHz) downloads and calibrate with bias at the same ambient temperature. It took me a little to find out how to set 4MHz as the default download speed in TheSkyX - turns out I have to create an equipment profile and then this setting is stored (and to get access to equipment profiles I had to update TheSkyX to the latest version).

For easier processing, I wrote myself a quick python script that adds the ambient temperature to the filename:

import os
import glob
import pyfits

for i in glob.glob('*.fit'):
  if os.path.splitext(i)[0][-1] <> 'C':
    fit_file = pyfits.open(i)
    new_name = os.path.splitext(i)[0] + ' ' + str(fit_file[0].header["FOCTEMP"]) + 'C' + os.path.splitext(i)[1]
    os.rename(i, new_name)
    print i + " renamed to " + new_name

... and now back to imaging - hurra!