Visual Servoing Platform version 3.7.0
Loading...
Searching...
No Matches
vpPointMap Class Reference

#include <vpPointMap.h>

Public Member Functions

 vpPointMap (unsigned maxPoints, double minDistNewPoints, double maxDepthErrorVisibility, double maxDepthErrorCandidate, double outlierThreshold)
const vpMatrixgetPoints ()
void setPoints (const vpMatrix &X)
void getPoints (const vpArray2D< int > &indices, vpMatrix &X)
void project (const vpHomogeneousMatrix &cTw, vpMatrix &cX)
void project (const vpArray2D< int > &indices, const vpHomogeneousMatrix &cTw, vpMatrix &cX)
void project (const vpArray2D< int > &indices, const vpHomogeneousMatrix &cTw, vpMatrix &cX, vpMatrix &xs)
void project (const vpCameraParameters &cam, const vpArray2D< int > &indices, const vpHomogeneousMatrix &cTw, vpMatrix &cX, vpMatrix &xs, vpMatrix &uvs)
void getVisiblePoints (const unsigned int h, const unsigned int w, const vpMatrix &cX, const vpMatrix &uvs, const vpColVector &expectedZ, std::vector< int > &indices)
void getVisiblePoints (const unsigned int h, const unsigned int w, const vpCameraParameters &cam, const vpHomogeneousMatrix &cTw, const vpImage< float > &depth, std::vector< int > &indices)
void getOutliers (const vpArray2D< int > &originalIndices, const vpMatrix &uvs, const vpMatrix &observations, std::vector< int > &indices)
void selectValidNewCandidates (const vpCameraParameters &cam, const vpHomogeneousMatrix &cTw, const vpArray2D< int > &originalIndices, const vpMatrix &uvs, const vpImage< float > &modelDepth, const vpImage< float > &depth, const vpImage< vpRGBf > &normals, vpMatrix &oXs, vpMatrix &oNs, std::vector< int > &validCandidateIndices)
void updatePoints (const vpArray2D< int > &indicesToRemove, const vpMatrix &pointsToAdd, const vpMatrix &normalsToAdd, std::vector< int > &removedIndices, unsigned int &numAddedPoints)
void updatePoint (unsigned int index, double X, double Y, double Z)
void clear ()
void computeReprojectionErrorAndJacobian (const vpArray2D< int > &indices, const vpHomogeneousMatrix &cTw, const vpMatrix &observations, vpMatrix &J, vpColVector &e) const
void compute3DErrorAndJacobian (const vpArray2D< int > &indices, const vpHomogeneousMatrix &cTw, const vpMatrix &observations, vpMatrix &J, vpColVector &e) const
Settings
unsigned int getNumMaxPoints () const
void setNumMaxPoints (unsigned int maxNumPoints)
double getMinDistanceAddNewPoints () const
void setMinDistanceAddNewPoints (double distance)
double getMaxDepthErrorVisibilityCriterion () const
void setMaxDepthErrorVisibilityCriterion (double depthError)
double getThresholdNormalVisibiltyCriterion () const
void setThresholdNormalVisibiltyCriterion (double normalDegThreshold)
double getMaxDepthErrorCandidate () const
void setMaxDepthErrorCandidate (double depthError)
double getOutlierReprojectionErrorThreshold () const
void setOutlierReprojectionErrorThreshold (double thresholdPx)

Detailed Description

Examples
catchRBT.cpp.

Definition at line 45 of file vpPointMap.h.

Constructor & Destructor Documentation

◆ vpPointMap()

vpPointMap::vpPointMap ( unsigned maxPoints,
double minDistNewPoints,
double maxDepthErrorVisibility,
double maxDepthErrorCandidate,
double outlierThreshold )
inline

Definition at line 48 of file vpPointMap.h.

Member Function Documentation

◆ clear()

void vpPointMap::clear ( )

Definition at line 338 of file vpPointMap.cpp.

◆ compute3DErrorAndJacobian()

void vpPointMap::compute3DErrorAndJacobian ( const vpArray2D< int > & indices,
const vpHomogeneousMatrix & cTw,
const vpMatrix & observations,
vpMatrix & J,
vpColVector & e ) const
inline

Definition at line 148 of file vpPointMap.h.

References vpArray2D< Type >::getRows(), and vpArray2D< Type >::resize().

◆ computeReprojectionErrorAndJacobian()

void vpPointMap::computeReprojectionErrorAndJacobian ( const vpArray2D< int > & indices,
const vpHomogeneousMatrix & cTw,
const vpMatrix & observations,
vpMatrix & J,
vpColVector & e ) const
inline

Definition at line 118 of file vpPointMap.h.

References vpArray2D< Type >::getRows(), and vpArray2D< Type >::resize().

◆ getMaxDepthErrorCandidate()

double vpPointMap::getMaxDepthErrorCandidate ( ) const
inline

Definition at line 77 of file vpPointMap.h.

◆ getMaxDepthErrorVisibilityCriterion()

double vpPointMap::getMaxDepthErrorVisibilityCriterion ( ) const
inline

Definition at line 71 of file vpPointMap.h.

◆ getMinDistanceAddNewPoints()

double vpPointMap::getMinDistanceAddNewPoints ( ) const
inline

Definition at line 68 of file vpPointMap.h.

◆ getNumMaxPoints()

unsigned int vpPointMap::getNumMaxPoints ( ) const
inline

Definition at line 62 of file vpPointMap.h.

◆ getOutlierReprojectionErrorThreshold()

double vpPointMap::getOutlierReprojectionErrorThreshold ( ) const
inline

Definition at line 80 of file vpPointMap.h.

◆ getOutliers()

void vpPointMap::getOutliers ( const vpArray2D< int > & originalIndices,
const vpMatrix & uvs,
const vpMatrix & observations,
std::vector< int > & indices )

◆ getPoints() [1/2]

const vpMatrix & vpPointMap::getPoints ( )
inline

Definition at line 87 of file vpPointMap.h.

◆ getPoints() [2/2]

BEGIN_VISP_NAMESPACE void vpPointMap::getPoints ( const vpArray2D< int > & indices,
vpMatrix & X )

Definition at line 41 of file vpPointMap.cpp.

References vpArray2D< Type >::getRows(), and vpArray2D< Type >::resize().

◆ getThresholdNormalVisibiltyCriterion()

double vpPointMap::getThresholdNormalVisibiltyCriterion ( ) const
inline

Definition at line 74 of file vpPointMap.h.

◆ getVisiblePoints() [1/2]

void vpPointMap::getVisiblePoints ( const unsigned int h,
const unsigned int w,
const vpCameraParameters & cam,
const vpHomogeneousMatrix & cTw,
const vpImage< float > & depth,
std::vector< int > & indices )

◆ getVisiblePoints() [2/2]

void vpPointMap::getVisiblePoints ( const unsigned int h,
const unsigned int w,
const vpMatrix & cX,
const vpMatrix & uvs,
const vpColVector & expectedZ,
std::vector< int > & indices )

Definition at line 112 of file vpPointMap.cpp.

References vpArray2D< Type >::getRows().

◆ project() [1/4]

void vpPointMap::project ( const vpArray2D< int > & indices,
const vpHomogeneousMatrix & cTw,
vpMatrix & cX )

◆ project() [2/4]

void vpPointMap::project ( const vpArray2D< int > & indices,
const vpHomogeneousMatrix & cTw,
vpMatrix & cX,
vpMatrix & xs )

◆ project() [3/4]

◆ project() [4/4]

void vpPointMap::project ( const vpHomogeneousMatrix & cTw,
vpMatrix & cX )

Definition at line 52 of file vpPointMap.cpp.

References vpMatrix::mult2Matrices(), and vpArray2D< Type >::resize().

Referenced by project(), and project().

◆ selectValidNewCandidates()

void vpPointMap::selectValidNewCandidates ( const vpCameraParameters & cam,
const vpHomogeneousMatrix & cTw,
const vpArray2D< int > & originalIndices,
const vpMatrix & uvs,
const vpImage< float > & modelDepth,
const vpImage< float > & depth,
const vpImage< vpRGBf > & normals,
vpMatrix & oXs,
vpMatrix & oNs,
std::vector< int > & validCandidateIndices )

◆ setMaxDepthErrorCandidate()

void vpPointMap::setMaxDepthErrorCandidate ( double depthError)
inline

Definition at line 78 of file vpPointMap.h.

◆ setMaxDepthErrorVisibilityCriterion()

void vpPointMap::setMaxDepthErrorVisibilityCriterion ( double depthError)
inline

Definition at line 72 of file vpPointMap.h.

◆ setMinDistanceAddNewPoints()

void vpPointMap::setMinDistanceAddNewPoints ( double distance)
inline

Definition at line 69 of file vpPointMap.h.

◆ setNumMaxPoints()

void vpPointMap::setNumMaxPoints ( unsigned int maxNumPoints)
inline

Definition at line 63 of file vpPointMap.h.

◆ setOutlierReprojectionErrorThreshold()

void vpPointMap::setOutlierReprojectionErrorThreshold ( double thresholdPx)
inline

Definition at line 81 of file vpPointMap.h.

◆ setPoints()

void vpPointMap::setPoints ( const vpMatrix & X)
inline

Definition at line 88 of file vpPointMap.h.

◆ setThresholdNormalVisibiltyCriterion()

void vpPointMap::setThresholdNormalVisibiltyCriterion ( double normalDegThreshold)
inline

Definition at line 75 of file vpPointMap.h.

◆ updatePoint()

void vpPointMap::updatePoint ( unsigned int index,
double X,
double Y,
double Z )
inline

Definition at line 110 of file vpPointMap.h.

◆ updatePoints()

void vpPointMap::updatePoints ( const vpArray2D< int > & indicesToRemove,
const vpMatrix & pointsToAdd,
const vpMatrix & normalsToAdd,
std::vector< int > & removedIndices,
unsigned int & numAddedPoints )

Definition at line 377 of file vpPointMap.cpp.

References vpException::dimensionError, and vpArray2D< Type >::getRows().