Loading...
Searching...
No Matches
pcl::BlockBasedStereoMatching Class Reference

Block based (or fixed window) Stereo Matching class. More...

`#include <pcl/stereo/stereo_matching.h>`

Inheritance diagram for pcl::BlockBasedStereoMatching:

## Public Member Functions

| BlockBasedStereoMatching ()
| ~BlockBasedStereoMatching () override=default
void | setRadius (int radius)
| setter for the radius of the squared window
Public Member Functions inherited from pcl::GrayStereoMatching
| GrayStereoMatching ()
| ~GrayStereoMatching () override
void | compute (unsigned char *ref_img, unsigned char *trg_img, int width, int height) override
| stereo processing, it computes a disparity map stored internally by the class
void | compute (pcl::PointCloud< pcl::RGB > &ref, pcl::PointCloud< pcl::RGB > &trg) override
| stereo processing, it computes a disparity map stored internally by the class
Public Member Functions inherited from pcl::StereoMatching
| StereoMatching ()
virtual | ~StereoMatching ()
void | setMaxDisparity (int max_disp)
| setter for number of disparity candidates (disparity range)
void | setXOffset (int x_off)
| setter for horizontal offset, i.e.
void | setRatioFilter (int ratio_filter)
| setter for the value of the ratio filter
void | setPeakFilter (int peak_filter)
| setter for the value of the peak filter
void | setPreProcessing (bool is_pre_proc)
| setter for the pre processing step
void | setLeftRightCheck (bool is_lr_check)
| setter for the left-right consistency check stage, that eliminates inconsistent/wrong disparity values from the disparity map at approx.
void | setLeftRightCheckThreshold (int lr_check_th)
| setter for the left-right consistency check threshold
void | medianFilter (int radius)
| median filter applied on the previously computed disparity map
virtual bool | getPointCloud (float u_c, float v_c, float focal, float baseline, pcl::PointCloud< pcl::PointXYZ >::Ptr cloud)
| computation of the 3D point cloud from the previously computed disparity map without color information
virtual bool | getPointCloud (float u_c, float v_c, float focal, float baseline, pcl::PointCloud< pcl::PointXYZRGB >::Ptr cloud, pcl::PointCloud< pcl::RGB >::Ptr texture)
| computation of the 3D point cloud from the previously computed disparity map including color information
void | getVisualMap (pcl::PointCloud< pcl::RGB >::Ptr vMap)
| computation of a pcl::RGB cloud with scaled disparity values it can be used to display a rescaled version of the disparity map by means of the pcl::ImageViewer invalid disparity values are shown in green

## Additional Inherited Members

Protected Member Functions inherited from pcl::GrayStereoMatching
void | preProcessing (unsigned char *img, unsigned char *pp_img) override
void | imgFlip (unsigned char *&img) override
Protected Member Functions inherited from pcl::StereoMatching
void | leftRightCheck ()
short int | computeStereoSubpixel (int dbest, int s1, int s2, int s3)
short int | computeStereoSubpixel (int dbest, float s1, float s2, float s3)
Protected Attributes inherited from pcl::StereoMatching
short int * | disp_map_
| The internal disparity map.
unsigned char * | ref_img_
| Local aligned copies of the cloud data.
unsigned char * | trg_img_
short int * | disp_map_trg_
| Disparity map used for left-right check.
unsigned char * | pp_ref_img_
| Local aligned copies used for pre processing.
unsigned char * | pp_trg_img_
int | width_
| number of pixels per column of the input stereo pair .
int | height_
| number of pixels per row of the input stereo pair .
int | max_disp_
| Disparity range used for stereo processing.
int | x_off_
| Horizontal displacemente (x offset) used for stereo processing.
int | ratio_filter_
| Threshold for the ratio filter, .
int | peak_filter_
| Threshold for the peak filter, .
bool | is_pre_proc_
| toggle for the activation of the pre-processing stage
bool | is_lr_check_
| toggle for the activation of the left-right consistency check stage
int | lr_check_th_
| Threshold for the left-right consistency check, typically either 0 or 1.

## Detailed Description

Block based (or fixed window) Stereo Matching class.

This class implements the baseline Block-based - aka Fixed Window - stereo matching algorithm. The algorithm includes a running box filter so that the computational complexity is independent of the size of the window ( O(1) wrt. to the size of window) The algorithm is based on the Sum of Absolute Differences (SAD) matching function Only works with grayscale (single channel) rectified images

Author
  Federico Tombari (feder.nosp@m.ico..nosp@m.tomba.nosp@m.ri@u.nosp@m.nibo..nosp@m.it)

Definition at line 428 of file stereo_matching.h.

## Constructor & Destructor Documentation

## BlockBasedStereoMatching()

pcl::BlockBasedStereoMatching::BlockBasedStereoMatching | ( |  | ) |

## ~BlockBasedStereoMatching()

pcl::BlockBasedStereoMatching::~BlockBasedStereoMatching | ( |  | ) |

override default

## Member Function Documentation

## setRadius()

void pcl::BlockBasedStereoMatching::setRadius | ( | int | radius | ) |

inline

setter for the radius of the squared window

Parameters

  [in] | radius | radius of the squared window used to compute the block-based stereo algorithm the window side is equal to 2*radius + 1

Definition at line 438 of file stereo_matching.h.

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

- pcl/stereo/stereo_matching.h