class cv::StereoMatcher

Overview

The base class for stereo correspondence algorithms. Moreā€¦

#include <calib3d.hpp>

class StereoMatcher: public cv::Algorithm
{
public:
    // enums

    enum
    {
        DISP_SHIFT = 4,
        DISP_SCALE = (1 <<DISP_SHIFT),
    };

    // methods

    virtual
    void
    compute(
        InputArray left,
        InputArray right,
        OutputArray disparity
        ) = 0;

    virtual
    int
    getBlockSize() const = 0;

    virtual
    int
    getDisp12MaxDiff() const = 0;

    virtual
    int
    getMinDisparity() const = 0;

    virtual
    int
    getNumDisparities() const = 0;

    virtual
    int
    getSpeckleRange() const = 0;

    virtual
    int
    getSpeckleWindowSize() const = 0;

    virtual
    void
    setBlockSize(int blockSize) = 0;

    virtual
    void
    setDisp12MaxDiff(int disp12MaxDiff) = 0;

    virtual
    void
    setMinDisparity(int minDisparity) = 0;

    virtual
    void
    setNumDisparities(int numDisparities) = 0;

    virtual
    void
    setSpeckleRange(int speckleRange) = 0;

    virtual
    void
    setSpeckleWindowSize(int speckleWindowSize) = 0;
};

// direct descendants

class StereoBeliefPropagation;
class StereoBM;
class StereoSGBM;

Inherited Members

public:
    // methods

    virtual
    void
    clear();

    virtual
    bool
    empty() const;

    virtual
    String
    getDefaultName() const;

    virtual
    void
    read(const FileNode& fn);

    virtual
    void
    save(const String& filename) const;

    virtual
    void
    write(FileStorage& fs) const;

    template <typename _Tp>
    static
    Ptr<_Tp>
    load(
        const String& filename,
        const String& objname = String()
        );

    template <typename _Tp>
    static
    Ptr<_Tp>
    loadFromString(
        const String& strModel,
        const String& objname = String()
        );

    template <typename _Tp>
    static
    Ptr<_Tp>
    read(const FileNode& fn);

protected:
    // methods

    void
    writeFormat(FileStorage& fs) const;

Detailed Documentation

The base class for stereo correspondence algorithms.

Methods

virtual
void
compute(
    InputArray left,
    InputArray right,
    OutputArray disparity
    ) = 0

Computes disparity map for the specified stereo pair.

Parameters:

left Left 8-bit single-channel image.
right Right image of the same size and the same type as the left one.
disparity Output disparity map. It has the same size as the input images. Some algorithms, like StereoBM or StereoSGBM compute 16-bit fixed-point disparity map (where each disparity value has 4 fractional bits), whereas other algorithms output 32-bit floating-point disparity map.