OpenCV  4.1.1-pre
Open Source Computer Vision
Looking for a C++ dev who knows OpenCV?
I'm looking for work. Hire me!
cv::detail::BlocksCompensator Class Reference

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:
Collaboration diagram for cv::detail::BlocksCompensator:

Public Types

enum  {
  NO,
  GAIN,
  GAIN_BLOCKS,
  CHANNELS,
  CHANNELS_BLOCKS
}
 

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. More...
 
void feed (const std::vector< Point > &corners, const std::vector< UMat > &images, const std::vector< UMat > &masks)
 
Size getBlockSize () const
 
void getMatGains (std::vector< Mat > &umv) CV_OVERRIDE
 
int getNrFeeds ()
 
int getNrGainsFilteringIterations () const
 
bool getUpdateGain ()
 
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 setUpdateGain (bool b)
 

Static Public Member Functions

static Ptr< ExposureCompensatorcreateDefault (int type)
 

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)
 

Protected Attributes

bool updateGain
 

Detailed Description

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

Examples:
samples/cpp/stitching_detailed.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
inherited
Enumerator
NO 
GAIN 
GAIN_BLOCKS 
CHANNELS 
CHANNELS_BLOCKS 

Constructor & Destructor Documentation

◆ BlocksCompensator()

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

References CV_OUT, CV_OVERRIDE, CV_WRAP, and cv::gapi::mask().

Here is the call graph for this function:

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.

Referenced by cv::detail::BlocksGainCompensator::apply().

Here is the caller graph for this function:

◆ createDefault()

static Ptr<ExposureCompensator> cv::detail::ExposureCompensator::createDefault ( int  type)
staticinherited

◆ feed() [1/2]

void cv::detail::ExposureCompensator::feed ( const std::vector< Point > &  corners,
const std::vector< UMat > &  images,
const std::vector< UMat > &  masks 
)
inherited
Parameters
cornersSource image top-left corners
imagesSource images
masksImage masks to update (second value in pair specifies the value which should be used to detect where image is)

◆ feed() [2/2]

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::BlocksChannelsCompensator, and cv::detail::BlocksGainCompensator.

◆ getBlockSize()

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

◆ getMatGains()

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

Reimplemented from cv::detail::ExposureCompensator.

Reimplemented in cv::detail::BlocksGainCompensator.

Referenced by cv::detail::BlocksGainCompensator::getMatGains().

Here is the caller graph for this function:

◆ getNrFeeds()

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

◆ getNrGainsFilteringIterations()

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

◆ getUpdateGain()

bool cv::detail::ExposureCompensator::getUpdateGain ( )
inlineinherited

◆ setBlockSize() [1/2]

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

◆ setBlockSize() [2/2]

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

References cv::Size_< _Tp >::height, setBlockSize(), and cv::Size_< _Tp >::width.

Referenced by setBlockSize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setMatGains()

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

Reimplemented from cv::detail::ExposureCompensator.

Reimplemented in cv::detail::BlocksGainCompensator.

Referenced by cv::detail::BlocksGainCompensator::setMatGains().

Here is the caller graph for this function:

◆ setNrFeeds()

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

◆ setNrGainsFilteringIterations()

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

◆ setUpdateGain()

void cv::detail::ExposureCompensator::setUpdateGain ( bool  b)
inlineinherited

Member Data Documentation

◆ updateGain

bool cv::detail::ExposureCompensator::updateGain
protectedinherited

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