From 07cac29937eaf25d44acc7c9ccc064e037095fd5 Mon Sep 17 00:00:00 2001 From: Oleg Kalachev Date: Thu, 26 May 2022 12:47:08 +0300 Subject: [PATCH] aruco_pose: make aruco_detect/length parameter dynamic --- aruco_pose/cfg/Detector.cfg | 2 ++ aruco_pose/src/aruco_detect.cpp | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/aruco_pose/cfg/Detector.cfg b/aruco_pose/cfg/Detector.cfg index 5788e9e9..581bc262 100755 --- a/aruco_pose/cfg/Detector.cfg +++ b/aruco_pose/cfg/Detector.cfg @@ -10,6 +10,8 @@ gen = ParameterGenerator() gen.add("enabled", bool_t, 0, "if detection enabled", True) +gen.add("length", double_t, 0, "markers' side length", min=0, max=10) + gen.add("adaptiveThreshConstant", double_t, 0, "Constant for adaptive thresholding before finding contours", p.adaptiveThreshConstant, 0, 100) diff --git a/aruco_pose/src/aruco_detect.cpp b/aruco_pose/src/aruco_detect.cpp index 6da1e8f3..4a6cfac7 100644 --- a/aruco_pose/src/aruco_detect.cpp +++ b/aruco_pose/src/aruco_detect.cpp @@ -385,7 +385,8 @@ private: void paramCallback(aruco_pose::DetectorConfig &config, uint32_t level) { - enabled_ = config.enabled; + enabled_ = config.enabled && config.length > 0; + length_ = config.length; parameters_->adaptiveThreshConstant = config.adaptiveThreshConstant; parameters_->adaptiveThreshWinSizeMin = config.adaptiveThreshWinSizeMin; parameters_->adaptiveThreshWinSizeMax = config.adaptiveThreshWinSizeMax;