#include <dictionary.h>
Public Types | |
enum | DICT_TYPES : uint64_t { ALL_DICTS = 0, ARUCO_MIP_36h12 = 1, ARUCO = 2, ARUCO_MIP_25h7 = 3, ARUCO_MIP_16h3 = 4, ARTAG = 5, ARTOOLKITPLUS = 6, ARTOOLKITPLUSBCH = 7, TAG16h5 = 8, TAG25h7 = 9, TAG25h9 = 10, TAG36h11 = 11, TAG36h10 = 12, CHILITAGS = 13, CUSTOM = 14 } |
Public Member Functions | |
int | at (uint64_t code) |
MarkerMap | createMarkerMap (cv::Size gridSize, int MarkerSize, int MarkerDistance, const std::vector< int > &Ids, bool chess_board=false) |
const std::map< uint64_t, uint16_t > & | getMapCode () const |
cv::Mat | getMarkerImage_id (int id, int bit_size, bool addWaterMark=true, bool enclosed_corners=false, bool printExternalWhiteBorder=false, bool centralCircle=false) |
Dictionary::getMarkerImage_id. More... | |
std::string | getName () const |
DICT_TYPES | getType () const |
bool | is (uint64_t code) const |
uint32_t | nbits () const |
int | operator[] (uint64_t code) |
uint64_t | size () const |
uint32_t | tau () const |
Static Public Member Functions | |
static uint64_t | computeDictionaryDistance (const Dictionary &d) |
Dictionary::computeDictionaryDistance. More... | |
static std::vector< std::string > | getDicTypes () |
static DICT_TYPES | getTypeFromString (std::string str) |
static std::string | getTypeString (DICT_TYPES t) |
static bool | isPredefinedDictinaryString (std::string str) |
static Dictionary | load (std::string info) |
static Dictionary | loadFromFile (std::string path) |
static Dictionary | loadPredefined (DICT_TYPES type) |
static Dictionary | loadPredefined (std::string type) |
Private Member Functions | |
void | insert (uint64_t code, int id) |
Static Private Member Functions | |
static void | fromVector (const std::vector< uint64_t > &codes, std::map< uint64_t, uint16_t > &code_id_map) |
Private Attributes | |
std::map< uint64_t, uint16_t > | _code_id |
std::string | _name |
uint32_t | _nbits |
uint32_t | _tau |
DICT_TYPES | _type |
Represents a set of valid marker ids with a maximum size of 8x8 = 64 bits. In our approach, markers are seen as a pair code-id. The code is the internal binary code printed on the marker. Maximum size is 8x8 bits. The id is a smaller number you can use to identify it. You will use only the id
See enum DICT_TYPES for the set of dicitionaries availables
Definition at line 41 of file dictionary.h.
enum aruco::Dictionary::DICT_TYPES : uint64_t |
Enumerator | |
---|---|
ALL_DICTS | |
ARUCO_MIP_36h12 | |
ARUCO | |
ARUCO_MIP_25h7 | |
ARUCO_MIP_16h3 | |
ARTAG | |
ARTOOLKITPLUS | |
ARTOOLKITPLUSBCH | |
TAG16h5 | |
TAG25h7 | |
TAG25h9 | |
TAG36h11 | |
TAG36h10 | |
CHILITAGS | |
CUSTOM |
Definition at line 45 of file dictionary.h.
|
inline |
Definition at line 106 of file dictionary.h.
|
static |
Dictionary::computeDictionaryDistance.
dict |
Definition at line 3620 of file dictionary.cpp.
MarkerMap aruco::Dictionary::createMarkerMap | ( | cv::Size | gridSize, |
int | MarkerSize, | ||
int | MarkerDistance, | ||
const std::vector< int > & | Ids, | ||
bool | chess_board = false |
||
) |
|
staticprivate |
Definition at line 101 of file dictionary.cpp.
|
static |
Definition at line 3536 of file dictionary.cpp.
|
inline |
Definition at line 96 of file dictionary.h.
cv::Mat aruco::Dictionary::getMarkerImage_id | ( | int | id, |
int | bit_size, | ||
bool | addWaterMark = true , |
||
bool | enclosed_corners = false , |
||
bool | externalWhiteBorder = false , |
||
bool | centralCircle = false |
||
) |
Dictionary::getMarkerImage_id.
id |
Definition at line 3348 of file dictionary.cpp.
|
inline |
Definition at line 91 of file dictionary.h.
|
inline |
Definition at line 70 of file dictionary.h.
|
static |
Definition at line 3494 of file dictionary.cpp.
|
static |
Definition at line 3455 of file dictionary.cpp.
|
inlineprivate |
Definition at line 172 of file dictionary.h.
|
inline |
Definition at line 65 of file dictionary.h.
|
static |
Definition at line 3531 of file dictionary.cpp.
|
static |
Loads a dictioanary using the string passed. If it is a string of the predefined dictionaries, then returns it. Otherwise, tries to load from a file
Definition at line 32 of file dictionary.cpp.
|
static |
loads a dictionary defined in a file Please note that the parsing is very basic and you must be very strict.
Here is an example of a 3x3 dictionary of 3 markers 010 111 000 001 101 001 001 010 100
name MYOWN nbits 9 010001001 111101010 000001100
Definition at line 41 of file dictionary.cpp.
|
static |
Definition at line 113 of file dictionary.cpp.
|
static |
Definition at line 108 of file dictionary.cpp.
|
inline |
Definition at line 81 of file dictionary.h.
|
inline |
Definition at line 102 of file dictionary.h.
|
inline |
Definition at line 76 of file dictionary.h.
|
inline |
Definition at line 86 of file dictionary.h.
|
private |
Definition at line 179 of file dictionary.h.
|
private |
Definition at line 186 of file dictionary.h.
|
private |
Definition at line 182 of file dictionary.h.
|
private |
Definition at line 183 of file dictionary.h.
|
private |
Definition at line 185 of file dictionary.h.