362 const vpPoseEstimationMethod &poseEstimationMethod = HOMOGRAPHY_VIRTUAL_VS);
366 bool detect(const
vpImage<
unsigned char> &I) VP_OVERRIDE;
370 std::vector<
double> *projErrors =
nullptr, std::vector<
double> *projErrors2 =
nullptr);
377 void displayTags(const
vpImage<
unsigned char> &I, const std::vector<std::vector<
vpImagePoint> > &tagsCorners,
378 const
vpColor &color =
vpColor::none,
unsigned int thickness = 1) const;
380 const
vpColor &color =
vpColor::none,
unsigned int thickness = 1) const;
382 float getAprilTagDecisionMarginThreshold() const;
383 int getAprilTagHammingDistanceThreshold() const;
385 vpHomogeneousMatrix *cMo2 =
nullptr,
double *projError =
nullptr,
double *projError2 =
nullptr);
393 std::vector<std::vector<vpImagePoint> > getTagsCorners()
const;
394 std::vector<float> getTagsDecisionMargin()
const;
395 std::vector<int> getTagsHammingDistance()
const;
396 std::vector<int> getTagsId()
const;
397 std::vector<std::vector<vpPoint> > getTagsPoints3D(
const std::vector<int> &tagsId,
398 const std::map<int, double> &tagsSize)
const;
400 bool isZAlignedWithCameraAxis()
const;
402 void setAprilTagDebugOption(
bool flag);
403 void setAprilTagDecisionMarginThreshold(
float decisionMarginThreshold);
404 void setAprilTagDecodeSharpening(
double decodeSharpening);
405 void setAprilTagFamily(
const vpAprilTagFamily &tagFamily);
406 void setAprilTagHammingDistanceThreshold(
int hammingDistanceThreshold);
407 void setAprilTagNbThreads(
int nThreads);
408 void setAprilTagPoseEstimationMethod(
const vpPoseEstimationMethod &poseEstimationMethod);
409 void setAprilTagQuadDecimate(
float quadDecimate);
410 void setAprilTagQuadSigma(
float quadSigma);
411 void setAprilTagRefineEdges(
bool refineEdges);
426 swap(o1.m_impl, o2.m_impl);
429 void setZAlignedWithCameraAxis(
bool zAlignedWithCameraFrame);
431#if defined(VISP_BUILD_DEPRECATED_FUNCTIONS)
436 VP_DEPRECATED void setAprilTagRefinePose(bool refinePose);
437 VP_DEPRECATED
void setAprilTagRefineDecode(
bool refineDecode);