class cv::detail::FeaturesFinder

Overview

Feature finders base class. More…

#include <matchers.hpp>

class FeaturesFinder
{
public:
    // methods

    virtual
    void
    collectGarbage();

    void
    operator()(
        InputArray image,
        ImageFeatures& features
        );

    void
    operator()(
        InputArray image,
        ImageFeatures& features,
        const std::vector<cv::Rect>& rois
        );

    void
    operator()(
        InputArrayOfArrays images,
        std::vector<ImageFeatures>& features,
        const std::vector<std::vector<cv::Rect>>& rois
        );

    void
    operator()(
        InputArrayOfArrays images,
        std::vector<ImageFeatures>& features
        );

protected:
    // methods

    virtual
    void
    find(
        InputArray image,
        ImageFeatures& features
        ) = 0;

    bool
    isThreadSafe() const;
};

// direct descendants

class AKAZEFeaturesFinder;
class OrbFeaturesFinder;
class SurfFeaturesFinder;

Detailed Documentation

Feature finders base class.

Methods

virtual
void
collectGarbage()

Frees unused memory allocated before if there is any.

void
operator()(
    InputArray image,
    ImageFeatures& features
    )

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

void
operator()(
    InputArray image,
    ImageFeatures& features,
    const std::vector<cv::Rect>& rois
    )

Finds features in the given image.

Parameters:

image Source image
features Found features
rois Regions of interest

See also:

detail::ImageFeatures, Rect_

void
operator()(
    InputArrayOfArrays images,
    std::vector<ImageFeatures>& features,
    const std::vector<std::vector<cv::Rect>>& rois
    )

Finds features in the given images in parallel.

Parameters:

images Source images
features Found features for each image
rois Regions of interest for each image

See also:

detail::ImageFeatures, Rect_

void
operator()(
    InputArrayOfArrays images,
    std::vector<ImageFeatures>& features
    )

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

virtual
void
find(
    InputArray image,
    ImageFeatures& features
    ) = 0

This method must implement features finding logic in order to make the wrappers detail::FeaturesFinder::operator()_ work.

Parameters:

image Source image
features Found features

See also:

detail::ImageFeatures

bool
isThreadSafe() const

uses dynamic_cast to determine thread-safety

Returns:

True, if it’s possible to use the same finder instance in parallel, false otherwise