Stereo Correspondance Algorithms


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

枚举

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 更多...
 
enum   {
   cv::stereo::CV_QUADRATIC_INTERPOLATION ,
   cv::stereo::CV_SIMETRICV_INTERPOLATION
}
  subpixel interpolationm methods for disparities. 更多...
 

函数

virtual  cv::stereo::QuasiDenseStereo::~QuasiDenseStereo ()=0
  destructor Method to free all the memory allocated by matrices and vectors in this class. 更多...
 
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. 更多...
 
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. 更多...
 
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. 更多...
 
virtual void  cv::stereo::QuasiDenseStereo::getSparseMatches (std::vector< stereo::Match > &sMatches)=0
  Get The sparse corresponding points. 更多...
 
virtual int  cv::stereo::QuasiDenseStereo::loadParameters ( cv::String filepath)=0
  Load a file containing the configuration parameters of the class. 更多...
 
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. 更多...
 
virtual int  cv::stereo::QuasiDenseStereo::saveParameters ( cv::String filepath)=0
  Save a file containing all the configuration parameters the class is currently set to. 更多...
 

变量

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
 

详细描述

枚举类型文档编制

◆  anonymous enum

anonymous enum

#include < opencv2/stereo.hpp >

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

枚举器
CV_SPECKLE_REMOVAL_ALGORITHM 
CV_SPECKLE_REMOVAL_AVG_ALGORITHM 

◆  anonymous enum

anonymous enum

#include < opencv2/stereo.hpp >

subpixel interpolationm methods for disparities.

枚举器
CV_QUADRATIC_INTERPOLATION 
CV_SIMETRICV_INTERPOLATION 

函数文档编制

◆  ~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

◆  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.
注意
The method clears the denseMatches vector.
返回的 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.
注意
Default level is 50
返回
cv::Mat containing a the disparity image in grayscale.
另请参阅
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.
注意
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.
注意
The method clears the sMatches vector.
返回的 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.
注意
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.
注意
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.
另请参阅
loadParameters

◆  operator <()

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

◆  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.
注意
If input images are in color, the method assumes that are BGR and converts them to grayscale.
另请参阅
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.
注意
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.
另请参阅
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