#include <markerdetector.h>
|
static void | _fromStream (std::string &strg, std::istream &str) |
|
static void | _toStream (const std::string &strg, std::ostream &str) |
|
template<typename Type > |
static bool | attemtpRead (const std::string &name, Type &var, cv::FileStorage &fs) |
|
Operating params
Definition at line 104 of file markerdetector.h.
◆ _fromStream()
void aruco::MarkerDetector::Params::_fromStream |
( |
std::string & |
strg, |
|
|
std::istream & |
str |
|
) |
| |
|
staticprivate |
◆ _toStream()
void aruco::MarkerDetector::Params::_toStream |
( |
const std::string & |
strg, |
|
|
std::ostream & |
str |
|
) |
| |
|
staticprivate |
◆ attemtpRead()
template<typename Type >
static bool aruco::MarkerDetector::Params::attemtpRead |
( |
const std::string & |
name, |
|
|
Type & |
var, |
|
|
cv::FileStorage & |
fs |
|
) |
| |
|
inlinestaticprivate |
◆ detectEnclosedMarkers()
void aruco::MarkerDetector::Params::detectEnclosedMarkers |
( |
bool |
do_ | ) |
|
|
inline |
Enables/Disbles the detection of enclosed markers. Enclosed markers are markers where corners are like opencv chessboard pattern
Definition at line 132 of file markerdetector.h.
◆ fromStream()
void aruco::MarkerDetector::Params::fromStream |
( |
std::istream & |
str | ) |
|
◆ getAutoSizeSpeedUp()
bool aruco::MarkerDetector::Params::getAutoSizeSpeedUp |
( |
| ) |
const |
|
inline |
◆ getCornerRefinementMethodFromString()
CornerRefinementMethod aruco::MarkerDetector::Params::getCornerRefinementMethodFromString |
( |
const std::string & |
str | ) |
|
|
static |
◆ getCornerThresMethodFromString()
◆ getDetectionModeFromString()
DetectionMode aruco::MarkerDetector::Params::getDetectionModeFromString |
( |
const std::string & |
str | ) |
|
|
static |
◆ load()
void aruco::MarkerDetector::Params::load |
( |
cv::FileStorage & |
fs | ) |
|
◆ save()
void aruco::MarkerDetector::Params::save |
( |
cv::FileStorage & |
fs | ) |
const |
◆ setAutoSizeSpeedUp()
void aruco::MarkerDetector::Params::setAutoSizeSpeedUp |
( |
bool |
v, |
|
|
float |
Ts = 0.25 |
|
) |
| |
|
inline |
◆ setCornerRefinementMethod()
Sets the corner refinement method
- CORNER_SUBPIX: uses subpixel refinement implemented in opencv
- CORNER_LINES: uses all the pixels in the corner border to estimate the 4 lines of the square. Then estimate the point in which they intersect. In seems that it more robust to noise. However, it only works if input image is not resized. So, the value minMarkerSize will be set to 0.
- CORNER_NONE: Does no refinement of the corner. Again, it requires minMakerSize to be 0
Definition at line 436 of file markerdetector.cpp.
◆ setDetectionMode()
void aruco::MarkerDetector::Params::setDetectionMode |
( |
DetectionMode |
dm, |
|
|
float |
minMarkerSize |
|
) |
| |
Specifies the detection mode. We have preset three types of detection modes. These are ways to configure the internal parameters for the most typical situations. The modes are:
- DM_NORMAL: In this mode, the full resolution image is employed for detection and slow threshold method. Use this method when you process individual images that are not part of a video sequence and you are not interested in speed.
- DM_FAST: In this mode, there are two main improvements. First, image is threshold using a faster method using a global threshold. Also, the full resolution image is employed for detection, but, you could speed up detection even more by indicating a minimum size of the markers you will accept. This is set by the variable minMarkerSize which shoud be in range [0,1]. When it is 0, means that you do not set a limit in the size of the accepted markers. However, if you set 0.1, it means that markers smaller than 10% of the total image area, will not be detected. Then, the detection can be accelated up to orders of magnitude compared to the normal mode.
- DM_VIDEO_FAST: This is similar to DM_FAST, but specially adapted to video processing. In that case, we assume that the observed markers when you call to detect() have a size similar to the ones observed in the previous frame. Then, the processing can be speeded up by employing smaller versions of the image automatically calculated.
Definition at line 416 of file markerdetector.cpp.
◆ setThresholdMethod()
void aruco::MarkerDetector::Params::setThresholdMethod |
( |
MarkerDetector::ThresMethod |
method, |
|
|
int |
thresHold = -1 , |
|
|
int |
wsize = -1 , |
|
|
int |
wsize_range = 0 |
|
) |
| |
◆ toStream()
void aruco::MarkerDetector::Params::toStream |
( |
std::ostream & |
str | ) |
const |
◆ toString() [1/3]
◆ toString() [2/3]
std::string aruco::MarkerDetector::Params::toString |
( |
DetectionMode |
dm | ) |
|
|
static |
◆ toString() [3/3]
◆ AdaptiveThresWindowSize
int aruco::MarkerDetector::Params::AdaptiveThresWindowSize = -1 |
◆ AdaptiveThresWindowSize_range
int aruco::MarkerDetector::Params::AdaptiveThresWindowSize_range = 0 |
◆ autoSize
bool aruco::MarkerDetector::Params::autoSize = false |
◆ borderDistThres
float aruco::MarkerDetector::Params::borderDistThres = 0.015f |
◆ closingSize
int aruco::MarkerDetector::Params::closingSize |
◆ cornerRefinementM
◆ detectMode
◆ dictionary
std::string aruco::MarkerDetector::Params::dictionary = "ALL_DICTS" |
◆ enclosedMarker
bool aruco::MarkerDetector::Params::enclosedMarker = false |
◆ error_correction_rate
float aruco::MarkerDetector::Params::error_correction_rate = 0 |
◆ lowResMarkerSize
int aruco::MarkerDetector::Params::lowResMarkerSize = 20 |
◆ markerWarpPixSize
int aruco::MarkerDetector::Params::markerWarpPixSize = 5 |
◆ maxThreads
int aruco::MarkerDetector::Params::maxThreads = 1 |
◆ minSize
float aruco::MarkerDetector::Params::minSize = -1 |
◆ minSize_pix
int aruco::MarkerDetector::Params::minSize_pix = -1 |
◆ NAttemptsAutoThresFix
int aruco::MarkerDetector::Params::NAttemptsAutoThresFix |
◆ pyrfactor
float aruco::MarkerDetector::Params::pyrfactor = 2 |
Enables automatic image resize according to elements detected in previous frame
- Parameters
-
v | |
ts | is a factor in the range $(0,1]$ that accounts for the camera motion speed. For instance, when ts=0.1 , it means that in the next frame, $\tau_i$ is such that markers $10%$ smaller than the smallest marker in the current image will be seek. To avoid loosing track of the markers. |
Definition at line 234 of file markerdetector.h.
◆ ThresHold
int aruco::MarkerDetector::Params::ThresHold = 7 |
◆ thresMethod
◆ trackingMinDetections
int aruco::MarkerDetector::Params::trackingMinDetections = 0 |
◆ ts
float aruco::MarkerDetector::Params::ts |
The documentation for this struct was generated from the following files: