enblend(1)

NAME
enblend - combine images using a multiresolution spline

SYNOPSIS
enblend [OPTIONS] -o output-file input-files...

DESCRIPTION
Enblend overlays multiple TIFF images using the Burt & Adelson multiresolution spline. This technique tries to make the seams between the input images invisible. The basic idea is that image features should be blended across a transition zone proportional in size to the spatial frequency of the features. For example, objects like trees and windowpanes have rapid changes in color. By blending these features in a narrow zone, you will not be able to see the seam because the eye already expects to see color changes at the edge of these features. Clouds and sky are the opposite. These features have to be blended across a wide transition zone because any sudden change in color will be immediately noticeable. Enblend expects each input TIFF to have an alpha channel. The alpha channel should indicate the region of the file that has valid image data. Enblend compares the alpha regions in the input files to find the areas where images overlap. Alpha channels can be used to indicate to Enblend that certain portions of an input image should not contribute to the final image. Enblend does not align images for you. Use a tool like Hugin or PanoTools to do this. The TIFFs produced by these programs are exactly what enblend is designed to work with. Sometimes these GUIs allow you to select feathering for the edges of your images. This treatment is detrimental to Enblend. Turn off feathering by deselecting it or setting the feather width to zero. Enblend blends the images in the order you specify on the command line. You should order your images according to the way that they overlap, for example from left-to-right across the panorama. If you are making a multi-row panorama, I recommend blending each horizontal row individually, and then running Enblend a final time to blend all of the rows together vertically.

COMMON OPTIONS

-a  Pre-assemble non-overlapping images before each blending iteration. This overrides the default behavior which is to blend the images sequentially in the order given on the command line. Enblend will do fewer blending iterations, but it will do more work in each iteration.

-h  Print information on the available options.

-l num
    Use exactly this many levels for pyramid blending. This trades off quality of results for faster execution time and lower memory usage. The default is to use as many levels as possible given the size of the overlap region. Enblend may still use a smaller number of levels if the geometry of the images demands it.

-o output-file
    Required. Specify the name of the output file.

-v  Verbose output.

-w  Blend around the -180/+180 boundary. Useful for full-360 panoramas. Enblend currently does not blend the zenith or the nadir, so you may still see some seams in these areas.

--compression=COMP
    Select the type of compression used for the output image. For TIFF files, the valid settings are NONE, PACKBITS, LZW, and DEFLATE. The default is NONE. For JPEG files, the valid setting is an integer between 0 and 100.

-z  Use LZW compression for the output image.

-x  Checkpoint partial results to the output file after each blending step.

input-files
    Two or more TIFF files.

EXTENDED OPTIONS

-b kilobytes
    Set the block size for Enblend's image cache. This is the amount of data that Enblend will move to and from the disk in one go. The default is 2 MiB which should be good for most systems.

-c  Use the CIECAM02 color appearance model for blending colors. Your input TIFF files should have embedded ICC profiles. If no ICC profile is present, Enblend will assume that image uses the sRGB color space. The difference between using this option and Enblend's default color blending algorithm is very slight, and will be most noticeable when you need to blend areas of different primary colors together.

-g  Gimp (ver. < 2) and Cinepaint exhibit unusual behaviors when loading images with unassociated alpha channels. Use the -g flag to work around this. With this flag Enblend will create the output image with the associated alpha tag set, even though the image is really unassociated alpha.

--gpu
    Use the graphics card to accelerate some computations. This is an experimental feature and it may not work on all systems. Currently, only mask optimization strategy 1 benefits from this option.

-f WIDTHxHEIGHT
    Set the size of the output image manually. This is useful when the input images are cropped TIFF files, such as those produced by Nona.

-m megabytes
    Set the size of Enblend's image cache. This is the amount of memory Enblend will use for storing image data before swapping to disk. The default is 1 GiB.

--visualize=FILE
    Create an output image that visualizes the mask optimization process. This shows Enblend's view of the overlap region and how it decided to route the seam line. If you are experiencing artifacts or unexpected output, it may be useful to include this visualization image in your bug report.

MASK GENERATION OPTIONS

--coarse-mask
    Use a scaled-down version of the input images to create the seam line. This is the default.

--fine-mask
    Use the full-size images to create the seam line. This can be slow. Use this option if you have very narrow overlap regions.

--optimize
    Use a two-strategy approach to route the seam line around mismatches in the overlap region. This is the default.

--no-optimize
    Turn off seam line optimization. Combined with --fine-mask, this will produce the same type of mask as Enblend 2.5.

--save-mask=FILE
    Save the generated mask to an image file. Use this option if you wish to edit the location of the seam line by hand. This will give you a template of the right size that you can edit to make your changes. Then, use the --load-mask option to blend the project with your custom seam line.

--load-mask=FILE
    Instead of generating a mask, use the one in the given file.

ADDITIONAL INFORMATION
Please see the Enblend web page at:

http://enblend.sourceforge.net/

AUTHOR
Andrew Mihal <acmihal@users.sourceforge.net>