dictionary_based.h
Go to the documentation of this file.
1 
17 #ifndef ArucoDictionaryBasedMarkerDetector_H
18 #define ArucoDictionaryBasedMarkerDetector_H
19 
20 #include "dictionary.h"
21 #include "markerlabeler.h"
22 
23 #include <opencv2/core/core.hpp>
24 namespace aruco
25 {
29 {
30 public:
31  virtual ~DictionaryBased()
32  {
33  }
34  // first, dictionary, second the maximum correction rate [0,1]. If 0,no correction, if
35  // 1, maximum allowed correction
36  void setParams(const Dictionary& dic, float max_correction_rate);
37 
38  // main virtual class to o detection
39  virtual bool detect(const cv::Mat& in, int& marker_id, int& nRotations,
40  std::string& additionalInfo);
41  // returns the dictionary name
42  virtual std::string getName() const;
43 
44  virtual int getNSubdivisions() const
45  {
46  return _nsubdivisions;
47  } //
48 
49  std::vector<Dictionary> getDictionaries() const
50  {
51  return vdic;
52  }
53 
54 private:
55  // obfuscate start
56  bool getInnerCode(const cv::Mat& thres_img, int total_nbits, std::vector<uint64_t>& ids);
57  cv::Mat rotate(const cv::Mat& in);
58  uint64_t touulong(const cv::Mat& code);
59  std::vector<Dictionary> vdic;
60  void toMat(uint64_t code, int nbits_sq, cv::Mat& out);
61  int _nsubdivisions = 0;
63  std::string dicttypename;
64  std::map<uint32_t, std::vector<Dictionary*>> nbits_dict;
65  // obfuscate end
66 };
67 } // namespace aruco
68 #endif
aruco::DictionaryBased::toMat
void toMat(uint64_t code, int nbits_sq, cv::Mat &out)
Definition: dictionary_based.cpp:63
markerlabeler.h
aruco::DictionaryBased::setParams
void setParams(const Dictionary &dic, float max_correction_rate)
Definition: dictionary_based.cpp:37
aruco::DictionaryBased::dicttypename
std::string dicttypename
Definition: dictionary_based.h:63
aruco::Dictionary
Definition: dictionary.h:41
aruco::DictionaryBased::getName
virtual std::string getName() const
Definition: dictionary_based.cpp:58
aruco::DictionaryBased::rotate
cv::Mat rotate(const cv::Mat &in)
Definition: dictionary_based.cpp:296
aruco::DictionaryBased::getNSubdivisions
virtual int getNSubdivisions() const
getNSubdivisions returns the number of subdivisions in each axis that the iamge will be subject to....
Definition: dictionary_based.h:44
aruco::MarkerLabeler
Definition: markerlabeler.h:32
aruco::DictionaryBased::_nsubdivisions
int _nsubdivisions
Definition: dictionary_based.h:61
aruco::DictionaryBased::_max_correction_rate
float _max_correction_rate
Definition: dictionary_based.h:62
aruco::DictionaryBased::getDictionaries
std::vector< Dictionary > getDictionaries() const
Definition: dictionary_based.h:49
aruco::DictionaryBased::vdic
std::vector< Dictionary > vdic
Definition: dictionary_based.h:59
aruco::DictionaryBased::getInnerCode
bool getInnerCode(const cv::Mat &thres_img, int total_nbits, std::vector< uint64_t > &ids)
Definition: dictionary_based.cpp:165
aruco::DictionaryBased::touulong
uint64_t touulong(const cv::Mat &code)
Definition: dictionary_based.cpp:287
dictionary.h
aruco
Definition: cameraparameters.h:24
aruco::DictionaryBased::detect
virtual bool detect(const cv::Mat &in, int &marker_id, int &nRotations, std::string &additionalInfo)
Definition: dictionary_based.cpp:81
aruco::DictionaryBased
Definition: dictionary_based.h:28
aruco::DictionaryBased::nbits_dict
std::map< uint32_t, std::vector< Dictionary * > > nbits_dict
Definition: dictionary_based.h:64
aruco::DictionaryBased::~DictionaryBased
virtual ~DictionaryBased()
Definition: dictionary_based.h:31


aruco
Author(s): Rafael Muñoz Salinas , Bence Magyar
autogenerated on Sat Sep 23 2023 02:26:45