适用于Python的PrimeSense Caramine 1.09的ArUco标记

时间:2018-08-31 11:56:56

标签: python-3.x aruco primesense

有人在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)

先谢谢了。

1 个答案:

答案 0 :(得分:1)

问题在于图像质量。

  

灰色= cv2.cvtColor(框架,cv2.COLOR_BGR2GRAY)。