我正在用ARToolkit plus做一个小项目。我发现奇怪的是检测到的标记id总是-1,因为标记的置信度也总是0.0。我已经加载了标准ARTK plus zip提供的patt.hiro文件。下面的代码显示了我正在做的事情:
来自'DrawGLScene'功能的片段:
//Render the webcam background
IplImage* img = showWebcam();
// do the OpenGL camera setup
glMatrixMode(GL_PROJECTION);
glLoadMatrixf(tracker->getTracker()->getProjectionMatrix());
//Detect the markers in the video frame
ARToolKitPlus::ARMarkerInfo* markerinfo=0;
int nummarkers = detectMarkers(img, &markerinfo);
'detectMarkers'功能:
int detectMarkers(IplImage* image, ARToolKitPlus::ARMarkerInfo** markerinfo){
cvFlip(image, image, 0);
int nummarkers;
tracker->getTracker()->calc((uchar*)(image->imageData), -1, false, markerinfo, &nummarkers);
return nummarkers;
程序成功检测到场景中的标记,但是没有给它们任何id或置信度,即使标记是加载到内存中的标记..任何帮助真的很感激!