Solar
Public Member Functions | List of all members
SolAR::api::features::IDescriptorMatcherRegion Class Referenceabstract

Matches two sets of descriptors based on region constraints. UUID: bdef063d-96de-4425-83c5-fec7b7e448c8 Just implement the first interface, the second and third interface are implemented in ADescriptorMatcherRegion. More...

#include <IDescriptorMatcherRegion.h>

Inheritance diagram for SolAR::api::features::IDescriptorMatcherRegion:
Inheritance graph
[legend]
Collaboration diagram for SolAR::api::features::IDescriptorMatcherRegion:
Collaboration graph
[legend]

Public Member Functions

 IDescriptorMatcherRegion ()=default
 IDescriptorMatcherRegion default constructor.
 
virtual ~IDescriptorMatcherRegion ()=default
 IDescriptorMatcherRegion default destructor.
 
virtual FrameworkReturnCode match (const SRef< SolAR::datastructure::DescriptorBuffer > descriptors1, const SRef< SolAR::datastructure::DescriptorBuffer > descriptors2, const std::vector< SolAR::datastructure::Point2Df > &points2D1, const std::vector< SolAR::datastructure::Point2Df > &points2D2, std::vector< SolAR::datastructure::DescriptorMatch > &matches, const float radius=-1.f, const float matchingDistanceMax=-1.f)=0
 Match each descriptor of the first set to descriptors in its searching region of the second set. More...
 
virtual FrameworkReturnCode match (const std::vector< SolAR::datastructure::Point2Df > &points2D, const std::vector< SRef< SolAR::datastructure::DescriptorBuffer > > &descriptors, const SRef< SolAR::datastructure::Frame > frame, std::vector< SolAR::datastructure::DescriptorMatch > &matches, const float radius=-1.f, const float matchingDistanceMax=-1.f)=0
 Match each descriptor input to descriptors of a frame in a region. The searching space is a circle which is defined by a 2D center and a radius. More...
 
virtual FrameworkReturnCode match (const SRef< SolAR::datastructure::Frame > currentFrame, const SRef< SolAR::datastructure::Frame > lastFrame, std::vector< SolAR::datastructure::DescriptorMatch > &matches, const float radius=-1.f, const float matchingDistanceMax=-1.f)=0
 Match each descriptor of the current frame to descriptors of the last frame in a region. The searching space is a circle which is defined by a 2D center and a radius. More...
 

Detailed Description

Matches two sets of descriptors based on region constraints. UUID: bdef063d-96de-4425-83c5-fec7b7e448c8 Just implement the first interface, the second and third interface are implemented in ADescriptorMatcherRegion.

Member Function Documentation

◆ match() [1/3]

virtual FrameworkReturnCode SolAR::api::features::IDescriptorMatcherRegion::match ( const SRef< SolAR::datastructure::DescriptorBuffer descriptors1,
const SRef< SolAR::datastructure::DescriptorBuffer descriptors2,
const std::vector< SolAR::datastructure::Point2Df > &  points2D1,
const std::vector< SolAR::datastructure::Point2Df > &  points2D2,
std::vector< SolAR::datastructure::DescriptorMatch > &  matches,
const float  radius = -1.f,
const float  matchingDistanceMax = -1.f 
)
pure virtual

Match each descriptor of the first set to descriptors in its searching region of the second set.

Parameters
[in]descriptors1The first set of descriptors.
[in]descriptors2The second set of descriptors.
[in]points2D1The positions of the first set of descriptors.
[in]points2D2The positions of the second set of descriptors.
[out]matchesA vector of matches representing pairs of indices relatively to the first and second set of descriptors.
[in]radiusthe radius of search region around each keypoint of the first set.
[in]matchingDistanceMaxthe maximum distance to valid a match.
Returns
FrameworkReturnCode::SUCCESS if matching succeed, else FrameworkReturnCode::_ERROR

Implemented in SolAR::base::features::ADescriptorMatcherRegion.

◆ match() [2/3]

virtual FrameworkReturnCode SolAR::api::features::IDescriptorMatcherRegion::match ( const SRef< SolAR::datastructure::Frame currentFrame,
const SRef< SolAR::datastructure::Frame lastFrame,
std::vector< SolAR::datastructure::DescriptorMatch > &  matches,
const float  radius = -1.f,
const float  matchingDistanceMax = -1.f 
)
pure virtual

Match each descriptor of the current frame to descriptors of the last frame in a region. The searching space is a circle which is defined by a 2D center and a radius.

Parameters
[in]currentFramethe current frame.
[in]lastFramethe last frame.
[out]matchesa vector of matches between two frames representing pairs of keypoint indices relatively.
[in]radiusthe radius of search region around each keypoint of the last frame.
[in]matchingDistanceMaxthe maximum distance to valid a match.
Returns
FrameworkReturnCode::SUCCESS if matching succeed, else FrameworkReturnCode::_ERROR

Implemented in SolAR::base::features::ADescriptorMatcherRegion.

◆ match() [3/3]

virtual FrameworkReturnCode SolAR::api::features::IDescriptorMatcherRegion::match ( const std::vector< SolAR::datastructure::Point2Df > &  points2D,
const std::vector< SRef< SolAR::datastructure::DescriptorBuffer > > &  descriptors,
const SRef< SolAR::datastructure::Frame frame,
std::vector< SolAR::datastructure::DescriptorMatch > &  matches,
const float  radius = -1.f,
const float  matchingDistanceMax = -1.f 
)
pure virtual

Match each descriptor input to descriptors of a frame in a region. The searching space is a circle which is defined by a 2D center and a radius.

Parameters
[in]points2DThe center points of searching regions
[in]descriptorsThe descriptors organized in a vector of dedicated buffer structure.
[in]frameThe frame contains descriptors to match.
[out]matchesA vector of matches representing pairs of indices relatively to the first and second set of descriptors.
[in]radiusthe radius of search region around each keypoint of the first set.
[in]matchingDistanceMaxthe maximum distance to valid a match.
Returns
FrameworkReturnCode::SUCCESS if matching succeed, else FrameworkReturnCode::_ERROR

Implemented in SolAR::base::features::ADescriptorMatcherRegion.


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