私はARToolkitplusで小さなプロジェクトをやっています。マーカーの信頼度も常に0.0であるため、検出されたマーカーIDが常に-1であるのは奇妙でした。標準のARTKpluszipで提供されている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や信頼度の比率を提供しません。