The version of ArUco included in OpenCV

I am building a python application for reading different fiducial markers.
One of the detectors I am currently working with is ArUco. When researching the detector, I stumbled upon a paper from 2018 by Rafael Muñoz-Salinas which mentions a new proposed ArUco3. But the documentation of the OpenCV contrib modules, suggests the old implementation of ArUco. Is the ArUco detector included in OpenCV the old one? I have even seen papers metioning that the newest implementation (AruCo3) is part of the OpenCV and that there are different variants, but have failed to find any mention of this in the OpenCV documentation. Are the multiple variants and the inclusion of the ArUco3 algorithm exclusive to the C++ version of OpenCV?

I am quite perplexed by all of this, so thanks for any help.

May be it can help :

(don’t forget Wiki search results · GitHub )

and Code search results · GitHub

1 Like

Thank you very much this helped!

But I am now confused about the global thresholding. Should I understand it that the GlobalThreshold parameters were removed and were meant to be returned with the “ArucoDetector” class implementation, but aren’t implemented back as of yet?

take a look in opencv/samples/cpp/tutorial_code/objectDetection at 4.x · opencv/opencv · GitHub

I took a look, but it didn’t really help me. I know how to use the detector class and how to set the params to use the ArUco3 algorithm with the Image pyramid.

I have looked through the detector code again, and it appears that neither the parameters regarding the random global thresholding and Otsu’s algorithm for optimising the threshold value nor the code that should acompany it are present in the detector of the current version.

Thank you again for your help.

I barely skimmed the thread so it might have been stated already.

OpenCV’s aruco is a “fork” and its own code base. as far as I am aware, it does not track the original author’s code.

if you see any issues with OpenCV’s aruco, feel free to file an issue report on OpenCV’s github. make sure you’re at least on the current release, make sure it’s reproducible (you have steps to reproduce), and that the issue hasn’t been reported already.

make an issue (Issues · opencv/opencv · GitHub) and insert @AleksandrPanov(AleksandrPanov (Alexander Panov) · GitHub)