.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.17. .TH ENFUSE "1" "January 2021" "enfuse 4.2" "User Commands" .SH NAME enfuse \- poor man's HDR .SH SYNOPSIS .B enfuse [\fI\,options\/\fR] [\fI\,--output=IMAGE\/\fR] \fI\,INPUT\/\fR... .SH DESCRIPTION Fuse INPUT images into a single IMAGE. .PP INPUT... are image filenames or response filenames. Response filenames start with an "@" character. .SH OPTIONS .SS "Common options:" .TP \fB\-l\fR, \fB\-\-levels\fR=\fI\,LEVELS\/\fR limit number of blending LEVELS to use (1 to 29); negative number of LEVELS decreases maximum; "auto" restores the default automatic maximization .TP \fB\-o\fR, \fB\-\-output\fR=\fI\,FILE\/\fR write output to FILE; default: "a.tif" .TP \fB\-v\fR, \fB\-\-verbose\fR[=\fI\,LEVEL\/\fR] verbosely report progress; repeat to increase verbosity or directly set to LEVEL .TP \fB\-\-compression\fR=\fI\,COMPRESSION\/\fR 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 .SS "Advanced options:" .TP \fB\-\-blend\-colorspace\fR=\fI\,COLORSPACE\/\fR 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" .TP \fB\-c\fR, \fB\-\-ciecam\fR use CIECAM02 to blend colors; disable with "\-\-no\-ciecam"; note that this option will be withdrawn in favor of "\-\-blend\-colorspace" .TP \fB\-d\fR, \fB\-\-depth\fR=\fI\,DEPTH\/\fR set the number of bits per channel of the output image, where DEPTH is "8", "16", "32", "r32", or "r64" .TP \fB\-f\fR WIDTHxHEIGHT[+xXOFFSET+yYOFFSET] manually set the size and position of the output image; useful for cropped and shifted input TIFF images, such as those produced by Nona .TP \fB\-g\fR associated\-alpha hack for Gimp (before version 2) and Cinepaint .TP \fB\-w\fR, \fB\-\-wrap\fR[=\fI\,MODE\/\fR] wrap around image boundary, where MODE is "none", "horizontal", "vertical", or "both"; default: none; without argument the option selects horizontal wrapping .SS "Fusion options:" .TP \fB\-\-exposure\-weight\fR=\fI\,WEIGHT\/\fR weight given to well\-exposed pixels (0 <= WEIGHT <= 1); default: 1 .TP \fB\-\-saturation\-weight\fR=\fI\,WEIGHT\/\fR weight given to highly\-saturated pixels (0 <= WEIGHT <= 1); default: 0.2 .TP \fB\-\-contrast\-weight\fR=\fI\,WEIGHT\/\fR weight given to pixels in high\-contrast neighborhoods (0 <= WEIGHT <= 1); default: 0 .TP \fB\-\-entropy\-weight\fR=\fI\,WEIGHT\/\fR weight given to pixels in high entropy neighborhoods (0 <= WEIGHT <= 1); default: 0 .TP \fB\-\-exposure\-optimum\fR=\fI\,OPTIMUM\/\fR optimum exposure value, usually the maximum of the weighting function (0 <= OPTIMUM <= 1); default: 0.5 .TP \fB\-\-exposure\-width\fR=\fI\,WIDTH\/\fR characteristic width of the weighting function (WIDTH > 0); default: 0.2 .TP \fB\-\-soft\-mask\fR average over all masks; this is the default .TP \fB\-\-hard\-mask\fR 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 .SS "Expert options:" .TP \fB\-\-save\-masks[\fR=\fI\,SOFT\-TEMPLATE[\/\fR:HARD\-TEMPLATE]] 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" .TP \fB\-\-load\-masks[\fR=\fI\,SOFT\-TEMPLATE[\/\fR:HARD\-TEMPLATE]] 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" .TP \fB\-\-fallback\-profile\fR=\fI\,PROFILE\-FILE\/\fR use the ICC profile from PROFILE\-FILE instead of sRGB .TP \fB\-\-layer\-selector\fR=\fI\,ALGORITHM\/\fR 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; .TP \fB\-\-parameter\fR=\fI\,KEY1[=VALUE1][\/\fR:KEY2[=VALUE2][:...]] set one or more KEY\-VALUE pairs .SS "Expert fusion options:" .TP \fB\-\-exposure\-weight\-function\fR=\fI\,WEIGHT\-FUNCTION\/\fR (1st form) select one of the built\-in exposure WEIGHT\-FUNCTIONs: "gaussian", "lorentzian", "half\-sine", "full\-sine", or "bi\-square"; default: "gaussian" .TP \fB\-\-exposure\-weight\-function\fR=\fI\,SHARED\-OBJECT\/\fR:SYMBOL[:ARGUMENT[:...]] (2nd form) load user\-defined exposure weight function SYMBOL from SHARED\-OBJECT and optionally pass ARGUMENTs .TP \fB\-\-exposure\-cutoff\fR=\fI\,LOWERCUTOFF[\/\fR:UPPERCUTOFF[:LOWERPROJECTOR[:UPPERPROJECTOR]]] 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 .TP \fB\-\-contrast\-window\-size\fR=\fI\,SIZE\/\fR set window SIZE for local\-contrast analysis (SIZE >= 3); default: 5 .TP \fB\-\-contrast\-edge\-scale\fR=\fI\,EDGESCALE[\/\fR:LCESCALE[:LCEFACTOR]] 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 .TP \fB\-\-contrast\-min\-curvature\fR=\fI\,CURVATURE\/\fR minimum CURVATURE for an edge to qualify; append "%" for relative values; default: 0 .TP \fB\-\-gray\-projector\fR=\fI\,PROJECTOR\/\fR 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" .TP \fB\-\-entropy\-window\-size\fR=\fI\,SIZE\/\fR set window SIZE for local entropy analysis (SIZE >= 3); default: 3 .TP \fB\-\-entropy\-cutoff\fR=\fI\,LOWERCUTOFF[\/\fR:UPPERCUTOFF] 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% .SS "Information options:" .TP \fB\-h\fR, \fB\-\-help\fR print this help message and exit .TP \fB\-V\fR, \fB\-\-version\fR output version information and exit .TP \fB\-\-show\-globbing\-algorithms\fR show all globbing algorithms .TP \fB\-\-show\-image\-formats\fR show all recognized image formats and their filename extensions .TP \fB\-\-show\-signature\fR show who compiled the binary when and on which machine .TP \fB\-\-show\-software\-components\fR show the software components with which Enfuse was compiled .PP Enfuse accepts arguments to any option in uppercase as well as in lowercase letters. .SH ENVIRONMENT .TP OMP_NUM_THREADS 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. .TP OMP_DYNAMIC The OMP_DYNAMIC environment variable controls dynamic adjustment of the number of threads to use in executing OpenMP parallel regions. .SH AUTHOR Written by Andrew Mihal, Christoph Spiel and others. .SH "REPORTING BUGS" Report bugs at . .SH COPYRIGHT Copyright \(co 2004\-2009 Andrew Mihal. .br Copyright \(co 2009\-2016 Christoph Spiel. .PP License GPLv2+: GNU GPL version 2 or later .br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.