ALE User Manual: Rendering

ALE Image Processing Software Deblurring, Anti-aliasing, and Superresolution. Local Operation localhost 2684415918

[ Up ]

# ALE Rendering

Rendering determines how an output image is constructed from a series of aligned input frames, and occurs in two stages: incremental rendering and Irani-Peleg rendering. Additional rendering options include exposure registration, certainty-weighted rendering, spatial extension, range extension, scaling, and bayer pattern specification. Experimental options for video stream processing are also available.

## Incremental Rendering

The incremental renderer uses configurable rendering chains to determine the output image. It can increase resolution and reduce aliasing, but it cannot reduce blur.

## Irani-Peleg Rendering

The Irani-Peleg renderer uses configurable point-spread functions to model blur, which is then reduced by an iterative backprojection technique. For iteration defaults, see the default settings page.

    --ips <i>         Run <i> iterations.

## Exposure Registration

By default, ALE adjusts an exposure model to minimize differences in tone between frames. The option `--exp-noregister` indicates that exposure should be assumed uniform across all frames. In this case, no adjustment is performed.

    --exp-register    Register exposure between frames.  [default]
    --exp-noregister  Assume uniform exposure across all frames.

## Certainty-weighted Rendering

The exposure model in ALE includes an associated certainty function, which quantifies the reliability of sensor measurements. By default, this function is raised to the zeroth power, to obtain uniform certainty for all measurements. To specify a different certainty exponent, the option `--cx` can be used. This option is best used in combination with `--exp-extend` (see below) and `--ips`. For defaults, see the default settings page.

    --cx <x>          Render with certainty exponent <x>
    --no-cx           Render with uniform certainty.

## Scale factor

Rendering with a larger scale factor results in image output of the specified larger scale. Larger scales can improve alignment precision and output image quality, but can also increase alignment and rendering times.

    --scale=x         Scale images by the factor x (where x is at least 1.0)

## Image extents

The --extend option records pixel data that falls outside of the region of the first frame in the sequence. This can be useful for providing additional alignment constraints or creating panoramic image mosaics. (For mosaics, see also the description of the --follow option in the alignment section.)

    --extend          Increase image extents to accommodate all pixel data.
    --no-extend       Don't increase extents; crop to original frame. [default]

## Exposure extents

By default, ALE restricts the output range to that of the original frame. To adjust the output range to accommodate the ranges of all input frames, specify `--exp-extend`. For defaults, see the default settings page.

    --exp-extend      Extend range to include all calculated values.
    --exp-noextend    Restrict to the original frame's range.

## Bayer pattern specification

Many cameras sample only one color channel per output pixel. To ignore the other channels, a bayer pattern can be specified. In versions prior to 0.7.3, device-specific bayer patterns override the command-line specification. In version 0.7.3 and later, the reverse holds.

    --bayer <b>       Set default bayer pattern to <b>, one of:
                        (clockwise from top left pixel)
                          rgbg      Red-green-blue-green
                          gbgr      Green-blue-green-red
                          grgb      Green-red-green-blue
                          bgrg      Blue-green-red-green
                          none      RGB-RGB-RGB-RGB
                      Default is none or device-specific.

## Video stream processing (Experimental)

If a sequence of frames represents a video stream, then, in addition to producing a single output image, ALE can also produce one or more sequences of processed frames, corresponding to one or more occurrences of the `--visp` option. This option has its own associated scaling option, as well as an option to show excluded regions as dimmed wherever possible.

    --visp <args>     Process a video sequence.
                         <args> are:
                             <chain> <stabilization-type> <prefix> <suffix>
                         <chain> is an incremental rendering chain.
                         <stabilization-type> is one of:
                             ma:<x>     Moving average over 2*<x> + 1 frames
                             sf:<x>     Stabilize to single frame number <x>
                             identity   Same as ma:0
                         <prefix> is an output file prefix
                         <suffix> is an output file suffix
    --visp-scale=<x>  Use scale <x> for VISP output.  (default is 1.0)
    --exshow          For single-invariant chains, show --ex regions dimmed.

### Video stream processing example

To mimic the behavior of repeated applications of the 0.6.0 `--replace` option over a sequence of frames, the following `--visp` option could be used.

    --visp last:nex:triangle:2 sf:0 frame .jpg

For better filtering, the following option could be used instead:

    --visp last:nex:sinc*lanc:6 sf:0 frame .jpg

Copyright 2003, 2004 David Hilvert

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.