Table of Contents

Struct DetectorParameters

Namespace
OpenCvSharp.Aruco
Assembly
OpenCvSharp.dll

Parameters for the detectMarker process

public struct DetectorParameters
Inherited Members

Constructors

DetectorParameters()

Constructor

Fields

AdaptiveThreshConstant

constant for adaptive thresholding before finding contours (default 7)

AdaptiveThreshWinSizeMax

adaptiveThreshWinSizeMax: maximum window size for adaptive thresholding before finding contours(default 23).

AdaptiveThreshWinSizeMin

minimum window size for adaptive thresholding before finding contours (default 3).

AdaptiveThreshWinSizeStep

increments from adaptiveThreshWinSizeMin to adaptiveThreshWinSizeMax during the thresholding(default 10).

AprilTagCriticalRad

Reject quads where pairs of edges have angles that are close to straight or close to 180 degrees. Zero means that no quads are rejected. (In radians).

AprilTagDeglitch

should the thresholded image be deglitched? Only useful for very noisy images

AprilTagMaxLineFitMse

When fitting lines to the contours, what is the maximum mean squared error allowed? This is useful in rejecting contours that are far from being quad shaped; rejecting these quads "early" saves expensive decoding processing.

AprilTagMaxNmaxima

how many corner candidates to consider when segmenting a group of pixels into a quad.

AprilTagMinClusterPixels

reject quads containing too few pixels.

AprilTagMinWhiteBlackDiff

When we build our model of black & white pixels, we add an extra check that the white model must be (overall) brighter than the black model. How much brighter? (in pixel values, [0,255]).

AprilTagQuadDecimate

Detection of quads can be done on a lower-resolution image, improving speed at a cost of pose accuracy and a slight decrease in detection rate. Decoding the binary payload is still done at full resolution.

AprilTagQuadSigma

What Gaussian blur should be applied to the segmented image (used for quad detection?) Parameter is the standard deviation in pixels. Very noisy images benefit from non-zero values (e.g. 0.8).

CornerRefinementMaxIterations

maximum number of iterations for stop criteria of the corner refinement process(default 30).

CornerRefinementMethod

corner refinement method. (CORNER_REFINE_NONE, no refinement. CORNER_REFINE_SUBPIX, do subpixel refinement. CORNER_REFINE_CONTOUR use contour-Points)

CornerRefinementMinAccuracy

minimum error for the stop criteria of the corner refinement process(default: 0.1)

CornerRefinementWinSize

window size for the corner refinement process (in pixels) (default 5).

ErrorCorrectionRate

errorCorrectionRate error correction rate respect to the maximun error correction capability for each dictionary. (default 0.6).

MarkerBorderBits

number of bits of the marker border, i.e. marker border width (default 1).

MaxErroneousBitsInBorderRate

maximum number of accepted erroneous bits in the border (i.e. number of allowed white bits in the border). Represented as a rate respect to the total number of bits per marker(default 0.35).

MaxMarkerPerimeterRate

determine maximum perimeter for marker contour to be detected. This is defined as a rate respect to the maximum dimension of the input image(default 4.0).

MinCornerDistanceRate

minimum distance between corners for detected markers relative to its perimeter(default 0.05)

MinDistanceToBorder

minimum distance of any corner to the image border for detected markers (in pixels) (default 3)

MinGroupDistance

minimum average distance between the corners of the two markers in group to add them to the list of candidates (default 0.21).

MinMarkerDistanceRate

minimum mean distance between two marker corners to be considered similar, so that the smaller one is removed.The rate is relative to the smaller perimeter of the two markers(default 0.05).

MinMarkerLengthRatioOriginalImg

range [0,1], eq (2) from paper. The parameter tau_i has a direct influence on the processing speed.

MinMarkerPerimeterRate

determine minimum perimeter for marker contour to be detected. This is defined as a rate respect to the maximum dimension of the input image(default 0.03).

MinOtsuStdDev

minimun standard deviation in pixels values during the decodification step to apply Otsu thresholding(otherwise, all the bits are set to 0 or 1 depending on mean higher than 128 or not) (default 5.0)

MinSideLengthCanonicalImg

minimum side length of a marker in the canonical image. Latter is the binarized image in which contours are searched.

PerspectiveRemoveIgnoredMarginPerCell

width of the margin of pixels on each cell not considered for the determination of the cell bit.Represents the rate respect to the total size of the cell, i.e. perspectiveRemovePixelPerCell (default 0.13)

PerspectiveRemovePixelPerCell

number of bits (per dimension) for each cell of the marker when removing the perspective(default 8).

PolygonalApproxAccuracyRate

minimum accuracy during the polygonal approximation process to determine which contours are squares.

RelativeCornerRefinmentWinSize

Dynamic window size for corner refinement relative to Aruco module size (default 0.3).

Properties

DetectInvertedMarker

to check if there is a white marker. In order to generate a "white" marker just invert a normal marker by using a tilde, ~markerImage. (default false)

UseAruco3Detection

enable the new and faster Aruco detection strategy. Proposed in the paper: