(→‎Fourier transform based: phase correlation)
 
(One intermediate revision by one other user not shown)
Line 36: Line 36:


===Fourier transform based===
===Fourier transform based===
Fourier transform is a very powerful tool in signal processing and image processing. An image can be seen as set of signals of various frequencies, amplitudes and phases. Two similar images shifted will have the same frequencies and amplitudes but different phases.
Fourier transform is a very powerful tool in signal processing and image processing. An image can be seen as set of signals of various frequencies, amplitudes and phases. Two similar images shifted will have the same frequencies and amplitudes but different phases. Finding this phase difference is called [https://en.wikipedia.org/wiki/Phase_correlation phase correlation] and more can be found on the linked Wikipedia article.


===Other are coming===
===Other are coming===
Line 55: Line 55:


==[[Siril]]==
==[[Siril]]==
Siril uses the triangle similarity algorithm as described above. This algorithm is a good starting point for finding correspondences between images. By default, we build all existing triangles for the brightest 20 detected stars, i.e, Nx(N−1)x(N−2)/6 distinct triangles are built and matched pairs are computed. Although this algorithm provides good results we've added another one to ensure that no false matched star have been taken into account: the RANSAC routine [https://en.wikipedia.org/wiki/Random_sample_consensus]. This algorithm, coming from the opencv library, can deal with a large amount of outliers in the set of input data. After the final star matching algorithm, the list of star pair matched is very robust and can be trustfully used. Finally, the homography matrix is computed and the transformation applied.

Latest revision as of 21:47, 22 June 2018

WORK IN PROGRESS

Registration

Registration is the process of aligning a set of images so that they can be used as if taken from the same point of view, in astronomy this applies to aligning images in order to be able to stack them. This page contains a comprehensive list of registration methods documented in bibliography or in amateur astronomy image processing software. With the development of Siril, it has been quite a challenge to choose and implement a registration method that works well when atmospheric turbulence affects distances between items in the images, which happens in high-resolution imaging or simply planetary images.

Most algorithms need a reference image to compare and align all other images of the set to. In some cases, like lucky-imaging planetary images, this reference image cannot be taken from the main sequence because they are too noisy and have a poor contrast. Creating it can be a challenge of its own.

Some registration methods can compute sub-pixel alignment parameters, in particular for field rotation. While this is very precise information, one has to wonder if the loss of data accuracy inherent to the redistribution of pixel information in neighbouring pixels is worth the sub-pixel alignment. Super-resolution and drizzle techniques may come to help here.

Star alignment methods

Stars appearing in deep-sky images are very good points of interests to use to align images. Their light is distributed on photosites of the sensor following a Gaussian law, see the article on PSF, meaning that the peak of this Gaussian curve can be used to precisely know where the star is in the image, to a sub-pixel scale. Aligning two images is then a matter of overlapping the positions of some stars identified in the two images, but identifying which star in an image is the same as in another can be difficult, especially when field rotation occurs. In most algorithms, characterizing a star is only possible when the star is not saturated in the image.

One-star alignment

In most simple cases, an isolated star can be used to align all images of the sequence. Images acquired with an equatorial mount telescope or in a short timespan generally suffer of low enough field rotation to make this method advantageous.

Pros:

  • very fast
  • very easy to implement

Cons:

  • translation only, no field rotation
  • movement of the star across images of the set should not approach the mean distance in pixels between the star and its neighbour or the star can be mixed up with another at some point and registration would be completely wrong

Multiple-star alignment

If input images are misaligned by a large amount or suffer from field rotation, using a single star for registration is not possible, and using several can be as much challenging. The triangle similarity algorithm [1], a general purpose geometry matching function, can be used very well in star field images. Triangles are formed with bright stars, and matching triangles are a good indicator of similar fields of view. The transformation required to pass from a triangle to another can then be used to transform the images in order to align them. Two triangles identified already provides pretty good confidence.

Pros:

  • accurate with many stars in the field of view
  • translation, rotation and even more complex operations can be detected

Cons:

  • slower than single-star
  • works only when at least the same 6 bright stars are visible on all images

Pattern recognition methods

Close-up views of bright nebulas, galaxies or planets may require a specific approach to image registration, based on pattern recognition. An example of such an algorithm would be to try aligning two clouds pictures, the brightness difference in clouds regions or the shape of their contour could be used.

Fourier transform based

Fourier transform is a very powerful tool in signal processing and image processing. An image can be seen as set of signals of various frequencies, amplitudes and phases. Two similar images shifted will have the same frequencies and amplitudes but different phases. Finding this phase difference is called phase correlation and more can be found on the linked Wikipedia article.

Other are coming

multi-point pattern matching, alignment points and their size, image distorsion...

What amateur image processing software use

Iris

DeepSkyStacker

Registax

AutoStakkert!

Version 2 enabled multi-point alignment for large planetary images. The process is described in this post. Basically, AS!2 proceeds like that: image quality is evaluated, a reference image is automatically made by stacking the best images to have a good contrast and no distortion, alignment points (AP) are positioned on this reference image, multi-point registration is done. Images are not morphed to give the final result, only best AP are used, but it's still unclear how.

PixInsight

Siril

Siril uses the triangle similarity algorithm as described above. This algorithm is a good starting point for finding correspondences between images. By default, we build all existing triangles for the brightest 20 detected stars, i.e, Nx(N−1)x(N−2)/6 distinct triangles are built and matched pairs are computed. Although this algorithm provides good results we've added another one to ensure that no false matched star have been taken into account: the RANSAC routine [2]. This algorithm, coming from the opencv library, can deal with a large amount of outliers in the set of input data. After the final star matching algorithm, the list of star pair matched is very robust and can be trustfully used. Finally, the homography matrix is computed and the transformation applied.