Solar
Public Member Functions | List of all members
SolAR::api::tracking::IOpticalFlowEstimator Class Referenceabstract

Estimates the optical flow between two images. UUID: 3c74cd7f-950c-43ee-8886-9f4ddf763c27 More...

Inheritance diagram for SolAR::api::tracking::IOpticalFlowEstimator:
Inheritance graph
[legend]
Collaboration diagram for SolAR::api::tracking::IOpticalFlowEstimator:
Collaboration graph
[legend]

Public Member Functions

 IOpticalFlowEstimator ()=default
 IOpticalFlow default constructor.
 
virtual ~IOpticalFlowEstimator ()=default
 IContoursFilter default destructor.
 
virtual FrameworkReturnCode estimate (const SRef< SolAR::datastructure::Image > previousImage, const SRef< SolAR::datastructure::Image > currentImage, const std::vector< SolAR::datastructure::Keypoint > &pointsToTrack, std::vector< SolAR::datastructure::Point2Df > &trackedPoints, std::vector< unsigned char > &status, std::vector< float > &error)=0
 estimate the optical flow between two images More...
 
virtual FrameworkReturnCode estimate (const SRef< SolAR::datastructure::Image > previousImage, const SRef< SolAR::datastructure::Image > currentImage, const std::vector< SolAR::datastructure::Point2Df > &pointsToTrack, std::vector< SolAR::datastructure::Point2Df > &trackedPoints, std::vector< unsigned char > &status, std::vector< float > &error)=0
 estimate the optical flow between two images More...
 

Detailed Description

Estimates the optical flow between two images. UUID: 3c74cd7f-950c-43ee-8886-9f4ddf763c27

This interface is defined to implement components to estimate the optical flow between two images.

Member Function Documentation

◆ estimate() [1/2]

virtual FrameworkReturnCode SolAR::api::tracking::IOpticalFlowEstimator::estimate ( const SRef< SolAR::datastructure::Image previousImage,
const SRef< SolAR::datastructure::Image currentImage,
const std::vector< SolAR::datastructure::Keypoint > &  pointsToTrack,
std::vector< SolAR::datastructure::Point2Df > &  trackedPoints,
std::vector< unsigned char > &  status,
std::vector< float > &  error 
)
pure virtual

estimate the optical flow between two images

Parameters
[in]previousImageThe previous image
[in]currentImageThe current image for which we want to estimate the optical flow relative to the previous image
[in]pointsToTrackKEYPOINTS The pixels to track in the previous image
[out]trackedPointsThe position of the pointsToTrack in the current image
[out]statusSpecify for each point; each element of the vector is set to 1 if the flow for the corresponding features has been found, otherwise, it is set to 0.
[out]errorSpecify for each point the tracking error
Returns
FrameworkReturnCode::SUCCESS if the estimation is ok, otherwise frameworkReturnCode::_ERROR

◆ estimate() [2/2]

virtual FrameworkReturnCode SolAR::api::tracking::IOpticalFlowEstimator::estimate ( const SRef< SolAR::datastructure::Image previousImage,
const SRef< SolAR::datastructure::Image currentImage,
const std::vector< SolAR::datastructure::Point2Df > &  pointsToTrack,
std::vector< SolAR::datastructure::Point2Df > &  trackedPoints,
std::vector< unsigned char > &  status,
std::vector< float > &  error 
)
pure virtual

estimate the optical flow between two images

Parameters
[in]previousImageThe previous image
[in]currentImageThe current image for which we want to estimate the optical flow relative to the previous image
[in]pointsToTrackPOINT2DF The pixels to track in the previous image
[out]trackedPointsThe position of the pointsToTrack in the current image
[out]statusSpecify for each point; each element of the vector is set to 1 if the flow for the corresponding features has been found, otherwise, it is set to 0.
[out]errorSpecify for each point the tracking error
Returns
FrameworkReturnCode::SUCCESS if the estimation is ok, otherwise frameworkReturnCode::_ERROR

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