blob: adb5edb424a4dd78c02b646563418224bf01cb17 [file] [log] [blame]
.TH IM_GLOBAL_BALANCE 3 "13 May 1991"
.SH NAME
im_global_balance, im_global_balancef \- perform global mosaic balancing on
an image
.SH SYNOPSIS
#include <vips/vips.h>
int
.br
im_global_balance( IMAGE *in, IMAGE *out, double gamma )
int
.br
im_global_balance_float( IMAGE *in, IMAGE *out, double gamma )
.SH DESCRIPTION
These functions takes an image assembled with the mosaicing functions
(im_*merge*(), im_*mosaic*()), take it apart, and reassemble it, globally
optimising the image balance. This is useful for assembling image mosaics
from sources where the exposure is uncontrolled and may vary from tile to tile
--- such as video, or photographic sources.
The function finds a set of factors, one for each of the input images, and
scales each image by its factor before reassembling. The factors are chosen so
as to minimise the average grey-level difference between neighboring images at
their overlaps. Trivial overlaps (where the width and height of the overlap
are both less than 20 pixels) are ignored.
The gamma parameter is the gamma of the image input system. It is used during
brightness adjustment. Set to 1.0 to disable gamma, to 1.6 for a typical IR
vidicon camera, or 2.3 for a typical video camera.
It relies on information left by the mosaicing functions in ".desc" files. If
the ".desc" file of the input image has been corrupted, or is strangely
complicated, or if any of the original input images have been moved or
deleted, the function can fail.
The function will fail for mosaics larger than about 7 by 7 frames, since it
will run out of file descriptors (UNIX sets a limit of 256 per process). To
balance larger mosaics, just assemble them in 7x7 sections, balancing and
saving each part in turn, before loading, assembling and balancing the final
image. The function can also fail if there are significant mosaicing errors.
im_global_balancef() works as im_global_balance(), but outputs a float
rather than a uchar image. This lets you adjust the range of the image
manually, if the automatically-found scales are causing burn-out.
.SH RETURN VALUE
All functions return 0 on success and -1 on error.
.SH SEE ALSO
im_lrmerge(3), im_lrmosaic(3).
.SH COPYRIGHT
Birkbeck College and the National Gallery, 1991 - 1995.