Image Component Library (ICL)
Classes | Public Member Functions | Public Attributes | List of all members
icl::markers::MarkerMetricsICL1 Struct Reference

Marker metrics for "icl1" markers. More...

#include <MarkerMetricsICL1.h>

Inheritance diagram for icl::markers::MarkerMetricsICL1:
icl::markers::MarkerCodeICL1

Classes

struct  CR
 child region struct More...
 

Public Member Functions

 MarkerMetricsICL1 (const MarkerCodeICL1 &c, const utils::Size32f &markerSizeMM)
 creates a metric instance from given code and real size in mm More...
 
- Public Member Functions inherited from icl::markers::MarkerCodeICL1
 MarkerCodeICL1 ()
 create instance with optionally given root color More...
 
 MarkerCodeICL1 (int id)
 create instance from given ID More...
 
 MarkerCodeICL1 (const int ns[4], bool rootRegionColorIsBlack=true)
 create instance from given set of child-child regions counts More...
 
int & operator[] (int idx)
 get child-child region count of child-region idx More...
 
int operator[] (int idx) const
 get child-child region count of child-region idx (const) More...
 
bool operator< (const MarkerCodeICL1 &t) const
 compares the internal id More...
 
int operator- (const MarkerCodeICL1 &p) const
 computes the hamming distance of two codes More...
 

Public Attributes

utils::Size32f root
 real dimension of the root region More...
 
CR crs [4]
 child regions More...
 
- Public Attributes inherited from icl::markers::MarkerCodeICL1
int id
 computed or given marker ID More...
 
int n [4]
 computed or given set of child-child-regions More...
 

Additional Inherited Members

- Static Public Member Functions inherited from icl::markers::MarkerCodeICL1
static const std::vector< MarkerCodeICL1 > & generate ()
 generates a set of 60 instances that have minimum hamming distance of 2 More...
 
- Static Public Attributes inherited from icl::markers::MarkerCodeICL1
static const int P = 5
 maximum amount of child-child-regions More...
 
static const int P1 = P+1
 related to maximum child-child-region count base for ID computation More...
 

Detailed Description

Marker metrics for "icl1" markers.

each marker has

#############<- border (root region)
#           #
# #       # #
#         <-#-- child region cr 0
#############
#           #
# #   #   # #
#         <-#-- child region cr 1
#############
#           #
# # #   # # #
#         <-#-- child region cr 2
#############
#           #
# # # # # # #
# ^        <-#-- child region cr 3
##|##########
  |
  child child region ccr 0

The ccr's are distributed towards the edges, only in case of a single ccr within a cr, it is placed in the middle.

The whole marker structure becomes 13 x 17 units. These are mapped linearily to the actual marker size in mm;

Constructor & Destructor Documentation

◆ MarkerMetricsICL1()

icl::markers::MarkerMetricsICL1::MarkerMetricsICL1 ( const MarkerCodeICL1 c,
const utils::Size32f markerSizeMM 
)

creates a metric instance from given code and real size in mm

Member Data Documentation

◆ crs

CR icl::markers::MarkerMetricsICL1::crs[4]

child regions

◆ root

utils::Size32f icl::markers::MarkerMetricsICL1::root

real dimension of the root region


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