>> the results of statistic, particulary sigma, of the frame is very different from the three others software: Iris, Pix, Siril as you can see on the joined images. Why ?
I just took a glance in the statistics functions of siril and kstars. The algorithms used seem a bit different to me, however I think using functions like sqrt(), division etc.. are bound to cause inaccuracies with floating point numbers.
gives an insight about what those inaccuracies could be. So this inaccuracy in each stage of computation may or may not get exaggerated, and this exaggeration will be different for different algorithms. Sometimes choosing to do some mathematical operations before or after a stage in the same algorithm may work out on paper but not on computers.
I'd love Jasem's take on this too.
>> - the way the square must be set on the image is not very convenient. It's best to draw the frame on the image at the desired location and size. As all the other software do: Pix, Siril, Iris
Drawing the frame is possible with shift+click if thats what you are looking for. However if you want to specify x,y and size for the square thats a new thing
Thanks for your answer.I am not a programmer so the link you gave was not very accurate for me. I understand it may be some problems with the calculation. Are we standing an answer from Jasem ?
Okay, so thing with computers is that they can only store numbers up to a certain precision. For example the number 0.3 is probably stored as 0.30000000000000004. So when we do operations, this outcome will be different than what is expected. This also paves a way for rounding errors, division errors, error over errors as we stack up operations.
Ideally, we should use scientific computing libraries to solve this issue but that would slow down computations and will require a lot of change in the codebase. This is probably not feasible for the gain in accuracy and is probably the reason why both kstars and siril doesn't use those libraries.
Main source of floating point inaccuracies comes when you do operation on numbers with vastly different magnitudes. For example if you try +1 to 20million you will end up with 20 000 002 because float can't represent 20 000 001.
But this errors pops up when you try calculate stddev from millions of pixels. 100x100 pixels should be just fine even with float.