Your company here — click to reach over 10,000 unique daily visitors

enfuse - Man Page

manual page for enfuse 4.2


enfuse [options] [--output=IMAGE] INPUT...


Fuse INPUT images into a single IMAGE.

INPUT... are image filenames or response filenames.  Response filenames start with an "@" character.


Common options

-l,  --levels=LEVELS

limit number of blending LEVELS to use (1 to 29); negative number of LEVELS decreases maximum; "auto" restores the default automatic maximization

-o,  --output=FILE

write output to FILE; default: "a.tif"

-v,  --verbose[=LEVEL]

verbosely report progress; repeat to increase verbosity or directly set to LEVEL


set compression of output image to COMPRESSION, where COMPRESSION is: "deflate", "jpeg", "lzw", "none", "packbits", for TIFF files and 0 to 100, or "jpeg", "jpeg-arith" for JPEG files, where "jpeg" and "jpeg-arith" accept a compression level

Advanced options


force COLORSPACE for blending operations; Enfuse uses "CIELUV" for images with ICC-profile and "IDENTITY" for those without and also for all floating-point images; other available blend color spaces are "CIELAB" and "CIECAM"

-c,  --ciecam

use CIECAM02 to blend colors; disable with "--no-ciecam"; note that this option will be withdrawn in favor of "--blend-colorspace"

-d,  --depth=DEPTH

set the number of bits per channel of the output image, where DEPTH is "8", "16", "32", "r32", or "r64"


manually set the size and position of the output image; useful for cropped and shifted input TIFF images, such as those produced by Nona


associated-alpha hack for Gimp (before version 2) and Cinepaint

-w,  --wrap[=MODE]

wrap around image boundary, where MODE is "none", "horizontal", "vertical", or "both"; default: none; without argument the option selects horizontal wrapping

Fusion options


weight given to well-exposed pixels (0 <= WEIGHT <= 1); default: 1


weight given to highly-saturated pixels (0 <= WEIGHT <= 1); default: 0.2


weight given to pixels in high-contrast neighborhoods (0 <= WEIGHT <= 1); default: 0


weight given to pixels in high entropy neighborhoods (0 <= WEIGHT <= 1); default: 0


optimum exposure value, usually the maximum of the weighting function (0 <= OPTIMUM <= 1); default: 0.5


characteristic width of the weighting function (WIDTH > 0); default: 0.2


average over all masks; this is the default


force hard blend masks and no averaging on finest scale; this is especially useful for focus stacks with thin and high contrast features, but leads to increased noise

Expert options


save weight masks in SOFT-TEMPLATE and HARD-TEMPLATE; conversion chars: "%i": mask index, "%n": mask number, "%p": full path, "%d": dirname, "%b": basename, "%f": filename, "%e": extension; lowercase characters refer to input images uppercase to the output image default: "softmask-%n.tif":"hardmask-%n.tif"


skip calculation of weight maps and use the ones in the files matching the templates instead.  These can be either hard or soft masks.  For template syntax see "--save-masks"; default: "softmask-%n.tif":"hardmask-%n.tif"


use the ICC profile from PROFILE-FILE instead of sRGB


set the layer selector ALGORITHM; default: "all-layers"; available algorithms are: "all-layers": select all layers in any image; "first-layer": select only first layer in each (multi-)layer image; "last-layer": select only last layer in each (multi-)layer image; "largest-layer": select largest layer in each (multi-)layer image; "no-layer": do not select any layer from any image;


set one or more KEY-VALUE pairs

Expert fusion options


(1st form) select one of the built-in exposure WEIGHT-FUNCTIONs: "gaussian", "lorentzian", "half-sine", "full-sine", or "bi-square"; default: "gaussian"


(2nd form) load user-defined exposure weight function SYMBOL from SHARED-OBJECT and optionally pass ARGUMENTs


LOWERCUTOFF and UPPERCUTOFF are the values below or above of which pixels are weighted with zero weight in exposure weighting; append "%" signs for relative values; default: 0%:100%:anti-value:value


set window SIZE for local-contrast analysis (SIZE >= 3); default: 5


set scale on which to look for edges; positive LCESCALE switches on local contrast enhancement by LCEFACTOR (EDGESCALE, LCESCALE, LCEFACTOR >= 0); append "%" to LCESCALE for values relative to EDGESCALE; append "%" to LCEFACTOR for relative value; default: 0:0:0


minimum CURVATURE for an edge to qualify; append "%" for relative values; default: 0


apply gray-scale PROJECTOR in exposure or contrast weighing, where PROJECTOR is one of "anti-value", "average", "l-star", "lightness", "luminance", "pl-star", "value", or "channel-mixer:RED-WEIGHT:GREEN-WEIGHT:BLUE-WEIGHT"; default: "average"


set window SIZE for local entropy analysis (SIZE >= 3); default: 3


LOWERCUTOFF is the value below of which pixels are treated as black and UPPERCUTOFF is the value above of which pixels are treated as white in the entropy weighting; append "%" signs for relative values; default: 0%:100%

Information options

-h,  --help

print this help message and exit

-V,  --version

output version information and exit


show all globbing algorithms


show all recognized image formats and their filename extensions


show who compiled the binary when and on which machine


show the software components with which Enfuse was compiled

Enfuse accepts arguments to any option in uppercase as well as in lowercase letters.



The OMP_NUM_THREADS environment variable sets the number of threads to use in OpenMP parallel regions.  If unset Enfuse uses as many threads as there are CPUs.


The OMP_DYNAMIC environment variable controls dynamic adjustment of the number of threads to use in executing OpenMP parallel regions.


Written by Andrew Mihal, Christoph Spiel and others.

Reporting Bugs

Report bugs at <https://bugs.launchpad.net/enblend>.


April 2024 enfuse 4.2