UbiquityRobotics / fiducials

Simultaneous localization and mapping using fiducial markers.
BSD 3-Clause "New" or "Revised" License
263 stars 137 forks source link

No detection near the marker #264

Closed xperiazu21 closed 2 years ago

xperiazu21 commented 2 years ago

Hello, when the camera is about 40 cm away from the marker, the ArUco marker is no longer detected.

Seeing that #191 has the same problem, I changed the maxMarkerPerimeterRate parameter in aruco_detect through rqt_reconfigure, the default value is 1.0, I lowered the value, but the distance of the marker can be detected further.

I also tried to replace the markers of other dictionaries, the result is the same, are there any parameters I need to adjust? image image

MoffKalast commented 2 years ago

Yeah I've been seeing this a lot, though it seems to only happen at certain times. It does happen if the dictionary isn't set up right, though it also happens sometimes when it is.

Probably an issue in the detection code somewhere, with it only using kernels up to a certain size or something.

xperiazu21 commented 2 years ago

I saw a few pull requests about maxMarkerPerimeterRate.

Need to modify file aruco_detect/cfg/DetectorParams.cfg gen.add("maxMarkerPerimeterRate", double_t, 0, "Determine maximum perimeter for marker contour to be detected. This is defined as a rate respect to the maximum dimension of the input image", 4.0, 0, 1)

change 1 to 4.0 gen.add("maxMarkerPerimeterRate", double_t, 0, "Determine maximum perimeter for marker contour to be detected. This is defined as a rate respect to the maximum dimension of the input image", 4.0, 0, 4.0)

After the change, the catkin_make must be executed again to take effect! I am stuck for a long time.