34 #include <Image/ImageProcessor.h>
39 int nNumAnnealingRuns,
41 CStereoCalibration* pCalibration,
42 std::string sHandModelFileName)
45 nNumParticles, nNumAnnealingRuns, nPredictionMode, pCalibration, sHandModelFileName);
46 m_bIsProcessing =
false;
48 m_bReadyForLocalising =
false;
60 delete[] m_pSensorConfig;
61 delete[] m_pEstimatedConfig;
74 return m_bIsProcessing;
86 printf(
"HandLocalisationThread::GetResult\n");
92 pEstimatedConfig[i] = m_pEstimatedConfig[i];
94 dConfidenceRating = m_dConfidenceRating;
102 const CByteImage* pNewCamImageRight,
103 const double* pSensorConfig)
105 printf(
"HandLocalisationThread::Localise\n");
107 if (!m_bIsProcessing)
109 ImageProcessor::CopyImage(pNewCamImageLeft, m_pNewCamImageLeft);
110 ImageProcessor::CopyImage(pNewCamImageRight, m_pNewCamImageRight);
113 m_pSensorConfig[i] = pSensorConfig[i];
115 m_bIsProcessing =
true;
116 m_bReadyForLocalising =
true;
126 if (m_bReadyForLocalising)
128 printf(
"HandLocalisationThread: Starting localisation\n");
133 m_dConfidenceRating);
135 m_bIsProcessing =
false;
136 m_bReadyForLocalising =
false;
137 printf(
"HandLocThread: Confidence %f\n", m_dConfidenceRating);
138 printf(
"HandLocalisationThread: Localisation finished\n");
142 Threading::SleepThread(10);