Hi, thanks so much for the work you are doing with Siril, this is an amazing piece of software!
I have a question regarding the behavior of the pixel rejection when drizzling. Since drizzling is done during registration and before stacking, I am assuming that all pixels are drizzled first and then pixel rejection is done during stacking on drizzled images. Is that correct?
I believe PI and SAS have a different approach, where they stack first without drizzling to detect what pixel to reject. Then the drizzling is not apply to the rejected pixel and another stacking of the drizzled image is done.
Is there a way to do this in Siril?
My understanding is that reject high and reject low map generated after stacking are a composite of all the pixel rejected from all the images, right? Is there a way to generate the pixel rejection map for each image so that they could be removed before drizzling?
Hi,
I don’t know what PI does however Siril doesn’t do what you’re describing. We have different views to the PI authors on the technical merits of different approaches to a number of techniques, and I guess this is one of them.
In the HST toolkit there is a technique called “blot”, which does something like this: it takes the median of an initial drizzled image and then blots it back to each input frame for cosmic ray rejection, and then drizzles the result again. This is important in HST work where there are typically 4 frames being drizzled, each at half an output pixel spacing, however in a typical amateur application where we have far larger numbers of images, we can get perfectly good results using the standard sigma rejection techniques when stacking the drizzled frames. And of course hot pixel removal has already been done at the calibration stage.
I might implement the blot technique in 1.5: not so much for rejection but because it could allow an interesting technique called drizzlefi, which is essentially a recursive drizzle that refines the results based on the residuals from blotting back to the input sequence. I was interested in implementing it along with drizzle but it’s very niche (lots more computation!) and would be tedious to implement in C, however it could be much better implemented using python scripting (which wasn’t available when I incorporated the drizzle code). However adding blot would also allow someone to implement the drizzle-blot-drizzle rejection technique if they really wanted to.