ALE
Image Processing Software Deblurring, Anti-aliasing, and Superresolution. Local Operation localhost 5393119533 |
[ Up | Error Function ]
ALE aligns each supplemental frame, in sequence, with an alignment reference image constructed from previous frames. This page outlines supported transformation classes, the algorithm used for alignment, and the properties of the alignment algorithm. Following this is a discussion of practical use of alignment options, including alignment classes and alignment in the case of spatial extension.
ALE offers the following classes of transformations:
Translations | introduced in version 0.0.0 |
Euclidean transformations (excluding reflections) | introduced in version 0.1.0 |
Projective transformations | introduced in version 0.2.0 |
Barrel distortion correction | introduced in version 0.7.0 |
Alignment proceeds by a deterministic search, beginning with an initial transformation and modifying this transformation through a series of perturbations.
The initial transformation may be loaded from a file (when
--trans-load
is used) or selected by default, or may be the
result of a global search (when --gs
is used [0.7.1 only]). The
default initial transformation is either the transformation of the original
frame (when the --identity
option is specified) or the most
recently aligned frame's final alignment (when the --follow
option
is specified). When the initial transformation is loaded from a file, and if
the --follow
option is specified, any changes to the alignment of
the previous frame are applied to the current frame at the outset.
Once the initial transformation is determined, an initial perturbation
amount determines the step size by which each of the transformation parameters
are changed. In translational or Euclidean alignment, the perturbation amount
is applied to translation -- in units of pixels on the two image axes -- and
rotation -- in units of degrees about the image center. An additional
configurable upper bound, --rot-upper
, constrains rotational
perturbation separately, preventing, e.g., a 360 degree perturbation of
rotation. In the case of projective alignment, the perturbation amount is
applied to the position of the corners of the projected quadrilateral in units
of pixels, where the projection is from the boundary of the supplemental frame
into the coordinate system of the alignment reference image. In the case of barrel
distortion correction, the perturbation amount is scaled by a multiplier
(--bda-mult
) before being applied to each barrel distortion
coefficient (if any have been defined). The rate of change of barrel distortion
coefficients per frame can be limited with the option --bda-rate
.
If possible, transformation parameters are changed to decrease the error between the supplemental frame and the alignment reference image. The perturbation amount is halved whenever it is determined that no parameter change of the current perturbation size improves the alignment of the images. A lower bound on the perturbation amount determines when the alignment is complete.
When multiple levels of detail are used, the error may be calculated on
images with a reduced level of detail. By default, this version of ALE uses a
level of detail twice as fine as the perturbation amount for perturbation
amounts larger than two, and full detail otherwise. This behavior can be changed
by adjusting the --lod-max
option.
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.