This class detects AR boards Version 1.2 There are two modes for board detection. First, the old way. (You first detect markers with MarkerDetector and then call to detect in this class. More...
#include <boarddetector.h>
Public Member Functions | |
BoardDetector (bool setYPerpendicular=true) | |
BoardDetector (bool setYPerpendicular=true) | |
float | detect (const cv::Mat &im) throw (cv::Exception) |
float | detect (const cv::Mat &im) throw (cv::Exception) |
float | detect (const vector< Marker > &detectedMarkers, const BoardConfiguration &BConf, Board &Bdetected, cv::Mat camMatrix=cv::Mat(), cv::Mat distCoeff=cv::Mat(), float markerSizeMeters=-1) throw (cv::Exception) |
float | detect (const vector< Marker > &detectedMarkers, const BoardConfiguration &BConf, Board &Bdetected, cv::Mat camMatrix=cv::Mat(), cv::Mat distCoeff=cv::Mat(), float markerSizeMeters=-1) throw (cv::Exception) |
float | detect (const vector< Marker > &detectedMarkers, const BoardConfiguration &BConf, Board &Bdetected, const CameraParameters &cp, float markerSizeMeters=-1) throw (cv::Exception) |
float | detect (const vector< Marker > &detectedMarkers, const BoardConfiguration &BConf, Board &Bdetected, const CameraParameters &cp, float markerSizeMeters=-1) throw (cv::Exception) |
Board & | getDetectedBoard () |
Board & | getDetectedBoard () |
vector< Marker > & | getDetectedMarkers () |
vector< Marker > & | getDetectedMarkers () |
MarkerDetector & | getMarkerDetector () |
MarkerDetector & | getMarkerDetector () |
void | setParams (const BoardConfiguration &bc, const CameraParameters &cp, float markerSizeMeters=-1) |
void | setParams (const BoardConfiguration &bc, const CameraParameters &cp, float markerSizeMeters=-1) |
void | setParams (const BoardConfiguration &bc) |
void | setParams (const BoardConfiguration &bc) |
void | setYPerpendicular (bool enable) |
void | setYPerpendicular (bool enable) |
Private Member Functions | |
void | rotateXAxis (cv::Mat &rotation) |
void | rotateXAxis (cv::Mat &rotation) |
Private Attributes | |
bool | _areParamsSet |
BoardConfiguration | _bconf |
Board | _boardDetected |
CameraParameters | _camParams |
float | _markerSize |
MarkerDetector | _mdetector |
bool | _setYPerpendicular |
vector< Marker > | _vmarkers |
This class detects AR boards Version 1.2 There are two modes for board detection. First, the old way. (You first detect markers with MarkerDetector and then call to detect in this class.
Second: New mode, marker detection is included in the class
Definition at line 65 of file aruco/include/aruco/boarddetector.h.
aruco::BoardDetector::BoardDetector | ( | bool | setYPerpendicular = true | ) |
See discussion in
Definition at line 41 of file aruco/src/aruco/boarddetector.cpp.
aruco::BoardDetector::BoardDetector | ( | bool | setYPerpendicular = true | ) |
See discussion in
float aruco::BoardDetector::detect | ( | const cv::Mat & | im | ) | |
throw | ( | cv::Exception | |||
) |
Detect markers, and then, look for the board indicated in setParams()
Definition at line 64 of file aruco/src/aruco/boarddetector.cpp.
float aruco::BoardDetector::detect | ( | const cv::Mat & | im | ) | |
throw | ( | cv::Exception | |||
) |
Detect markers, and then, look for the board indicated in setParams()
float aruco::BoardDetector::detect | ( | const vector< Marker > & | detectedMarkers, |
const BoardConfiguration & | BConf, | ||
Board & | Bdetected, | ||
cv::Mat | camMatrix = cv::Mat() , |
||
cv::Mat | distCoeff = cv::Mat() , |
||
float | markerSizeMeters = -1 |
||
) | |||
throw | ( | cv::Exception | |
) |
Given the markers detected, determines if there is the board passed
detectedMarkers | result provided by aruco::ArMarkerDetector |
BConf | the board you want to see if is present |
Bdetected | output information of the detected board |
camMatrix | camera matrix with intrinsics |
distCoeff | camera distorsion coeff |
camMatrix | intrinsic camera information. |
distCoeff | camera distorsion coefficient. If set Mat() if is assumed no camera distorion |
markerSizeMeters | size of the marker sides expressed in meters |
float aruco::BoardDetector::detect | ( | const vector< Marker > & | detectedMarkers, |
const BoardConfiguration & | BConf, | ||
Board & | Bdetected, | ||
cv::Mat | camMatrix = cv::Mat() , |
||
cv::Mat | distCoeff = cv::Mat() , |
||
float | markerSizeMeters = -1 |
||
) | |||
throw | ( | cv::Exception | |
) |
Given the markers detected, determines if there is the board passed
detectedMarkers | result provided by aruco::ArMarkerDetector |
BConf | the board you want to see if is present |
Bdetected | output information of the detected board |
camMatrix | camera matrix with intrinsics |
distCoeff | camera distorsion coeff |
camMatrix | intrinsic camera information. |
distCoeff | camera distorsion coefficient. If set Mat() if is assumed no camera distorion |
markerSizeMeters | size of the marker sides expressed in meters |
float aruco::BoardDetector::detect | ( | const vector< Marker > & | detectedMarkers, |
const BoardConfiguration & | BConf, | ||
Board & | Bdetected, | ||
const CameraParameters & | cp, | ||
float | markerSizeMeters = -1 |
||
) | |||
throw | ( | cv::Exception | |
) |
Definition at line 76 of file aruco/src/aruco/boarddetector.cpp.
float aruco::BoardDetector::detect | ( | const vector< Marker > & | detectedMarkers, |
const BoardConfiguration & | BConf, | ||
Board & | Bdetected, | ||
const CameraParameters & | cp, | ||
float | markerSizeMeters = -1 |
||
) | |||
throw | ( | cv::Exception | |
) |
|
inline |
Returns a reference to the board detected
Definition at line 86 of file aruco/include/aruco/boarddetector.h.
|
inline |
Returns a reference to the board detected
Definition at line 86 of file old/aruco/include/aruco/boarddetector.h.
|
inline |
Returns the vector of markers detected
Definition at line 92 of file old/aruco/include/aruco/boarddetector.h.
|
inline |
Returns the vector of markers detected
Definition at line 92 of file aruco/include/aruco/boarddetector.h.
|
inline |
Returns a reference to the internal marker detector
Definition at line 89 of file old/aruco/include/aruco/boarddetector.h.
|
inline |
Returns a reference to the internal marker detector
Definition at line 89 of file aruco/include/aruco/boarddetector.h.
|
private |
|
private |
void aruco::BoardDetector::setParams | ( | const BoardConfiguration & | bc, |
const CameraParameters & | cp, | ||
float | markerSizeMeters = -1 |
||
) |
Use if you plan to let this class to perform marker detection too
Definition at line 49 of file aruco/src/aruco/boarddetector.cpp.
void aruco::BoardDetector::setParams | ( | const BoardConfiguration & | bc, |
const CameraParameters & | cp, | ||
float | markerSizeMeters = -1 |
||
) |
Use if you plan to let this class to perform marker detection too
void aruco::BoardDetector::setParams | ( | const BoardConfiguration & | bc | ) |
Definition at line 57 of file aruco/src/aruco/boarddetector.cpp.
void aruco::BoardDetector::setParams | ( | const BoardConfiguration & | bc | ) |
|
inline |
By default, the Y axis is set to point up. However this is not the default operation mode of opencv, which produces the Z axis pointing up instead. So, to achieve this change, we have to rotate the X axis.
Definition at line 117 of file old/aruco/include/aruco/boarddetector.h.
|
inline |
By default, the Y axis is set to point up. However this is not the default operation mode of opencv, which produces the Z axis pointing up instead. So, to achieve this change, we have to rotate the X axis.
Definition at line 117 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 127 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 128 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 129 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 131 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 130 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 132 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 124 of file aruco/include/aruco/boarddetector.h.
|
private |
Definition at line 133 of file aruco/include/aruco/boarddetector.h.