Image Component Library (ICL)
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
icl::markers::FiducialDetectorPluginHierarchical Class Referenceabstract

Extra abstraction layer that defines a basic skeleton for the detection of hierarchical fiducials. More...

#include <FiducialDetectorPluginHierarchical.h>

Inheritance diagram for icl::markers::FiducialDetectorPluginHierarchical:
icl::markers::FiducialDetectorPlugin icl::utils::Configurable icl::markers::FiducialDetectorPluginAmoeba icl::markers::FiducialDetectorPluginICL1

Public Member Functions

 ~FiducialDetectorPluginHierarchical ()
 destructor More...
 
virtual void getFeatures (Fiducial::FeatureSet &dst)=0
 defines which features are supported More...
 
virtual void detect (std::vector< FiducialImpl * > &dst, const core::Img8u &image)
 defines how to detect markers from a given image More...
 
virtual void detect (std::vector< FiducialImpl * > &dst, const std::vector< cv::ImageRegion > &regions)=0
 defines how to find makers in the given vector of regions More...
 
virtual void addOrRemoveMarkers (bool add, const utils::Any &which, const utils::ParamList &params)=0
 defines how to load/remove marker definitions More...
 
- Public Member Functions inherited from icl::markers::FiducialDetectorPlugin
 FiducialDetectorPlugin ()
 initializes the plugin with a 0-camera More...
 
virtual ~FiducialDetectorPlugin ()
 virtual Destructor More...
 
virtual void getCenter2D (utils::Point32f &dst, FiducialImpl &impl)
 returns how to compute the markers 2D center More...
 
virtual void getRotation2D (float &dst, FiducialImpl &impl)
 returns how to compute the markers 2D rotation More...
 
virtual void getCorners2D (std::vector< utils::Point32f > &dst, FiducialImpl &impl)
 returns how to compute the markers 2D corners (or significant points on its edges More...
 
virtual void getKeyPoints2D (std::vector< Fiducial::KeyPoint > &dst, FiducialImpl &impl)
 returns how to compute a list of image-position/marker-position correspondences More...
 
virtual void getCenter3D (geom::Vec &dst, FiducialImpl &impl)
 computes a markers 3D center More...
 
virtual void getRotation3D (geom::Vec &dst, FiducialImpl &impl)
 computes a markers 3D rotation euler angles More...
 
virtual void getPose3D (geom::Mat &dst, FiducialImpl &impl)
 computes a markers 3D position and rotation euler angles More...
 
virtual SourceImageType getPreProcessing () const
 returns Binary (as default) More...
 
virtual std::string getName (const FiducialImpl *impl)
 creates a human readable name for the given impl More...
 
virtual std::string getIntermediateImageNames () const
 optionall returns a (comma separated) list of intermediate images More...
 
virtual const core::ImgBasegetIntermediateImage (const std::string &name) const
 returns the intermediate image, that is associated with the given name More...
 
virtual core::Img8u createMarker (const utils::Any &, const utils::Size &, const utils::ParamList &)
 interface for creating an image of a specific marker More...
 
- Public Member Functions inherited from icl::utils::Configurable
virtual ~Configurable ()
 virtual destructor More...
 
 Configurable (const Configurable &other)
 Copy constructor. More...
 
Configurableoperator= (const Configurable &other)
 Assignment operator. More...
 
void setConfigurableID (const std::string &ID)
 sets the ID of this configurable More...
 
const std::string & getConfigurableID () const
 returns the configurables static ID More...
 
bool isOrderedFlagSet () const
 returns whether the ordered flag is set More...
 
void deactivateProperty (const std::string &pattern)
 adds an additional deativation pattern More...
 
void deleteDeactivationPattern (const std::string &pattern)
 removed a formerly added deactivation pattern More...
 
std::vector< std::string > getPropertyListWithoutDeactivated () const
 this returns a filtered list of properties (using all filters added by deactivateProperty) More...
 
virtual void adaptProperty (const std::string &name, const std::string &newType, const std::string &newInfo, const std::string &newToolTip)
 this function can be used to adapt a specific property afterwards More...
 
void registerCallback (const Callback &cb)
 add a callback for changed properties More...
 
void removedCallback (const Callback &cb)
 removes a callback that was registered before More...
 
void syncChangesTo (Configurable *others, int num=1)
 this can be used to let this instance also apply property changes to others More...
 
virtual void setPropertyValue (const std::string &propertyName, const Any &value)
 sets a property value More...
 
virtual std::vector< std::string > getPropertyList () const
 returns a list of All properties, that can be set using setProperty More...
 
virtual bool supportsProperty (const std::string &propertyName) const
 base implementation for property check (seaches in the property list) More...
 
virtual void saveProperties (const std::string &filename, const std::vector< std::string > &propertiesToSkip=EMPTY_VEC) const
 writes all available properties into a file More...
 
virtual void loadProperties (const std::string &filename, const std::vector< std::string > &propertiesToSkip=EMPTY_VEC)
 reads a camera config file from disc More...
 
virtual std::string getPropertyType (const std::string &propertyName) const
 get type of property More...
 
virtual std::string getPropertyInfo (const std::string &propertyName) const
 get information of a properties valid values More...
 
virtual Any getPropertyValue (const std::string &propertyName) const
 returns the current value of a property or a parameter More...
 
virtual std::string getPropertyToolTip (const std::string &propertyName) const
 returns the tooltip description for a given property More...
 
virtual int getPropertyVolatileness (const std::string &propertyName) const
 Returns whether this property may be changed internally. More...
 

Protected Member Functions

 FiducialDetectorPluginHierarchical ()
 Constructor. More...
 
- Protected Member Functions inherited from icl::utils::Configurable
void addProperty (const std::string &name, const std::string &type, const std::string &info, const Any &value=Any(), const int volatileness=0, const std::string &tooltip=std::string())
 This can be used by derived classes to store supported properties in the internal list. More...
 
void addChildConfigurable (Configurable *configurable, const std::string &childPrefix="")
 This adds another configurable as child. More...
 
void removeChildConfigurable (Configurable *configurable)
 removes the given child configurable More...
 
Propertyprop (const std::string &propertyName)
 this CAN be used e.g. to store a property value in internal property-list More...
 
const Propertyprop (const std::string &propertyName) const
 this CAN be used e.g. to store a property value in internal property-list More...
 
 Configurable (const std::string &ID="", bool ordered=true)
 create this configurable with given ID More...
 
void call_callbacks (const std::string &propertyName, const Configurable *caller) const
 calls all registered callbacks More...
 

Private Attributes

Data * data
 internal hidden data pointer More...
 

Additional Inherited Members

- Public Types inherited from icl::markers::FiducialDetectorPlugin
enum  SourceImageType { Binary, Gray, Color }
 Enumeration for differnt source image types. More...
 
- Public Types inherited from icl::utils::Configurable
typedef Function< void, const Property & > Callback
 Function type for changed properties. More...
 
- Static Public Member Functions inherited from icl::markers::FiducialDetectorPlugin
static std::vector< int > parse_list_str (const utils::Any &s)
 parses an any instance that is either an int-value, or a range or a list of int-values More...
 
- Static Public Member Functions inherited from icl::utils::Configurable
static std::string create_default_ID (const std::string &prefix)
 this function can be used in subclasses to create a default ID More...
 
static Configurableget (const std::string &id)
 returns configurable by given ID More...
 
static void register_configurable_type (const std::string &classname, Function< Configurable * > creator)
 registers a configurable type More...
 
static std::vector< std::string > get_registered_configurables ()
 returns a list of all registered configurable classnames More...
 
static Configurablecreate_configurable (const std::string &classname)
 creates a configurable by given name More...
 
- Public Attributes inherited from icl::markers::FiducialDetectorPlugin
geom::Cameracamera
 Camera structure for 3D feature estimation. More...
 
geom::CoplanarPointPoseEstimator poseEst
 for 3D pose estimation More...
 
- Static Public Attributes inherited from icl::utils::Configurable
static const std::vector< std::string > EMPTY_VEC
 used as shortcut – just an empty vector of std::strings More...
 
- Protected Attributes inherited from icl::utils::Configurable
std::vector< Callbackcallbacks
 internally managed list of callbacks More...
 

Detailed Description

Extra abstraction layer that defines a basic skeleton for the detection of hierarchical fiducials.

Constructor & Destructor Documentation

◆ FiducialDetectorPluginHierarchical()

icl::markers::FiducialDetectorPluginHierarchical::FiducialDetectorPluginHierarchical ( )
protected

Constructor.

◆ ~FiducialDetectorPluginHierarchical()

icl::markers::FiducialDetectorPluginHierarchical::~FiducialDetectorPluginHierarchical ( )

destructor

Member Function Documentation

◆ addOrRemoveMarkers()

virtual void icl::markers::FiducialDetectorPluginHierarchical::addOrRemoveMarkers ( bool  add,
const utils::Any which,
const utils::ParamList params 
)
pure virtual

defines how to load/remove marker definitions

Implements icl::markers::FiducialDetectorPlugin.

Implemented in icl::markers::FiducialDetectorPluginICL1, and icl::markers::FiducialDetectorPluginAmoeba.

◆ detect() [1/2]

virtual void icl::markers::FiducialDetectorPluginHierarchical::detect ( std::vector< FiducialImpl * > &  dst,
const core::Img8u image 
)
virtual

defines how to detect markers from a given image

In this case, regions are detected using the internal region detector. The regions are then passed to the other detect method

Implements icl::markers::FiducialDetectorPlugin.

◆ detect() [2/2]

virtual void icl::markers::FiducialDetectorPluginHierarchical::detect ( std::vector< FiducialImpl * > &  dst,
const std::vector< cv::ImageRegion > &  regions 
)
pure virtual

defines how to find makers in the given vector of regions

Implemented in icl::markers::FiducialDetectorPluginICL1, and icl::markers::FiducialDetectorPluginAmoeba.

◆ getFeatures()

virtual void icl::markers::FiducialDetectorPluginHierarchical::getFeatures ( Fiducial::FeatureSet dst)
pure virtual

Member Data Documentation

◆ data

Data* icl::markers::FiducialDetectorPluginHierarchical::data
private

internal hidden data pointer


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