53 #include "Calibration/StereoCalibration.h"
54 #include "Image/ByteImage.h"
55 #include "Math/Math3d.h"
56 #include "Image/ImageProcessor.h"
57 #include "ObjectFinder/ObjectFinder.h"
60 #include <Eigen/Eigen>
76 CHandLocalisation(
int nNumParticles,
int nNumAnnealingRuns,
int nPredictionMode, CStereoCalibration* pCalibration, std::string sHandModelFileName);
79 void LocaliseHand(
const CByteImage* pNewCamImageLeft,
const CByteImage* pNewCamImageRight,
const double* pSensorConfig,
double* pEstimatedConfig,
double& dConfidenceRating);
80 void LocaliseHand(
const CByteImage* pNewCamImageLeft,
const CByteImage* pNewCamImageRight,
const Vec3d vPositionFromSensors,
const Mat3d mOrientationFromSensors,
81 const double* pSensorConfigFingers,
double* pEstimatedConfig,
double& dConfidenceRating);
89 m_dVarianceFactor = dNewFactor;
100 void SetResultConfig(
const Vec3d vPosition,
const Mat3d mOrientation,
const double* pConfigFingers);
102 void SetSensorConfig(
const Vec3d vPosition,
const Mat3d mOrientation,
const double* pConfigFingers);
109 CByteImage* m_pCamImageLeft, *m_pCamImageRight;
111 CByteImage* m_pHSVImageLeft, *m_pHSVImageRight;
112 CByteImage* m_pSobelXImageLeft, *m_pSobelXImageRight;
113 CByteImage* m_pSobelYImageLeft, *m_pSobelYImageRight;
115 CByteImage* m_pTempGrayImage1, *m_pTempGrayImage2, *m_pTempGrayImage3, *m_pTempGrayImage4, *m_pTempGrayImage5, *m_pTempGrayImage6;
119 double* m_pFinalConf;
120 double* m_pOldFinalConf;
121 double* m_pSensorConf;
122 double* m_pOldSensorConf;
124 double* m_pOldPFConf;
125 double* m_pPredictedConf;
126 std::mutex configMutex;
135 int m_nNumAnnealingRuns;
136 int m_nPredictionMode;
137 float m_dVarianceFactor;
145 CObjectFinder* m_pObjectFinderLeft, *m_pObjectFinderRight;
146 static const int m_nMaxTrBallRegions = 30;
147 double* m_pdTrBallPosXLeft, *m_pdTrBallPosXRight;
148 double* m_pdTrBallPosYLeft, *m_pdTrBallPosYRight;
149 double* m_pdTrBallRadiusLeft, *m_pdTrBallRadiusRight;