class cv::KAZE

Overview

Class implementing the KAZE keypoint detector and descriptor extractor, described in [2]. Moreā€¦

#include <features2d.hpp>

class KAZE: public cv::Feature2D
{
public:
    // enums

    enum
    {
        DIFF_PM_G1       = 0,
        DIFF_PM_G2       = 1,
        DIFF_WEICKERT    = 2,
        DIFF_CHARBONNIER = 3,
    };

    // methods

    static
    Ptr<KAZE>
    create(
        bool extended = false,
        bool upright = false,
        float threshold = 0.001f,
        int nOctaves = 4,
        int nOctaveLayers = 4,
        int diffusivity = KAZE::DIFF_PM_G2
        );

    virtual
    int
    getDiffusivity() const = 0;

    virtual
    bool
    getExtended() const = 0;

    virtual
    int
    getNOctaveLayers() const = 0;

    virtual
    int
    getNOctaves() const = 0;

    virtual
    double
    getThreshold() const = 0;

    virtual
    bool
    getUpright() const = 0;

    virtual
    void
    setDiffusivity(int diff) = 0;

    virtual
    void
    setExtended(bool extended) = 0;

    virtual
    void
    setNOctaveLayers(int octaveLayers) = 0;

    virtual
    void
    setNOctaves(int octaves) = 0;

    virtual
    void
    setThreshold(double threshold) = 0;

    virtual
    void
    setUpright(bool upright) = 0;
};

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

    virtual
    void
    compute(
        InputArray image,
        std::vector<KeyPoint>& keypoints,
        OutputArray descriptors
        );

    virtual
    void
    compute(
        InputArrayOfArrays images,
        std::vector<std::vector<KeyPoint>>& keypoints,
        OutputArrayOfArrays descriptors
        );

    virtual
    int
    defaultNorm() const;

    virtual
    int
    descriptorSize() const;

    virtual
    int
    descriptorType() const;

    virtual
    void
    detect(
        InputArray image,
        std::vector<KeyPoint>& keypoints,
        InputArray mask = noArray()
        );

    virtual
    void
    detect(
        InputArrayOfArrays images,
        std::vector<std::vector<KeyPoint>>& keypoints,
        InputArrayOfArrays masks = noArray()
        );

    virtual
    void
    detectAndCompute(
        InputArray image,
        InputArray mask,
        std::vector<KeyPoint>& keypoints,
        OutputArray descriptors,
        bool useProvidedKeypoints = false
        );

    virtual
    bool
    empty() const;

    void
    read(const String& fileName);

    virtual
    void
    read(const FileNode& fn);

    void
    write(const String& fileName) const;

    virtual
    void
    write(FileStorage& fs) const;

protected:
    // methods

    void
    writeFormat(FileStorage& fs) const;

Detailed Documentation

Class implementing the KAZE keypoint detector and descriptor extractor, described in [2].

AKAZE descriptor can only be used with KAZE or AKAZE keypoints .. [ABD12] KAZE Features. Pablo F. Alcantarilla, Adrien Bartoli and Andrew J. Davison. In European Conference on Computer Vision (ECCV), Fiorenze, Italy, October 2012.

Methods

static
Ptr<KAZE>
create(
    bool extended = false,
    bool upright = false,
    float threshold = 0.001f,
    int nOctaves = 4,
    int nOctaveLayers = 4,
    int diffusivity = KAZE::DIFF_PM_G2
    )

The KAZE constructor.

Parameters:

extended Set to enable extraction of extended (128-byte) descriptor.
upright Set to enable use of upright descriptors (non rotation-invariant).
threshold Detector response threshold to accept point
nOctaves Maximum octave evolution of the image
nOctaveLayers Default number of sublevels per scale level
diffusivity Diffusivity type. DIFF_PM_G1, DIFF_PM_G2, DIFF_WEICKERT or DIFF_CHARBONNIER