fractalmarker.h
Go to the documentation of this file.
1 #ifndef FRACTALMARKER_H
2 #define FRACTALMARKER_H
3 
4 #include <vector>
5 #include <bitset>
6 #include <opencv2/imgproc/imgproc.hpp>
7 #include "../markermap.h"
8 
9 namespace aruco
10 {
12 {
13 public:
14  FractalMarker();
15  FractalMarker(int id, cv::Mat m, std::vector<cv::Point3f> corners,
16  std::vector<int> id_submarkers);
17 
18  // Add new submarker
19  void addSubFractalMarker(FractalMarker submarker);
20 
21  // Find inner corners
22  std::vector<cv::Point3f> findInnerCorners();
23 
24  // Marker MAT
25  const cv::Mat mat() const
26  {
27  return _M;
28  }
29 
30  // Marker mask (mask applied to submarkers)
31  const cv::Mat mask() const
32  {
33  return _mask;
34  }
35 
36  // Total number of bits
37  int nBits()
38  {
39  return _M.total();
40  }
41 
42  // Submarkers ids
43  std::vector<int> subMarkers()
44  {
45  return _submarkers;
46  }
47 
48  // Get inner corners
49  std::vector<cv::Point3f> getInnerCorners()
50  {
51  if (innerCorners.empty())
53 
54  return innerCorners;
55  }
56 
57 private:
58  cv::Mat _M;
59  cv::Mat _mask;
60  std::vector<int> _submarkers; // id subfractalmarkers
61  std::vector<cv::Point3f> innerCorners;
62 };
63 } // namespace aruco
64 
65 #endif // FRACTALMARKER_H
const cv::Mat mask() const
Definition: fractalmarker.h:31
std::vector< cv::Point3f > getInnerCorners()
Definition: fractalmarker.h:49
std::vector< int > subMarkers()
Definition: fractalmarker.h:43
std::vector< int > _submarkers
Definition: fractalmarker.h:60
const cv::Mat mat() const
Definition: fractalmarker.h:25
void addSubFractalMarker(FractalMarker submarker)
std::vector< cv::Point3f > innerCorners
Definition: fractalmarker.h:61
std::vector< cv::Point3f > findInnerCorners()


aruco
Author(s): Rafael Muñoz Salinas , Bence Magyar
autogenerated on Fri Nov 25 2022 04:02:23