【发布时间】:2018-08-31 11:56:55
【问题描述】:
有人在 python 中使用 Primesense caramine 1.09 和 ArUco 标记检测器吗?我曾尝试为网络摄像头运行 aruco 检测器的命令,它工作正常。但是当我尝试使用 primesense 运行此命令时,我无法检测到标记。我已经通过了单帧。
这是代码
frame = np.load("rgb_primesense.npy")
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
aruco_dict = aruco.Dictionary_get(aruco.DICT_6X6_1000)
parameters = aruco.DetectorParameters_create()
corners, ids, rejectedImgPoints = aruco.detectMarkers(gray, aruco_dict, parameters=parameters)
font = cv2.FONT_HERSHEY_SIMPLEX #font for displaying text (below)
if np.all(ids != None):
rvec, tvec,_ = aruco.estimatePoseSingleMarkers(corners[0], 0.05, mtx, dist)
aruco.drawAxis(frame, mtx, dist, rvec[0], tvec[0], 0.1) #Draw Axis
aruco.drawDetectedMarkers(frame, corners) #Draw A square around the markers
cv2.putText(frame, "Id: " + str(ids), (0,64), font, 1, (0,255,0),2,cv2.LINE_AA)
np.save("rvec", rvec)
np.save("tvec", tvec)
提前致谢。
【问题讨论】:
-
您可以添加检测标记给出的结果的框架吗?我们可能会从那里找到一些东西。
-
您实际上并没有说出了什么问题,只是说您无法检测到标记。 Python是否报告了任何错误?您使用的对象是否正确加载/创建?输入图像“灰色”也会有所帮助。
-
非常感谢。解决了这个问题。实际上问题是关于图像质量。获得“灰色”图像非常糟糕。
-
您可以回答自己的问题并将其作为答案进行检查,以便这里的人可以看到它已解决或他们了解问题所在。美好的一天
标签: python-3.x aruco primesense