![]() |
Visual Servoing Platform
version 3.3.0
|
#include <vpDetectorDataMatrixCode.h>
Public Member Functions | |
vpDetectorDataMatrixCode () | |
virtual | ~vpDetectorDataMatrixCode () |
bool | detect (const vpImage< unsigned char > &I) |
Inherited functionalities from vpDetectorBase | |
vpRect | getBBox (size_t i) const |
vpImagePoint | getCog (size_t i) const |
std::vector< std::string > & | getMessage () |
std::string & | getMessage (size_t i) |
size_t | getNbObjects () const |
std::vector< std::vector< vpImagePoint > > & | getPolygon () |
std::vector< vpImagePoint > & | getPolygon (size_t i) |
void | setTimeout (unsigned long timeout_ms) |
Protected Attributes | |
std::vector< std::vector< vpImagePoint > > | m_polygon |
std::vector< std::string > | m_message |
size_t | m_nb_objects |
unsigned long | m_timeout_ms |
Base class for bar code detector. This class is a wrapper over libdmtx available from http://www.libdmtx.org. Installation instructions are provided here https://visp.inria.fr/3rd_dmtx.
The detect() function allows to detect multiple QR codes in an image. Once detected, for each QR code it is possible to retrieve the location of the corners using getPolygon(), the encoded message using getMessage(), the bounding box using getBBox() and the center of gravity using getCog().
The following sample code shows how to use this class to detect QR codes in an image.
The previous example may produce results like:
Other examples are also provided in tutorial-barcode-detector.cpp and tutorial-barcode-detector-live.cpp
Definition at line 112 of file vpDetectorDataMatrixCode.h.
vpDetectorDataMatrixCode::vpDetectorDataMatrixCode | ( | ) |
Default constructor that does nothing except setting detection timeout to 50ms. This value could be changed using setTimeout().
Definition at line 52 of file vpDetectorDataMatrixCode.cpp.
|
inlinevirtual |
Definition at line 116 of file vpDetectorDataMatrixCode.h.
|
virtual |
Detect datamatrix codes in the image. Return true if a code is detected, false otherwise. There is the setTimeout() function that allows to tune the value of the timeout used to detect a datamatrix code. By default, there is a timeout of 50 ms set in the constructor.
I | : Input image. |
Implements vpDetectorBase.
Definition at line 61 of file vpDetectorDataMatrixCode.cpp.
|
inherited |
Return the bounding box of the ith object.
Definition at line 91 of file vpDetectorBase.cpp.
|
inherited |
Return the center of gravity location of the ith object.
Definition at line 78 of file vpDetectorBase.cpp.
Referenced by VispDetector::detectAprilTag:px:py:.
|
inlineinherited |
Returns the contained message of the ith object if there is one.
Definition at line 105 of file vpDetectorBase.h.
|
inherited |
Returns the contained message of the ith object if there is one.
Definition at line 66 of file vpDetectorBase.cpp.
|
inlineinherited |
Return the number of objects that are detected.
Definition at line 115 of file vpDetectorBase.h.
Referenced by VispDetector::detectAprilTag:px:py:.
|
inlineinherited |
Returns object container box as a vector of points.
Definition at line 120 of file vpDetectorBase.h.
Referenced by VispDetector::detectAprilTag:px:py:.
|
inherited |
Returns ith object container box as a vector of points.
Definition at line 54 of file vpDetectorBase.cpp.
|
inlineinherited |
Set detector timeout in milli-seconds. When set to 0, there is no timeout.
Definition at line 128 of file vpDetectorBase.h.
|
protectedinherited |
Message attached to each object.
Definition at line 67 of file vpDetectorBase.h.
|
protectedinherited |
Number of detected objects.
Definition at line 68 of file vpDetectorBase.h.
|
protectedinherited |
For each object, defines the polygon that contains the object.
Definition at line 66 of file vpDetectorBase.h.
|
protectedinherited |
Detection timeout.
Definition at line 69 of file vpDetectorBase.h.