Image Component Library (ICL)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Member Functions | Private Attributes | Friends
icl::markers::FiducialDetectorPluginART Class Reference

FiducialDetectorPlugin for ARToolkit like markers using binary image patches as marker IDs. More...

#include <FiducialDetectorPluginART.h>

Inheritance diagram for icl::markers::FiducialDetectorPluginART:
icl::markers::FiducialDetectorPluginForQuads icl::markers::FiducialDetectorPlugin icl::utils::Configurable

List of all members.

Public Member Functions

 ~FiducialDetectorPluginART ()
 Destructor.
virtual void addOrRemoveMarkers (bool add, const utils::Any &which, const utils::ParamList &params)
 loads markers ID's
virtual FiducialImplclassifyPatch (const core::Img8u &image, int *rot, bool returnRejectedQuads, cv::ImageRegion r)
 Identifies the given image patch using bch decoding.
std::string getName (const FiducialImpl *impl)
 this method is reimplemented here; it returns the impl's file-basename
virtual void getQuadRectificationParameters (utils::Size &markerSizeWithBorder, utils::Size &markerSizeWithoutBorder)
 describes the special marker image rectificatio parameters
virtual core::Img8u createMarker (const utils::Any &whichOne, const utils::Size &size, const utils::ParamList &params)
 creates marker image from given parameters (see FiducialDetector for more details)

Private Member Functions

 FiducialDetectorPluginART ()
 only the FiducialDetector can instantiate this class

Private Attributes

Data * data
 Internal data pointer.

Friends

class icl::markers::FiducialDetector
 This class cannot be used.

Detailed Description

FiducialDetectorPlugin for ARToolkit like markers using binary image patches as marker IDs.

This is just a plugin class that is used by the FiducialDetector. Please refer the icl::markers::FiducialDetector class documentation for more details.


Constructor & Destructor Documentation

only the FiducialDetector can instantiate this class

Destructor.


Member Function Documentation

virtual void icl::markers::FiducialDetectorPluginART::addOrRemoveMarkers ( bool  add,
const utils::Any which,
const utils::ParamList params 
) [virtual]

loads markers ID's

Parameters:
add
whichthis instance of Type icl::Any can be any image filename or filename pattern Please note: internally, all loaded patterns are stored by a unique ID. The unique ID is computed from the image filename by removing the file postfix (e.g. .png) and the files folder prefix (e.g. ./patterns/) In other words, only the image files base-name is used as key. Therefore, the pattern files have to be named differently, even if they have different post-fixes and/or different folders.
All image files are loaded/removed. The images are internally converted to grayscale. Every time the 'match algorithm' property is changed, all loaed patters are processed in order to optimize matching speed.
If markers are removed, again, the filepattern is used to 'glob' all markers that have to be removed. The special Token '*' is used to remove all loaded markers.
The parameter list params must contain the real markers 'size' in mm
params

Implements icl::markers::FiducialDetectorPluginForQuads.

virtual FiducialImpl* icl::markers::FiducialDetectorPluginART::classifyPatch ( const core::Img8u image,
int *  rot,
bool  returnRejectedQuads,
cv::ImageRegion  r 
) [virtual]

Identifies the given image patch using bch decoding.

Implements icl::markers::FiducialDetectorPluginForQuads.

virtual core::Img8u icl::markers::FiducialDetectorPluginART::createMarker ( const utils::Any whichOne,
const utils::Size size,
const utils::ParamList params 
) [virtual]

creates marker image from given parameters (see FiducialDetector for more details)

Reimplemented from icl::markers::FiducialDetectorPlugin.

std::string icl::markers::FiducialDetectorPluginART::getName ( const FiducialImpl impl) [virtual]

this method is reimplemented here; it returns the impl's file-basename

Reimplemented from icl::markers::FiducialDetectorPlugin.

virtual void icl::markers::FiducialDetectorPluginART::getQuadRectificationParameters ( utils::Size markerSizeWithBorder,
utils::Size markerSizeWithoutBorder 
) [virtual]

describes the special marker image rectificatio parameters

Implements icl::markers::FiducialDetectorPluginForQuads.


Friends And Related Function Documentation

friend class icl::markers::FiducialDetector [friend]

This class cannot be used.

Reimplemented from icl::markers::FiducialDetectorPluginForQuads.


Member Data Documentation

Internal data pointer.

Reimplemented from icl::markers::FiducialDetectorPluginForQuads.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines