Solar
Public Member Functions | List of all members
SolAR::api::display::IMatchesOverlay Class Referenceabstract

Draws matches between two images. UUID: a801354a-3e00-467c-b390-48c76fa8c53a More...

#include <IMatchesOverlay.h>

Inheritance diagram for SolAR::api::display::IMatchesOverlay:
Inheritance graph
[legend]
Collaboration diagram for SolAR::api::display::IMatchesOverlay:
Collaboration graph
[legend]

Public Member Functions

 IMatchesOverlay ()=default
 IMatchesOverlay default constructor.
 
virtual ~IMatchesOverlay ()=default
 IMatchesOverlay default destructor.
 
virtual void draw (const SRef< SolAR::datastructure::Image > image1, const SRef< SolAR::datastructure::Image > image2, SRef< SolAR::datastructure::Image > &outImage, const std::vector< SolAR::datastructure::Point2Df > &points_image1, const std::vector< SolAR::datastructure::Point2Df > &points_image2, const std::vector< SolAR::datastructure::DescriptorMatch > &matches=std::vector< SolAR::datastructure::DescriptorMatch >())=0
 draw Match Lines. Draw all the lines joining the keypoints that match between two images More...
 
virtual void draw (const SRef< SolAR::datastructure::Image > image1, const SRef< SolAR::datastructure::Image > image2, SRef< SolAR::datastructure::Image > &outImage, const std::vector< SolAR::datastructure::Keypoint > &keypoints_image1, const std::vector< SolAR::datastructure::Keypoint > &keypoints_image2, const std::vector< SolAR::datastructure::DescriptorMatch > &matches=std::vector< SolAR::datastructure::DescriptorMatch >())=0
 draw Match Lines. Draw all the lines joining the keypoints that match between two images More...
 
virtual void draw (const SRef< SolAR::datastructure::Image > image, SRef< SolAR::datastructure::Image > &outImage, const std::vector< SolAR::datastructure::Point2Df > &points_image1, const std::vector< SolAR::datastructure::Point2Df > &points_image2, const std::vector< SolAR::datastructure::DescriptorMatch > &matches=std::vector< SolAR::datastructure::DescriptorMatch >())=0
 draw Match Lines. Draw all the lines joining the keypoints that match between two images More...
 
virtual void draw (const SRef< SolAR::datastructure::Image > image, SRef< SolAR::datastructure::Image > &outImage, const std::vector< SolAR::datastructure::Keypoint > &keypoints_image1, const std::vector< SolAR::datastructure::Keypoint > &keypoints_image2, const std::vector< SolAR::datastructure::DescriptorMatch > &matches=std::vector< SolAR::datastructure::DescriptorMatch >())=0
 draw Match Lines. Draw all the lines joining the keypoints that match between two images More...
 

Detailed Description

Draws matches between two images. UUID: a801354a-3e00-467c-b390-48c76fa8c53a

This class provides drawing method to overlay matches between two images.

Member Function Documentation

◆ draw() [1/4]

virtual void SolAR::api::display::IMatchesOverlay::draw ( const SRef< SolAR::datastructure::Image image,
SRef< SolAR::datastructure::Image > &  outImage,
const std::vector< SolAR::datastructure::Keypoint > &  keypoints_image1,
const std::vector< SolAR::datastructure::Keypoint > &  keypoints_image2,
const std::vector< SolAR::datastructure::DescriptorMatch > &  matches = std::vector< SolAR::datastructure::DescriptorMatch >() 
)
pure virtual

draw Match Lines. Draw all the lines joining the keypoints that match between two images

Parameters
[in]imageThe image to display for drawing in overlay the matches
[out]outImageThe resulting image displaying matches in overlay. If outImage has not been initialized, it will be done by this method. If its size is not the good one, it will be resized by this method.
[in]keypoints_image1The keypoints of image1 that match with keypoints of image2. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image2.
[in]keypoints_image2The keypoints of image2 that match with keypoints of image1. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image1.
[in]matchesa vector of matches between the first and second image that will be displayed. If this vector is empty, we consider that the ith point of points_image1 matches with the ith point of points_image2.

◆ draw() [2/4]

virtual void SolAR::api::display::IMatchesOverlay::draw ( const SRef< SolAR::datastructure::Image image,
SRef< SolAR::datastructure::Image > &  outImage,
const std::vector< SolAR::datastructure::Point2Df > &  points_image1,
const std::vector< SolAR::datastructure::Point2Df > &  points_image2,
const std::vector< SolAR::datastructure::DescriptorMatch > &  matches = std::vector< SolAR::datastructure::DescriptorMatch >() 
)
pure virtual

draw Match Lines. Draw all the lines joining the keypoints that match between two images

Parameters
[in]imageThe image to display for drawing in overlay the matches
[out]outImageThe resulting image displaying matches in overlay. If outImage has not been initialized, it will be done by this method. If its size is not the good one, it will be resized by this method.
[in]points_image1The keypoints of image1 that match with keypoints of image2. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image2.
[in]points_image2The keypoints of image2 that match with keypoints of image1. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image1.
[in]matchesa vector of matches between the first and second image that will be displayed. If this vector is empty, we consider that the ith point of points_image1 matches with the ith point of points_image2.

◆ draw() [3/4]

virtual void SolAR::api::display::IMatchesOverlay::draw ( const SRef< SolAR::datastructure::Image image1,
const SRef< SolAR::datastructure::Image image2,
SRef< SolAR::datastructure::Image > &  outImage,
const std::vector< SolAR::datastructure::Keypoint > &  keypoints_image1,
const std::vector< SolAR::datastructure::Keypoint > &  keypoints_image2,
const std::vector< SolAR::datastructure::DescriptorMatch > &  matches = std::vector< SolAR::datastructure::DescriptorMatch >() 
)
pure virtual

draw Match Lines. Draw all the lines joining the keypoints that match between two images

Parameters
[in]image1The first image on which have been extracted the first vector keypoints
[in]image2The second image on which have been extracted the second vector of keypoints
[out]outImageThe resulting image merging image1 and image2 in side-by-side. If outImage has not been initialized, it will be done by this method. If its size is not the good one, it will be resized by this method.
[in]keypoints_image1The keypoints of image1 that match with keypoints of image2. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image2.
[in]keypoints_image2The keypoints of image2 that match with keypoints of image1. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image1.
[in]matchesa vector of matches between the first and second image that will be displayed. If this vector is empty, we consider that the ith point of points_image1 matches with the ith point of points_image2.

◆ draw() [4/4]

virtual void SolAR::api::display::IMatchesOverlay::draw ( const SRef< SolAR::datastructure::Image image1,
const SRef< SolAR::datastructure::Image image2,
SRef< SolAR::datastructure::Image > &  outImage,
const std::vector< SolAR::datastructure::Point2Df > &  points_image1,
const std::vector< SolAR::datastructure::Point2Df > &  points_image2,
const std::vector< SolAR::datastructure::DescriptorMatch > &  matches = std::vector< SolAR::datastructure::DescriptorMatch >() 
)
pure virtual

draw Match Lines. Draw all the lines joining the keypoints that match between two images

Parameters
[in]image1The first image on which have been extracted the first vector keypoints
[in]image2The second image on which have been extracted the second vector of keypoints
[out]outImageThe resulting image merging image1 and image2 in side-by-side. If outImage has not been initialized, it will be done by this method. If its size is not the good one, it will be resized by this method.
[in]points_image1The keypoints of image1 that match with keypoints of image2. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image2.
[in]points_image2The keypoints of image2 that match with keypoints of image1. The Nth keypoint of this vector match with the Nth keypoint of the vector points_image1.
[in]matchesa vector of matches between the first and second image that will be displayed. If this vector is empty, we consider that the ith point of points_image1 matches with the ith point of points_image2.

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