未检测到 ArUco 标记
ArUco Markers are not detected
我正在尝试检测此图像中的 ArUco 标记:
使用此代码:
import cv2
import cv2.aruco as aruco
import numpy as np
def findArucoMarkers(img, markerSize = 5, totalMarkers=250, draw=True):
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
key = getattr(aruco, f'DICT_{markerSize}X{markerSize}_{totalMarkers}')
arucoDict = aruco.Dictionary_get(key)
arucoParam = aruco.DetectorParameters_create()
bboxs, ids, rejected = aruco.detectMarkers(gray, arucoDict, parameters = arucoParam)
print(ids)
if draw:
aruco.drawDetectedMarkers(img, bboxs)
return [bboxs, ids]
path = ""
imName= "test3.png"
img = cv2.imread(path+imName)
arucofound = findArucoMarkers(img, markerSize = 5)
cv2.imshow('img',img)
cv2.waitKey(0)
遗憾的是,没有检测到标记!你能告诉我如何正确检测标记吗?提前致谢。
编辑:
标记是 5x5 从这个 website 在线生成的,ID:0, 2, 4, 12, 17
使用的相机Asus Xtion Live Pro
.
图片是标记的镜像。
ArUco 标记在镜像时不会被解码。
Prevent/undo 镜像。找到执行此操作的 device/driver 设置。
flipped = cv.flip(img, 1)
围绕 Y-axis 翻转图像。
我正在尝试检测此图像中的 ArUco 标记:
使用此代码:
import cv2
import cv2.aruco as aruco
import numpy as np
def findArucoMarkers(img, markerSize = 5, totalMarkers=250, draw=True):
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
key = getattr(aruco, f'DICT_{markerSize}X{markerSize}_{totalMarkers}')
arucoDict = aruco.Dictionary_get(key)
arucoParam = aruco.DetectorParameters_create()
bboxs, ids, rejected = aruco.detectMarkers(gray, arucoDict, parameters = arucoParam)
print(ids)
if draw:
aruco.drawDetectedMarkers(img, bboxs)
return [bboxs, ids]
path = ""
imName= "test3.png"
img = cv2.imread(path+imName)
arucofound = findArucoMarkers(img, markerSize = 5)
cv2.imshow('img',img)
cv2.waitKey(0)
遗憾的是,没有检测到标记!你能告诉我如何正确检测标记吗?提前致谢。
编辑:
标记是 5x5 从这个 website 在线生成的,ID:0, 2, 4, 12, 17
使用的相机Asus Xtion Live Pro
.
图片是标记的镜像。
ArUco 标记在镜像时不会被解码。
Prevent/undo 镜像。找到执行此操作的 device/driver 设置。
flipped = cv.flip(img, 1)
围绕 Y-axis 翻转图像。