Public Member Functions | List of all members
ARToolKitPlus::TrackerMultiMarker Class Referenceabstract

Defines a simple interface for multi-marker tracking with ARToolKitPlus. More...

#include <TrackerMultiMarker.h>

Inheritance diagram for ARToolKitPlus::TrackerMultiMarker:
Inheritance graph
[legend]

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 ARMarkerInfogetDetectedMarker (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 ARMultiMarkerInfoTgetMultiMarkerConfig () 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 ARMultiMarkerInfoTarMultiReadConfigFile (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 CameragetCamera ()=0
 Returns the current camera. More...
 
virtual const char * getDescription ()=0
 Returns a short description with compiled-in settings. More...
 
virtual const ARFloatgetModelViewMatrix () 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 ProfilergetProfiler ()=0
 Returns the internal profiler object. More...
 
virtual const ARFloatgetProjectionMatrix () 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 ()
 

Detailed Description

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.

Constructor & Destructor Documentation

virtual ARToolKitPlus::TrackerMultiMarker::~TrackerMultiMarker ( )
inlinevirtual

Definition at line 61 of file TrackerMultiMarker.h.

Member Function Documentation

virtual int ARToolKitPlus::TrackerMultiMarker::calc ( const unsigned char *  nImage)
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 >.

virtual void ARToolKitPlus::TrackerMultiMarker::getARMatrix ( ARFloat  nMatrix[3][4]) const
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 >.

virtual const ARMarkerInfo& ARToolKitPlus::TrackerMultiMarker::getDetectedMarker ( int  nWhich) const
pure virtual
virtual void ARToolKitPlus::TrackerMultiMarker::getDetectedMarkers ( int *&  nMarkerIDs)
pure virtual
virtual const ARMultiMarkerInfoT* ARToolKitPlus::TrackerMultiMarker::getMultiMarkerConfig ( ) const
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 >.

virtual int ARToolKitPlus::TrackerMultiMarker::getNumDetectedMarkers ( ) const
pure virtual
virtual bool ARToolKitPlus::TrackerMultiMarker::init ( const char *  nCamParamFile,
const char *  nMultiFile,
ARFloat  nNearClip,
ARFloat  nFarClip,
ARToolKitPlus::Logger nLogger = NULL 
)
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 >.

virtual bool ARToolKitPlus::TrackerMultiMarker::init ( Camera camerae,
const char *  nMultiFile,
ARFloat  nNearClip,
ARFloat  nFarClip,
ARToolKitPlus::Logger nLogger = NULL 
)
pure virtual
virtual void ARToolKitPlus::TrackerMultiMarker::setUseDetectLite ( bool  nEnable)
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 >.


The documentation for this class was generated from the following file:


tuw_artoolkitplus
Author(s): Markus Bader
autogenerated on Sun Sep 4 2016 03:24:33