| OpenCV 4.3.0 Open Source Computer Vision

Classes | Enumerations | Functions | Variables
Stereo Correspondance Algorithms

## Classes
struct | cv::stereo::Match
struct | cv::stereo::PropagationParameters
class | cv::stereo::QuasiDenseStereo
| Class containing the methods needed for Quasi Dense Stereo computation. More...
class | cv::stereo::StereoBinaryBM
| Class for computing stereo correspondence using the block matching algorithm, introduced and contributed to OpenCV by K. Konolige. More...
class | cv::stereo::StereoBinarySGBM
| The class implements the modified H. Hirschmuller algorithm [105] that differs from the original one as follows: More...
class | cv::stereo::StereoMatcher
| Filters off small noise blobs (speckles) in the disparity map. More...

## Enumerations
enum | { cv::stereo::CV_SPECKLE_REMOVAL_ALGORITHM, cv::stereo::CV_SPECKLE_REMOVAL_AVG_ALGORITHM }
| speckle removal algorithms. These algorithms have the purpose of removing small regions More...
enum | { cv::stereo::CV_QUADRATIC_INTERPOLATION, cv::stereo::CV_SIMETRICV_INTERPOLATION }
| subpixel interpolationm methods for disparities. More...

## Functions
virtual | cv::stereo::QuasiDenseStereo::~QuasiDenseStereo ()=0
| destructor Method to free all the memory allocated by matrices and vectors in this class. More...
static cv::Ptr< QuasiDenseStereo > | cv::stereo::QuasiDenseStereo::create (cv::Size monoImgSize, cv::String paramFilepath=cv::String())
virtual void | cv::stereo::QuasiDenseStereo::getDenseMatches (std::vector< stereo::Match > &denseMatches)=0
| Get The dense corresponding points. More...
virtual cv::Mat | cv::stereo::QuasiDenseStereo::getDisparity (uint8_t disparityLvls=50)=0
| Compute and return the disparity map based on the correspondences found in the "process" method. More...
virtual cv::Point2f | cv::stereo::QuasiDenseStereo::getMatch (const int x, const int y)=0
| Specify pixel coordinates in the left image and get its corresponding location in the right image. More...
virtual void | cv::stereo::QuasiDenseStereo::getSparseMatches (std::vector< stereo::Match > &sMatches)=0
| Get The sparse corresponding points. More...
virtual int | cv::stereo::QuasiDenseStereo::loadParameters (cv::String filepath)=0
| Load a file containing the configuration parameters of the class. More...
bool | cv::stereo::Match::operator< (const Match &rhs) const
virtual void | cv::stereo::QuasiDenseStereo::process (const cv::Mat &imgLeft, const cv::Mat &imgRight)=0
| Main process of the algorithm. This method computes the sparse seeds and then densifies them. More...
virtual int | cv::stereo::QuasiDenseStereo::saveParameters (cv::String filepath)=0
| Save a file containing all the configuration parameters the class is currently set to. More...

## Variables
int | cv::stereo::PropagationParameters::borderX
int | cv::stereo::PropagationParameters::borderY
float | cv::stereo::Match::corr
float | cv::stereo::PropagationParameters::correlationThreshold
int | cv::stereo::PropagationParameters::corrWinSizeX
int | cv::stereo::PropagationParameters::corrWinSizeY
int | cv::stereo::PropagationParameters::disparityGradient
int | cv::stereo::PropagationParameters::gftMaxNumFeatures
int | cv::stereo::PropagationParameters::gftMinSeperationDist
float | cv::stereo::PropagationParameters::gftQualityThres
int | cv::stereo::PropagationParameters::lkPyrLvl
int | cv::stereo::PropagationParameters::lkTemplateSize
int | cv::stereo::PropagationParameters::lkTermParam1
float | cv::stereo::PropagationParameters::lkTermParam2
int | cv::stereo::PropagationParameters::neighborhoodSize
cv::Point2i | cv::stereo::Match::p0
cv::Point2i | cv::stereo::Match::p1
PropagationParameters | cv::stereo::QuasiDenseStereo::Param
float | cv::stereo::PropagationParameters::textrureThreshold

## Detailed Description

## Enumeration Type Documentation

## ◆ anonymous enum

anonymous enum

`#include <opencv2/stereo.hpp>`

speckle removal algorithms. These algorithms have the purpose of removing small regions

Enumerator
CV_SPECKLE_REMOVAL_ALGORITHM |
CV_SPECKLE_REMOVAL_AVG_ALGORITHM |

## ◆ anonymous enum

anonymous enum

`#include <opencv2/stereo.hpp>`

subpixel interpolationm methods for disparities.

Enumerator
CV_QUADRATIC_INTERPOLATION |
CV_SIMETRICV_INTERPOLATION |

## Function Documentation

## ◆ ~QuasiDenseStereo()

virtual cv::stereo::QuasiDenseStereo::~QuasiDenseStereo | ( |  | ) |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

destructor Method to free all the memory allocated by matrices and vectors in this class.

## ◆ create()

static cv::Ptr<QuasiDenseStereo> cv::stereo::QuasiDenseStereo::create | ( | cv::Size | monoImgSize,
|  | cv::String | paramFilepath = `cv::String()`
| ) |  |
| static

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

## ◆ getDenseMatches()

virtual void cv::stereo::QuasiDenseStereo::getDenseMatches | ( | std::vector< stereo::Match > & | denseMatches | ) |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Get The dense corresponding points.

Parameters

  [out] | denseMatches | A vector containing all dense matches.

Note
  The method clears the denseMatches vector.
  The returned Match elements inside the sMatches vector, do not use corr member.

## ◆ getDisparity()

virtual cv::Mat cv::stereo::QuasiDenseStereo::getDisparity | ( | uint8_t | disparityLvls = `50` | ) |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Compute and return the disparity map based on the correspondences found in the "process" method.

Parameters

  [in] | disparityLvls | The level of detail in output disparity image.

Note
  Default level is 50

Returns
  cv::Mat containing a the disparity image in grayscale.

See also
  computeDisparity
  quantizeDisparity

## ◆ getMatch()

virtual cv::Point2f cv::stereo::QuasiDenseStereo::getMatch | ( | const int | x,
|  | const int | y
| ) |  |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Specify pixel coordinates in the left image and get its corresponding location in the right image.

Parameters

  [in] | x | The x pixel coordinate in the left image channel.
  [in] | y | The y pixel coordinate in the left image channel.

Return values

  cv::Point(x,y) | The location of the corresponding pixel in the right image.
  cv::Point(0,0) | (NO_MATCH) if no match is found in the right image for the specified pixel location in the left image.

Note
  This method should be always called after process, otherwise the matches will not be correct.

## ◆ getSparseMatches()

virtual void cv::stereo::QuasiDenseStereo::getSparseMatches | ( | std::vector< stereo::Match > & | sMatches | ) |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Get The sparse corresponding points.

Parameters

  [out] | sMatches | A vector containing all sparse correspondences.

Note
  The method clears the sMatches vector.
  The returned Match elements inside the sMatches vector, do not use corr member.

## ◆ loadParameters()

virtual int cv::stereo::QuasiDenseStereo::loadParameters | ( | cv::String | filepath | ) |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Load a file containing the configuration parameters of the class.

Parameters

  [in] | filepath | The location of the .YAML file containing the configuration parameters.

Note
  default value is an empty string in which case the default parameters will be loaded.

Return values

  1 | If the path is not empty and the program loaded the parameters successfully.
  0 | If the path is empty and the program loaded default parameters.
  -1 | If the file location is not valid or the program could not open the file and loaded default parameters from defaults.hpp.

Note
  The method is automatically called in the constructor and configures the class.
  Loading different parameters will have an effect on the output. This is useful for tuning in case of video processing.

See also
  loadParameters

## ◆ operator<()

bool cv::stereo::Match::operator< | ( | const Match & | rhs | ) | const
| inline

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

## ◆ process()

virtual void cv::stereo::QuasiDenseStereo::process | ( | const cv::Mat & | imgLeft,
|  | const cv::Mat & | imgRight
| ) |  |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Main process of the algorithm. This method computes the sparse seeds and then densifies them.

Initially input images are converted to gray-scale and then the sparseMatching method is called to obtain the sparse stereo. Finally quasiDenseMatching is called to densify the corresponding points.

Parameters

  [in] | imgLeft | The left Channel of a stereo image pair.
  [in] | imgRight | The right Channel of a stereo image pair.

Note
  If input images are in color, the method assumes that are BGR and converts them to grayscale.

See also
  sparseMatching
  quasiDenseMatching

## ◆ saveParameters()

virtual int cv::stereo::QuasiDenseStereo::saveParameters | ( | cv::String | filepath | ) |
| pure virtual

`#include <opencv2/stereo/quasi_dense_stereo.hpp>`

Save a file containing all the configuration parameters the class is currently set to.

Parameters

  [in] | filepath | The location to store the parameters file.

Note
  Calling this method with no arguments will result in storing class parameters to a file names "qds_parameters.yaml" in the root project folder.
  This method can be used to generate a template file for tuning the class.

See also
  loadParameters

## Variable Documentation

## ◆ borderX

int cv::stereo::PropagationParameters::borderX

## ◆ borderY

int cv::stereo::PropagationParameters::borderY

## ◆ corr

float cv::stereo::Match::corr

## ◆ correlationThreshold

float cv::stereo::PropagationParameters::correlationThreshold

## ◆ corrWinSizeX

int cv::stereo::PropagationParameters::corrWinSizeX

## ◆ corrWinSizeY

int cv::stereo::PropagationParameters::corrWinSizeY

## ◆ disparityGradient

int cv::stereo::PropagationParameters::disparityGradient

## ◆ gftMaxNumFeatures

int cv::stereo::PropagationParameters::gftMaxNumFeatures

## ◆ gftMinSeperationDist

int cv::stereo::PropagationParameters::gftMinSeperationDist

## ◆ gftQualityThres

float cv::stereo::PropagationParameters::gftQualityThres

## ◆ lkPyrLvl

int cv::stereo::PropagationParameters::lkPyrLvl

## ◆ lkTemplateSize

int cv::stereo::PropagationParameters::lkTemplateSize

## ◆ lkTermParam1

int cv::stereo::PropagationParameters::lkTermParam1

## ◆ lkTermParam2

float cv::stereo::PropagationParameters::lkTermParam2

## ◆ neighborhoodSize

int cv::stereo::PropagationParameters::neighborhoodSize

## ◆ p0

cv::Point2i cv::stereo::Match::p0

## ◆ p1

cv::Point2i cv::stereo::Match::p1

## ◆ Param

PropagationParameters cv::stereo::QuasiDenseStereo::Param

## ◆ textrureThreshold

float cv::stereo::PropagationParameters::textrureThreshold