| OpenCV 4.3.0 Open Source Computer Vision

Public Member Functions | Protected Member Functions | List of all members
cv::detail::BlocksCompensator Class Reference
Images stitching » Exposure Compensation

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:

## 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< ExposureCompensator > | createDefault (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

  index | Image index
  corner | Image top-left corner
  image | Image to process
  mask | Image 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
| ) |  |
| protected virtual

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] | )

Reimplemented from cv::detail::ExposureCompensator.

Reimplemented in cv::detail::BlocksGainCompensator.

## ◆ 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 | )

Examples:
  samples/cpp/stitching_detailed.cpp.

## ◆ 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 | )

Reimplemented from cv::detail::ExposureCompensator.

Reimplemented in cv::detail::BlocksGainCompensator.

## ◆ setNrFeeds()

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

Python:
| None | = | cv.detail_BlocksCompensator.setNrFeeds( | nr_feeds | )

Examples:
  samples/cpp/stitching_detailed.cpp.

## ◆ setNrGainsFilteringIterations()

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

Python:
| None | = | cv.detail_BlocksCompensator.setNrGainsFilteringIterations( | nr_iterations | )

Examples:
  samples/cpp/stitching_detailed.cpp.

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

- opencv2/stitching/detail/exposure_compensate.hpp