OpenCV  3.4.12
Open Source Computer Vision
Public Member Functions | List of all members
cv::MergeMertens Class Referenceabstract

Pixels are weighted using contrast, saturation and well-exposedness measures, than images are combined using laplacian pyramids. More...

#include <opencv2/photo.hpp>

Inheritance diagram for cv::MergeMertens:
cv::MergeExposures cv::Algorithm

Public Member Functions

virtual float getContrastWeight () const =0
 
virtual float getExposureWeight () const =0
 
virtual float getSaturationWeight () const =0
 
virtual void process (InputArrayOfArrays src, OutputArray dst, InputArray times, InputArray response) CV_OVERRIDE=0
 Merges images. More...
 
virtual void process (InputArrayOfArrays src, OutputArray dst)=0
 Short version of process, that doesn't take extra arguments. More...
 
virtual void setContrastWeight (float contrast_weiht)=0
 
virtual void setExposureWeight (float exposure_weight)=0
 
virtual void setSaturationWeight (float saturation_weight)=0
 
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 Clears the algorithm state. More...
 
virtual bool empty () const
 Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read. More...
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 Reads algorithm parameters from a file storage. More...
 
virtual void save (const String &filename) const
 
virtual void write (FileStorage &fs) const
 Stores algorithm parameters in a file storage. More...
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 simplified API for language bindings This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from cv::Algorithm
template<typename _Tp >
static Ptr< _Tp > load (const String &filename, const String &objname=String())
 Loads algorithm from the file. More...
 
template<typename _Tp >
static Ptr< _Tp > loadFromString (const String &strModel, const String &objname=String())
 Loads algorithm from a String. More...
 
template<typename _Tp >
static Ptr< _Tp > read (const FileNode &fn)
 Reads algorithm from the file node. More...
 
- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

Detailed Description

Pixels are weighted using contrast, saturation and well-exposedness measures, than images are combined using laplacian pyramids.

The resulting image weight is constructed as weighted average of contrast, saturation and well-exposedness measures.

The resulting image doesn't require tonemapping and can be converted to 8-bit image by multiplying by 255, but it's recommended to apply gamma correction and/or linear tonemapping.

For more information see [145] .

Member Function Documentation

◆ getContrastWeight()

virtual float cv::MergeMertens::getContrastWeight ( ) const
pure virtual
Python:
retval=cv.MergeMertens.getContrastWeight()

◆ getExposureWeight()

virtual float cv::MergeMertens::getExposureWeight ( ) const
pure virtual
Python:
retval=cv.MergeMertens.getExposureWeight()

◆ getSaturationWeight()

virtual float cv::MergeMertens::getSaturationWeight ( ) const
pure virtual
Python:
retval=cv.MergeMertens.getSaturationWeight()

◆ process() [1/2]

virtual void cv::MergeMertens::process ( InputArrayOfArrays  src,
OutputArray  dst,
InputArray  times,
InputArray  response 
)
pure virtual
Python:
dst=cv.MergeMertens.process(src, times, response[, dst])
dst=cv.MergeMertens.process(src[, dst])

Merges images.

Parameters
srcvector of input images
dstresult image
timesvector of exposure time values for each image
response256x1 matrix with inverse camera response function for each pixel value, it should have the same number of channels as images.

Implements cv::MergeExposures.

◆ process() [2/2]

virtual void cv::MergeMertens::process ( InputArrayOfArrays  src,
OutputArray  dst 
)
pure virtual
Python:
dst=cv.MergeMertens.process(src, times, response[, dst])
dst=cv.MergeMertens.process(src[, dst])

Short version of process, that doesn't take extra arguments.

Parameters
srcvector of input images
dstresult image

◆ setContrastWeight()

virtual void cv::MergeMertens::setContrastWeight ( float  contrast_weiht)
pure virtual
Python:
None=cv.MergeMertens.setContrastWeight(contrast_weiht)

◆ setExposureWeight()

virtual void cv::MergeMertens::setExposureWeight ( float  exposure_weight)
pure virtual
Python:
None=cv.MergeMertens.setExposureWeight(exposure_weight)

◆ setSaturationWeight()

virtual void cv::MergeMertens::setSaturationWeight ( float  saturation_weight)
pure virtual
Python:
None=cv.MergeMertens.setSaturationWeight(saturation_weight)

The documentation for this class was generated from the following file: