Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

An aruco marker is a square marker composed by a certain number of bits that corresponds to a specific id. The complete ArUco marker with the black border is essential for its detection. The size of the ArUco markers can vary such that a 5x5 marker will consist of 25 bits. 

The ArUco markers can be visualized as seen below. A user can define what ID they require and the corresponding ArUco marker will be generated.

OpenCV has a library that detects and generates ArUco markers, the link to the documentation can be found here.

Start with importing AruCo markers.

from cv2 import aruco

Create an AruCo marker object.

dictionary = aruco.Dictionary_get(cv2.aruco.DICT_6X6_1000)
parameters = aruco.DetectorParameters_create()

Start with passing the camera frame in the aruco object.

while True:
  markerCorners, markerIds, rejectedCandidates = aruco.detectMarkers(leftFrame,dictionary,parameters=parameters)          
  leftFrame = aruco.drawDetectedMarkers(leftFrame,markerCorners,markerIds)

To check what frame is detected.

if markerIds is not None:
      for i in range(len(markerIds)):
        print(f'id = {i}')

There are few pre-trained AruCo marker sets that can be accessed like:

aruco_dictionary = {
	"DICT_4X4_50": cv2.aruco.DICT_4X4_50,
	"DICT_4X4_100": cv2.aruco.DICT_4X4_100,
	"DICT_4X4_250": cv2.aruco.DICT_4X4_250,
	"DICT_4X4_1000": cv2.aruco.DICT_4X4_1000,
	"DICT_5X5_50": cv2.aruco.DICT_5X5_50,
	"DICT_5X5_100": cv2.aruco.DICT_5X5_100,
	"DICT_5X5_250": cv2.aruco.DICT_5X5_250,
	"DICT_5X5_1000": cv2.aruco.DICT_5X5_1000,
	"DICT_6X6_50": cv2.aruco.DICT_6X6_50,
	"DICT_6X6_100": cv2.aruco.DICT_6X6_100,
	"DICT_6X6_250": cv2.aruco.DICT_6X6_250,
	"DICT_6X6_1000": cv2.aruco.DICT_6X6_1000,
	"DICT_7X7_50": cv2.aruco.DICT_7X7_50,
	"DICT_7X7_100": cv2.aruco.DICT_7X7_100,
	"DICT_7X7_250": cv2.aruco.DICT_7X7_250,
	"DICT_7X7_1000": cv2.aruco.DICT_7X7_1000,
	"DICT_ARUCO_ORIGINAL": cv2.aruco.DICT_ARUCO_ORIGINAL,
	"DICT_APRILTAG_16h5": cv2.aruco.DICT_APRILTAG_16h5,
	"DICT_APRILTAG_25h9": cv2.aruco.DICT_APRILTAG_25h9,
	"DICT_APRILTAG_36h10": cv2.aruco.DICT_APRILTAG_36h10,
	"DICT_APRILTAG_36h11": cv2.aruco.DICT_APRILTAG_36h11
}

AruCo markers can be used as a tool for path planning of the BenchBot.

  • No labels