lsst.pipe.tasks gcf790cdeb6+f6e4da7c1c
Loading...
Searching...
No Matches
lsst.pipe.tasks.prettyPictureMaker._functors._exposure_fusion Namespace Reference

Classes

class  ExposureBracketer
 

Functions

FloatImagePlane _fuseExposureLum (list[FloatImagePlane] images, float sigma=0.1, int|None maxLevel=3)
 

Function Documentation

◆ _fuseExposureLum()

FloatImagePlane lsst.pipe.tasks.prettyPictureMaker._functors._exposure_fusion._fuseExposureLum ( list[FloatImagePlane] images,
float sigma = 0.1,
int | None maxLevel = 3 )
protected
Fuse multiple exposure images using Laplacian pyramid blending.

Parameters
----------
images : `list` of `FloatImagePlane`
    List of exposure images to fuse. Each image should be a
    `FloatImagePlane` with pixel values typically in the range [0, 1].
sigma : `float`, optional
    Controls the exposure weighting sensitivity. Lower values make the
    weighting more sensitive to deviations from the reference exposure
    (0.7). Default is 0.1.
maxLevel : `int` | `None`, optional
    Maximum pyramid level to use for blending. If None, automatically
    determined based on image dimensions. Default is 3.

Returns
-------
result : `FloatImagePlane`
    Fused image with balanced exposure.

Raises
------
ValueError
    Raised if maxLevel is greater than the maximum allowed level based on
    image dimensions.

Notes
-----
This function implements exposure fusion using a Laplacian pyramid
approach. The algorithm works as follows:

1. Compute exposure weights for each image based on how close pixel
   values are to the reference exposure (0.7). Values above 1.0 receive
   reduced weight.
2. Build Gaussian pyramids from the weights and Laplacian pyramids from
   the padded images.
3. Blend the Laplacian pyramids using the Gaussian pyramid weights at
   each level.
4. Reconstruct the final image from the blended pyramid.

The fusion preserves local contrast while balancing exposure across
the input images.

Definition at line 36 of file _exposure_fusion.py.