DataCodeDetectorParams

Description

Parameters for detecting barcodes and datacodes.

Structure Fields

Type fields and default values (if defined) are described below:

Name Type Default Description
Polarity CodePolarity* Any Specifies whether the code is darker or brighter than the background.
MinContrast Integer* 10 Minimal gray level difference between dark and bright modules.
DetectionMethod DatacodeDetectionMethod FinderEdges Selects one of available detection algorithms; FinderEdges is the best overall, but DotGrid may be better for dot-printed codes and for damaged finder patterns.
PyramidStrategy DatacodePyramidStrategy Precise Specifies the step of image downsampling used for finding codes at different scales.
DecodeStrategy DatacodeDecodeStrategy Precise Specifies the precision of the decoding algorithm (after the code has already been detected).
FinderTradeoff DatacodeFinderTradeoff* Balanced Use 'Sensitive' for Data Matrix with narrow quiet zones. It is also more accurate for barcodes and QR codes, but slower. Use 'Robust' to better deal with damaged Data Matrix codes.
DotSize DataCodeDotSize* Large Optimizes the algorithm parameters for small, medium or large dots, or for fully-printed (normal) codes. Applies to DotGrid and FinderPattern methods.
AllowBrokenEdges Bool true Employs an extended edge tracker that is able to 'jump' over missing pixels. Applies primarily to the FinderEdges method.
AllowPerspective DatacodePerspectiveLevel Low Allows detection of codes under perspective distortion. Use 'High' also for very big codes.
AllowDistortion DatacodeDistortionLevel* Low Use 'Medium' for curved surfaces and 'High' for wrinkled ones.
AllowRotation Bool true Detects rotated codes (more than 5 degrees).
MaxSlant Real 30.0f Maximal deviation from the right angle in the code's outline (shear).
UseSuperRes Bool* Controls image up-scaling for detecting very low-resolution codes (depending on MinModuleSize).
EdgeTracker DatacodeEdgeTracker Strong Decides how strongly the edge tracker preserves the continuity of an edge. Strong tracker produces more consistent edges, but may accidentally connect too much.