【问题标题】:How can i resolve this OpenCV problem ("CharucoBoard_create" )?我该如何解决这个 OpenCV 问题(\"CharucoBoard_create\")?
【发布时间】:2023-01-12 05:31:45
【问题描述】:

我已经安装了 opencv-python-4.7.0.68 和 opencv-contrib-python-4.7.0.68

下面的代码给我以下错误:
AttributeError: module 'cv2.aruco' has no attribute 'CharucoBoard_create'

示例代码:

import cv2

aruco_dict = cv2.aruco.getPredefinedDictionary(cv2.aruco.DICT_4X4_50)
board = cv2.aruco.CharucoBoard_create(11, 8, 0.015, 0.011, aruco_dict)

【问题讨论】:

  • 您引用的错误消息getCharucoBoard_create - 您的示例代码CharucoBoard_create。哪一个?提供完整的错误消息将有助于我们为您提供帮助。
  • 请阐明您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
  • 对不起,我编辑了。

标签: python opencv


【解决方案1】:

这是由于在版本 4.7.0 中发生的 change,当时 Aruco 代码从 contrib 移至主存储库。

构造函数 cv2.aruco.CharucoBoard_create 已重命名为 cv2.aruco.CharucoBoard 并且其参数列表略有变化——而不是前两个整数参数 squaresXsquaresY,您应该传入一个具有两个值的元组,代表大小. (注意:documentation 似乎缺少 Python 构造函数的签名。Bug report 已归档。)

所以,你的代码应该是这样的:

import cv2

aruco_dict = cv2.aruco.getPredefinedDictionary(cv2.aruco.DICT_4X4_50)
board = cv2.aruco.CharucoBoard((11, 8), 0.015, 0.011, aruco_dict)

【讨论】:

    猜你喜欢
    • 2020-03-25
    • 2020-02-14
    • 2021-10-23
    • 1970-01-01
    • 2021-07-31
    • 2020-12-28
    相关资源
    最近更新 更多