Defines a simple interface for multi-marker tracking with ARToolKitPlus. More...
#include <TrackerMultiMarker.h>
Public Member Functions | |
virtual int | calc (const unsigned char *nImage)=0 |
calculates the transformation matrix More... | |
virtual void | getARMatrix (ARFloat nMatrix[3][4]) const =0 |
Provides access to ARToolKit' internal version of the transformation matrix. More... | |
virtual const ARMarkerInfo & | getDetectedMarker (int nWhich) const =0 |
Returns the ARMarkerInfo object for a found marker. More... | |
virtual void | getDetectedMarkers (int *&nMarkerIDs)=0 |
Returns array of detected marker IDs. More... | |
virtual const ARMultiMarkerInfoT * | getMultiMarkerConfig () const =0 |
Returns the loaded ARMultiMarkerInfoT object. More... | |
virtual int | getNumDetectedMarkers () const =0 |
Returns the number of detected markers used for multi-marker tracking. More... | |
virtual bool | init (const char *nCamParamFile, const char *nMultiFile, ARFloat nNearClip, ARFloat nFarClip, ARToolKitPlus::Logger *nLogger=NULL)=0 |
virtual bool | init (Camera *camerae, const char *nMultiFile, ARFloat nNearClip, ARFloat nFarClip, ARToolKitPlus::Logger *nLogger=NULL)=0 |
virtual void | setUseDetectLite (bool nEnable)=0 |
Enables usage of arDetectMarkerLite. Otherwise arDetectMarker is used. More... | |
virtual | ~TrackerMultiMarker () |
Public Member Functions inherited from ARToolKitPlus::Tracker | |
virtual void | activateAutoThreshold (bool nEnable)=0 |
Enables or disables automatic threshold calculation. More... | |
virtual void | activateBinaryMarker (int nThreshold)=0 |
activates binary markers More... | |
virtual void | activateVignettingCompensation (bool nEnable, int nCorners=0, int nLeftRight=0, int nTopBottom=0)=0 |
activates the complensation of brightness falloff in the corners of the camera image More... | |
virtual int | arDetectMarker (ARUint8 *dataPtr, int thresh, ARMarkerInfo **marker_info, int *marker_num)=0 |
marker detection using tracking history More... | |
virtual int | arDetectMarkerLite (ARUint8 *dataPtr, int thresh, ARMarkerInfo **marker_info, int *marker_num)=0 |
marker detection without using tracking history More... | |
virtual int | arFreePatt (int patno)=0 |
frees a pattern from memory More... | |
virtual ARFloat | arGetTransMat (ARMarkerInfo *marker_info, ARFloat center[2], ARFloat width, ARFloat conv[3][4])=0 |
calculates the transformation matrix between camera and the given marker More... | |
virtual ARFloat | arGetTransMatCont (ARMarkerInfo *marker_info, ARFloat prev_conv[3][4], ARFloat center[2], ARFloat width, ARFloat conv[3][4])=0 |
virtual int | arLoadPatt (char *filename)=0 |
loads a pattern from a file More... | |
virtual int | arMultiFreeConfig (ARMultiMarkerInfoT *config)=0 |
frees a multimarker config from memory More... | |
virtual ARFloat | arMultiGetTransMat (ARMarkerInfo *marker_info, int marker_num, ARMultiMarkerInfoT *config)=0 |
calculates the transformation matrix between camera and the given multi-marker config More... | |
virtual ARMultiMarkerInfoT * | arMultiReadConfigFile (const char *filename)=0 |
reads a standard artoolkit multimarker config file More... | |
virtual ARFloat | calcOpenGLMatrixFromMarker (ARMarkerInfo *nMarkerInfo, ARFloat nPatternCenter[2], ARFloat nPatternSize, ARFloat *nOpenGLMatrix)=0 |
Calculates the OpenGL transformation matrix for a specific marker info. More... | |
virtual void | changeCameraSize (int nWidth, int nHeight)=0 |
changes the resolution of the camera after the camerafile was already loaded More... | |
virtual void | cleanup ()=0 |
does final clean up (memory deallocation) More... | |
virtual ARFloat | executeMultiMarkerPoseEstimator (ARMarkerInfo *marker_info, int marker_num, ARMultiMarkerInfoT *config)=0 |
Calls the pose estimator set with setPoseEstimator() for multi marker tracking. More... | |
virtual ARFloat | executeSingleMarkerPoseEstimator (ARMarkerInfo *marker_info, ARFloat center[2], ARFloat width, ARFloat conv[3][4])=0 |
Calls the pose estimator set with setPoseEstimator() for single marker tracking. More... | |
virtual int | getBitsPerPixel () const =0 |
Returns the number of bits required to store a single pixel. More... | |
virtual Camera * | getCamera ()=0 |
Returns the current camera. More... | |
virtual const char * | getDescription ()=0 |
Returns a short description with compiled-in settings. More... | |
virtual const ARFloat * | getModelViewMatrix () const =0 |
Returns an opengl-style modelview transformation matrix. More... | |
virtual int | getNumLoadablePatterns () const =0 |
Returns the maximum number of patterns that can be loaded. More... | |
virtual PIXEL_FORMAT | getPixelFormat () const =0 |
Returns the compiled-in pixel format. More... | |
virtual Profiler & | getProfiler ()=0 |
Returns the internal profiler object. More... | |
virtual const ARFloat * | getProjectionMatrix () const =0 |
Returns an opengl-style projection transformation matrix. More... | |
virtual int | getThreshold () const =0 |
Returns the current threshold value. More... | |
virtual bool | isAutoThresholdActivated () const =0 |
Returns true if automatic threshold calculation is activated. More... | |
virtual bool | loadCameraFile (const char *nCamParamFile, ARFloat nNearClip, ARFloat nFarClip)=0 |
Loads a camera calibration file and stores data internally. More... | |
virtual ARFloat | rppGetTransMat (ARMarkerInfo *marker_info, ARFloat center[2], ARFloat width, ARFloat conv[3][4])=0 |
virtual ARFloat | rppMultiGetTransMat (ARMarkerInfo *marker_info, int marker_num, ARMultiMarkerInfoT *config)=0 |
virtual void | setBorderWidth (ARFloat nFraction)=0 |
Sets a new relative border width. ARToolKit's default value is 0.25. More... | |
virtual void | setCamera (Camera *nCamera)=0 |
Sets a new camera without specifying new near and far clip values. More... | |
virtual void | setCamera (Camera *nCamera, ARFloat nNearClip, ARFloat nFarClip)=0 |
Sets a new camera including specifying new near and far clip values. More... | |
virtual void | setImageProcessingMode (IMAGE_PROC_MODE nMode)=0 |
Sets an image processing mode (half or full resolution) More... | |
virtual void | setLoadUndistLUT (bool nSet)=0 |
Set to true to try loading camera undistortion table from a cache file. More... | |
virtual void | setLogger (ARToolKitPlus::Logger *nLogger)=0 |
sets an instance which implements the ARToolKit::Logger interface More... | |
virtual void | setMarkerMode (MARKER_MODE nMarkerMode)=0 |
activate the usage of id-based markers rather than template based markers More... | |
virtual void | setNumAutoThresholdRetries (int nNumRetries)=0 |
Sets the number of times the threshold is randomized in case no marker was visible (Default: 2) More... | |
virtual bool | setPixelFormat (PIXEL_FORMAT nFormat)=0 |
Sets the pixel format of the camera image. More... | |
virtual bool | setPoseEstimator (POSE_ESTIMATOR nMethod)=0 |
Changes the Pose Estimation Algorithm. More... | |
virtual void | setThreshold (int nValue)=0 |
Sets the threshold value that is used for black/white conversion. More... | |
virtual void | setUndistortionMode (UNDIST_MODE nMode)=0 |
Changes the undistortion mode. More... | |
virtual | ~Tracker () |
Defines a simple interface for multi-marker tracking with ARToolKitPlus.
ARToolKit::TrackerMultiMarker provides all methods to access ARToolKit for multi marker tracking without needing to mess around with it directly.
Definition at line 58 of file TrackerMultiMarker.h.
|
inlinevirtual |
Definition at line 61 of file TrackerMultiMarker.h.
|
pure virtual |
calculates the transformation matrix
pass the image as RGBX (32-bits) in 320x240 pixels.
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
Provides access to ARToolKit' internal version of the transformation matrix.
This method is primarily for compatibility issues with code previously using ARToolKit rather than ARToolKitPlus. This is the original transformation matrix ARToolKit calculates rather than the OpenGL style version of this matrix that can be retrieved via getModelViewMatrix().
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
Returns the ARMarkerInfo object for a found marker.
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
Returns array of detected marker IDs.
Only access the first getNumDetectedMarkers() markers
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
Returns the loaded ARMultiMarkerInfoT object.
If loading the multi-marker config file failed then this method returns NULL.
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
Returns the number of detected markers used for multi-marker tracking.
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
initializes ARToolKit initializes TrackerSingleMarker nCamParamFile is the name of the camera parameter file nNearClip & nFarClip are near and far clipping values for the OpenGL projection matrix nLogger is an instance which implements the ARToolKit::Logger interface
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.
|
pure virtual |
|
pure virtual |
Enables usage of arDetectMarkerLite. Otherwise arDetectMarker is used.
In general arDetectMarker is more powerful since it keeps history about markers. In some cases such as very low camera refresh rates it is advantegous to change this. Using the non-lite version treats each image independent.
Implemented in ARToolKitPlus::TrackerMultiMarkerImpl< __PATTERN_SIZE_X, __PATTERN_SIZE_Y, __PATTERN_SAMPLE_NUM, __MAX_LOAD_PATTERNS, __MAX_IMAGE_PATTERNS >.