2

我正在尝试使用 w10、python 3.6、opencv2 查找 aruco 标记。

我可以检测到标记但在这一步失败

rvec, tvec = aruco.estimatePoseSingleMarkers(corners, markerLength, camera_matrix, dist_coeffs) # For a single marker

我得到这个python异常:

ValueError: too many values to unpack (expected 2)

在结果列表中省略 tvec 不会引发错误,但我没有翻译信息。

4

2 回答 2

4

我有同样的问题,似乎有 3 个数组需要解包,所以试试这个

rvec, tvec, _ = aruco.estimatePoseSingleMarkers(corners, markerLength, camera_matrix, dist_coeffs)

不确定第三个数组是关于什么的。

于 2017-10-13T01:25:26.847 回答
0

仅使用一个变量来获取 aruco.estimatePoseSingleMarkers 返回的内容。然后只取前两个值,如下面的代码。

ret = aruco.estimatePoseSingleMarkers(corners,marker_size,cameraMatrix=cameraMatrix,distCoeffs=cameraDistortion)
(rvec, tvec) = (ret[0][0, 0, :], ret[1][0, 0, :])
于 2020-11-08T18:33:29.667 回答