CParticleFilterRobotHandLocalisation Class Reference

#include <VisionX/vision_algorithms/HandLocalizationWithFingertips/ParticleFilter/ParticleFilterRobotHandLocalisation.h>

+ Inheritance diagram for CParticleFilterRobotHandLocalisation:

Public Member Functions

void CalculateEdgeCue (int &edge_sum, int &edge_length, double &angle_diffs, int nModelIndex, bool bLeftCamImage)
 
void CalculateFinalProbabilities () override
 
void CalculatePixelSumInPolygon (ConvexPolygonCalculations::Polygon *pol, int &region_sum, int &region_length, bool bLeftCamImage)
 
void CalculatePixelSumOnLineSequence (Vec3d linePoints[], int nPoints, int &edge_sum, int &edge_length, double &angle_diffs, bool bLeftCamImage)
 
double CalculateProbability (bool bSeparateCall=true) override
 
double CalculateProbability (int nParticleIndex, int nModelIndex) override
 
void CalculateRegionCue (int &region_sum, int &region_length, int nModelIndex, bool bLeftCamImage)
 
void CalculateTrackingBallCue (double &dDistanceXY, double &dDistanceZ, int nModelIndex)
 
 CParticleFilterRobotHandLocalisation (int nParticles, int nDimension, int nNumParallelThreads, CStereoCalibration *pCalibration, std::string sHandModelFileName)
 
double DistanceBetweenConfigs (double *pOldConf, double *pNewConf)
 
void GetDetailedRating (double *pConf, DetailedPFRating *pRating)
 
void PredictNewBases (double dSigmaFactor) override
 
void SetAllowedDeviation (double *adeviation)
 
void SetConfigOfATenthOfTheParticles (int nTenthIndex, double *pConfig)
 
void SetImages (CByteImage *pRegionImageLeft, CByteImage *pRegionImageRight, CByteImage *pSobelImageLeft, CByteImage *pSobelImageRight, CByteImage *pSobelXImageLeft, CByteImage *pSobelXImageRight, CByteImage *pSobelYImageLeft, CByteImage *pSobelYImageRight)
 
void SetParticleConfig (double *pConfig)
 
void SetParticleConfigHalf (double *pConfig)
 
void SetSensorConfig (double *sconfig)
 
void SetTrackingBallPositions (double *dPosX, double *dPosY, double *dRadius, int nNumTrBallRegions, bool bLeftCamImage)
 
void UpdateModel (int nParticleIndex) override
 
void UpdateModel (int nParticleIndex, int nModelIndex) override
 
virtual ~CParticleFilterRobotHandLocalisation ()
 
- Public Member Functions inherited from CParticleFilterFrameworkParallelized
 CParticleFilterFrameworkParallelized (int nParticles, int nDimension, int nNumParallelThreads=1)
 
int GetNumberOfParticles ()
 
double ParticleFilter (double *pResultMeanConfiguration, double dSigmaFactor, int nNumParticlesToUse=-1)
 

Public Attributes

double * allowed_deviation
 
int m_nNumTrackingBallRegionsLeft
 
int m_nNumTrackingBallRegionsRight
 
double * m_pdTrackingBallPosXLeft
 
double * m_pdTrackingBallPosXRight
 
double * m_pdTrackingBallPosYLeft
 
double * m_pdTrackingBallPosYRight
 
double * m_pdTrackingBallRadiusLeft
 
double * m_pdTrackingBallRadiusRight
 
CHandModelV2 ** m_pHandModels
 
double ** m_ppProbabilities
 
double m_pProbMax [NUMBER_OF_CUES]
 
double m_pProbMin [NUMBER_OF_CUES]
 
CByteImage * m_pRegionImageLeft
 
CByteImage * m_pRegionImageRight
 
CByteImage * m_pSobelImageLeft
 
CByteImage * m_pSobelImageRight
 
CByteImage * m_pSobelXImageLeft
 
CByteImage * m_pSobelXImageRight
 
CByteImage * m_pSobelYImageLeft
 
CByteImage * m_pSobelYImageRight
 
bool ** m_pTempBoolArrays
 
Vec3d ** m_pTempClockwiseHullPolys1
 
Vec3d ** m_pTempClockwiseHullPolys2
 
ConvexPolygonCalculations::Polygon ** m_pTempIntersectionPolygons
 
Vec3d ** m_pTempVecArrays
 
double * sensor_config
 

Additional Inherited Members

- Protected Attributes inherited from CParticleFilterFrameworkParallelized
int m_nNumParallelThreads
 

Detailed Description

Definition at line 76 of file ParticleFilterRobotHandLocalisation.h.

Constructor & Destructor Documentation

◆ CParticleFilterRobotHandLocalisation()

CParticleFilterRobotHandLocalisation ( int  nParticles,
int  nDimension,
int  nNumParallelThreads,
CStereoCalibration *  pCalibration,
std::string  sHandModelFileName 
)

Definition at line 37 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:

◆ ~CParticleFilterRobotHandLocalisation()

Member Function Documentation

◆ CalculateEdgeCue()

void CalculateEdgeCue ( int &  edge_sum,
int &  edge_length,
double &  angle_diffs,
int  nModelIndex,
bool  bLeftCamImage 
)

Definition at line 575 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CalculateFinalProbabilities()

void CalculateFinalProbabilities ( )
override

Definition at line 748 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:

◆ CalculatePixelSumInPolygon()

void CalculatePixelSumInPolygon ( ConvexPolygonCalculations::Polygon pol,
int &  region_sum,
int &  region_length,
bool  bLeftCamImage 
)
inline

Definition at line 288 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the caller graph for this function:

◆ CalculatePixelSumOnLineSequence()

void CalculatePixelSumOnLineSequence ( Vec3d  linePoints[],
int  nPoints,
int &  edge_sum,
int &  edge_length,
double &  angle_diffs,
bool  bLeftCamImage 
)
inline

Definition at line 469 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CalculateProbability() [1/2]

double CalculateProbability ( bool  bSeparateCall = true)
inlineoverride

Definition at line 98 of file ParticleFilterRobotHandLocalisation.h.

+ Here is the call graph for this function:

◆ CalculateProbability() [2/2]

double CalculateProbability ( int  nParticleIndex,
int  nModelIndex 
)
overridevirtual

Implements CParticleFilterFrameworkParallelized.

Definition at line 704 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CalculateRegionCue()

void CalculateRegionCue ( int &  region_sum,
int &  region_length,
int  nModelIndex,
bool  bLeftCamImage 
)

Definition at line 387 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CalculateTrackingBallCue()

void CalculateTrackingBallCue ( double &  dDistanceXY,
double &  dDistanceZ,
int  nModelIndex 
)

Definition at line 622 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DistanceBetweenConfigs()

double DistanceBetweenConfigs ( double *  pOldConf,
double *  pNewConf 
)

Definition at line 1006 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:

◆ GetDetailedRating()

void GetDetailedRating ( double *  pConf,
DetailedPFRating pRating 
)

Definition at line 854 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PredictNewBases()

void PredictNewBases ( double  dSigmaFactor)
override

Definition at line 253 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:

◆ SetAllowedDeviation()

void SetAllowedDeviation ( double *  adeviation)

Definition at line 198 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the caller graph for this function:

◆ SetConfigOfATenthOfTheParticles()

void SetConfigOfATenthOfTheParticles ( int  nTenthIndex,
double *  pConfig 
)

Definition at line 169 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetImages()

void SetImages ( CByteImage *  pRegionImageLeft,
CByteImage *  pRegionImageRight,
CByteImage *  pSobelImageLeft,
CByteImage *  pSobelImageRight,
CByteImage *  pSobelXImageLeft,
CByteImage *  pSobelXImageRight,
CByteImage *  pSobelYImageLeft,
CByteImage *  pSobelYImageRight 
)

Definition at line 129 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the caller graph for this function:

◆ SetParticleConfig()

void SetParticleConfig ( double *  pConfig)

Definition at line 145 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetParticleConfigHalf()

void SetParticleConfigHalf ( double *  pConfig)

Definition at line 157 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:

◆ SetSensorConfig()

void SetSensorConfig ( double *  sconfig)

Definition at line 183 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the caller graph for this function:

◆ SetTrackingBallPositions()

void SetTrackingBallPositions ( double *  dPosX,
double *  dPosY,
double *  dRadius,
int  nNumTrBallRegions,
bool  bLeftCamImage 
)

Definition at line 212 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the caller graph for this function:

◆ UpdateModel() [1/2]

void UpdateModel ( int  nParticleIndex)
inlineoverride

Definition at line 92 of file ParticleFilterRobotHandLocalisation.h.

+ Here is the call graph for this function:

◆ UpdateModel() [2/2]

void UpdateModel ( int  nParticleIndex,
int  nModelIndex 
)
overridevirtual

Implements CParticleFilterFrameworkParallelized.

Definition at line 238 of file ParticleFilterRobotHandLocalisation.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ allowed_deviation

double* allowed_deviation

Definition at line 149 of file ParticleFilterRobotHandLocalisation.h.

◆ m_nNumTrackingBallRegionsLeft

int m_nNumTrackingBallRegionsLeft

Definition at line 172 of file ParticleFilterRobotHandLocalisation.h.

◆ m_nNumTrackingBallRegionsRight

int m_nNumTrackingBallRegionsRight

Definition at line 172 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pdTrackingBallPosXLeft

double* m_pdTrackingBallPosXLeft

Definition at line 169 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pdTrackingBallPosXRight

double * m_pdTrackingBallPosXRight

Definition at line 169 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pdTrackingBallPosYLeft

double* m_pdTrackingBallPosYLeft

Definition at line 170 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pdTrackingBallPosYRight

double * m_pdTrackingBallPosYRight

Definition at line 170 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pdTrackingBallRadiusLeft

double* m_pdTrackingBallRadiusLeft

Definition at line 171 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pdTrackingBallRadiusRight

double * m_pdTrackingBallRadiusRight

Definition at line 171 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pHandModels

CHandModelV2** m_pHandModels

Definition at line 144 of file ParticleFilterRobotHandLocalisation.h.

◆ m_ppProbabilities

double** m_ppProbabilities

Definition at line 152 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pProbMax

double m_pProbMax[NUMBER_OF_CUES]

Definition at line 162 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pProbMin

double m_pProbMin[NUMBER_OF_CUES]

Definition at line 161 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pRegionImageLeft

CByteImage* m_pRegionImageLeft

Definition at line 145 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pRegionImageRight

CByteImage * m_pRegionImageRight

Definition at line 145 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pSobelImageLeft

CByteImage * m_pSobelImageLeft

Definition at line 145 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pSobelImageRight

CByteImage * m_pSobelImageRight

Definition at line 145 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pSobelXImageLeft

CByteImage * m_pSobelXImageLeft

Definition at line 146 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pSobelXImageRight

CByteImage * m_pSobelXImageRight

Definition at line 146 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pSobelYImageLeft

CByteImage * m_pSobelYImageLeft

Definition at line 146 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pSobelYImageRight

CByteImage * m_pSobelYImageRight

Definition at line 146 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pTempBoolArrays

bool** m_pTempBoolArrays

Definition at line 159 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pTempClockwiseHullPolys1

Vec3d** m_pTempClockwiseHullPolys1

Definition at line 157 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pTempClockwiseHullPolys2

Vec3d** m_pTempClockwiseHullPolys2

Definition at line 158 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pTempIntersectionPolygons

ConvexPolygonCalculations::Polygon** m_pTempIntersectionPolygons

Definition at line 155 of file ParticleFilterRobotHandLocalisation.h.

◆ m_pTempVecArrays

Vec3d** m_pTempVecArrays

Definition at line 156 of file ParticleFilterRobotHandLocalisation.h.

◆ sensor_config

double* sensor_config

Definition at line 148 of file ParticleFilterRobotHandLocalisation.h.


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