From 7955865efeada3ac040aa9f04d8325cf3ee9102a Mon Sep 17 00:00:00 2001 From: Maxime Chauveau Date: Thu, 30 Nov 2023 13:53:14 +0100 Subject: [PATCH] =?UTF-8?q?La=20cam=20d=C3=A9tecte=20les=20aruco=20(et=20d?= =?UTF-8?q?=C3=A9tecte=20l'ID)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aruco.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 aruco.py diff --git a/aruco.py b/aruco.py new file mode 100644 index 0000000..f6bb23a --- /dev/null +++ b/aruco.py @@ -0,0 +1,40 @@ +import cv2 as cv +import cv2.aruco as aruco + +# Charger une image depuis la caméra (0 pour la caméra par défaut, généralement la webcam) +cap = cv.VideoCapture(0) + + +# Définir le dictionnaire ArUco +aruco_dict = aruco.getPredefinedDictionary(aruco.DICT_6X6_250) + +# Créer le détecteur ArUco +parameters = aruco.DetectorParameters() + +# +detector = aruco.ArucoDetector(aruco_dict,parameters) + +while True: + # Lire une image depuis la caméra + ret, frame = cap.read() + + # Convertir l'image en niveaux de gris + gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY) + + # Détecter les marqueurs ArUco + corners, ids, rejectedImgPoints = detector.detectMarkers(gray) + + # Dessiner les résultats + if ids is not None: + aruco.drawDetectedMarkers(frame, corners, ids) + + # Afficher l'image + cv.imshow('Frame', frame) + + # Sortir de la boucle si la touche 'q' est enfoncée + if cv.waitKey(1) & 0xFF == ord('q'): + break + +# Libérer la capture et fermer la fenêtre +cap.release() +cv.destroyAllWindows() \ No newline at end of file