Loading...
Searching...
No Matches

Exposure compensator which tries to remove exposure related artifacts by adjusting image blocks. More...

#include <opencv2/stitching/detail/exposure_compensate.hpp>

Inheritance diagram for cv::detail::BlocksCompensator:
cv::detail::ExposureCompensator cv::detail::BlocksChannelsCompensator cv::detail::BlocksGainCompensator

Public Member Functions

 BlocksCompensator (int bl_width=32, int bl_height=32, int nr_feeds=1)
 
void apply (int index, Point corner, InputOutputArray image, InputArray mask) CV_OVERRIDE
 Compensate exposure in the specified image.
 
Size getBlockSize () const
 
void getMatGains (std::vector< Mat > &umv) CV_OVERRIDE
 
int getNrFeeds ()
 
int getNrGainsFilteringIterations () const
 
double getSimilarityThreshold () const
 
void setBlockSize (int width, int height)
 
void setBlockSize (Size size)
 
void setMatGains (std::vector< Mat > &umv) CV_OVERRIDE
 
void setNrFeeds (int nr_feeds)
 
void setNrGainsFilteringIterations (int nr_iterations)
 
void setSimilarityThreshold (double similarity_threshold)
 
- Public Member Functions inherited from cv::detail::ExposureCompensator
 ExposureCompensator ()
 
virtual ~ExposureCompensator ()
 
virtual void apply (int index, Point corner, InputOutputArray image, InputArray mask)=0
 Compensate exposure in the specified image.
 
virtual void feed (const std::vector< Point > &corners, const std::vector< UMat > &images, const std::vector< std::pair< UMat, uchar > > &masks)=0
 
void feed (const std::vector< Point > &corners, const std::vector< UMat > &images, const std::vector< UMat > &masks)
 
virtual void getMatGains (std::vector< Mat > &)
 
bool getUpdateGain ()
 
virtual void setMatGains (std::vector< Mat > &)
 
void setUpdateGain (bool b)
 

Protected Member Functions

template<class Compensator >
void feed (const std::vector< Point > &corners, const std::vector< UMat > &images, const std::vector< std::pair< UMat, uchar > > &masks)
 

Additional Inherited Members

- Public Types inherited from cv::detail::ExposureCompensator
enum  {
  NO ,
  GAIN ,
  GAIN_BLOCKS ,
  CHANNELS ,
  CHANNELS_BLOCKS
}
 
- Static Public Member Functions inherited from cv::detail::ExposureCompensator
static Ptr< ExposureCompensatorcreateDefault (int type)
 
- Protected Attributes inherited from cv::detail::ExposureCompensator
bool updateGain
 

Detailed Description

Exposure compensator which tries to remove exposure related artifacts by adjusting image blocks.

Examples
samples/cpp/stitching_detailed.cpp.

Constructor & Destructor Documentation

◆ BlocksCompensator()

cv::detail::BlocksCompensator::BlocksCompensator ( int  bl_width = 32,
int  bl_height = 32,
int  nr_feeds = 1 
)
inline

Member Function Documentation

◆ apply()

void cv::detail::BlocksCompensator::apply ( int  index,
Point  corner,
InputOutputArray  image,
InputArray  mask 
)
virtual

Compensate exposure in the specified image.

Parameters
indexImage index
cornerImage top-left corner
imageImage to process
maskImage mask

Implements cv::detail::ExposureCompensator.

Reimplemented in cv::detail::BlocksGainCompensator.

◆ feed()

template<class Compensator >
void cv::detail::BlocksCompensator::feed ( const std::vector< Point > &  corners,
const std::vector< UMat > &  images,
const std::vector< std::pair< UMat, uchar > > &  masks 
)
protectedvirtual

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Implements cv::detail::ExposureCompensator.

Reimplemented in cv::detail::BlocksGainCompensator, and cv::detail::BlocksChannelsCompensator.

◆ getBlockSize()

Size cv::detail::BlocksCompensator::getBlockSize ( ) const
inline

◆ getMatGains()

void cv::detail::BlocksCompensator::getMatGains ( std::vector< Mat > &  umv)
virtual

◆ getNrFeeds()

int cv::detail::BlocksCompensator::getNrFeeds ( )
inline

◆ getNrGainsFilteringIterations()

int cv::detail::BlocksCompensator::getNrGainsFilteringIterations ( ) const
inline

◆ getSimilarityThreshold()

double cv::detail::BlocksCompensator::getSimilarityThreshold ( ) const
inline

◆ setBlockSize() [1/2]

void cv::detail::BlocksCompensator::setBlockSize ( int  width,
int  height 
)
inline

◆ setBlockSize() [2/2]

void cv::detail::BlocksCompensator::setBlockSize ( Size  size)
inline

◆ setMatGains()

void cv::detail::BlocksCompensator::setMatGains ( std::vector< Mat > &  umv)
virtual

◆ setNrFeeds()

void cv::detail::BlocksCompensator::setNrFeeds ( int  nr_feeds)
inline

◆ setNrGainsFilteringIterations()

void cv::detail::BlocksCompensator::setNrGainsFilteringIterations ( int  nr_iterations)
inline

◆ setSimilarityThreshold()

void cv::detail::BlocksCompensator::setSimilarityThreshold ( double  similarity_threshold)
inline

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