OpenCV  4.1.2
Open Source Computer Vision
Public Member Functions | Protected Member Functions | List of all members
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:
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. More...
 
Size getBlockSize () const
 
void getMatGains (std::vector< Mat > &umv) CV_OVERRIDE
 
int getNrFeeds ()
 
int getNrGainsFilteringIterations () 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)
 
- Public Member Functions inherited from cv::detail::ExposureCompensator
 ExposureCompensator ()
 
virtual ~ExposureCompensator ()
 
void feed (const std::vector< Point > &corners, const std::vector< UMat > &images, const std::vector< UMat > &masks)
 
bool getUpdateGain ()
 
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
Python:
image=cv.detail_BlocksCompensator.apply(index, corner, image, mask)

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

§ getBlockSize()

Size cv::detail::BlocksCompensator::getBlockSize ( ) const
inline
Python:
retval=cv.detail_BlocksCompensator.getBlockSize()

§ getMatGains()

void cv::detail::BlocksCompensator::getMatGains ( std::vector< Mat > &  umv)
virtual
Python:
umv=cv.detail_BlocksCompensator.getMatGains([, umv])

§ getNrFeeds()

int cv::detail::BlocksCompensator::getNrFeeds ( )
inline
Python:
retval=cv.detail_BlocksCompensator.getNrFeeds()

§ getNrGainsFilteringIterations()

int cv::detail::BlocksCompensator::getNrGainsFilteringIterations ( ) const
inline
Python:
retval=cv.detail_BlocksCompensator.getNrGainsFilteringIterations()

§ setBlockSize() [1/2]

void cv::detail::BlocksCompensator::setBlockSize ( int  width,
int  height 
)
inline
Python:
None=cv.detail_BlocksCompensator.setBlockSize(width, height)
None=cv.detail_BlocksCompensator.setBlockSize(size)

§ setBlockSize() [2/2]

void cv::detail::BlocksCompensator::setBlockSize ( Size  size)
inline
Python:
None=cv.detail_BlocksCompensator.setBlockSize(width, height)
None=cv.detail_BlocksCompensator.setBlockSize(size)

§ setMatGains()

void cv::detail::BlocksCompensator::setMatGains ( std::vector< Mat > &  umv)
virtual
Python:
None=cv.detail_BlocksCompensator.setMatGains(umv)

§ setNrFeeds()

void cv::detail::BlocksCompensator::setNrFeeds ( int  nr_feeds)
inline
Python:
None=cv.detail_BlocksCompensator.setNrFeeds(nr_feeds)

§ setNrGainsFilteringIterations()

void cv::detail::BlocksCompensator::setNrGainsFilteringIterations ( int  nr_iterations)
inline
Python:
None=cv.detail_BlocksCompensator.setNrGainsFilteringIterations(nr_iterations)

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