找不到findposition:AttributeError:'HandDetector'对象没有属性'findPosition'

问题描述 投票:0回答:2

版本('cvzone')=1.5.0 代码如下:

while True:
    success, img = cap.read()
    img= detector.findHands(img)
    lmlist,_=detector.findPosition(img)

    cv2.imshow("Image", img)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
cap.release()
cv2.destroyAllWindows()
python attributeerror mediapipe cvzone
2个回答
2
投票

我最近使用 cvzone 做了很多项目,并注意到他们最近更新了库,对其指南进行了重要更新。

问题: cvzone 已于 2021 年 8 月 31 日使用 HandTrackingModule 更新了他们的库(您可以在此处观看提交),并自版本 1.5.0 以来删除了 findPosition 函数。

解决方案: 将 cvzone 软件包版本从 1.5.0 降级到 1.4.1,它应该可以工作。

以 Pycharm 为例:

  1. 打开您的项目。
  2. 转到 PyCharm 菜单并打开“首选项”选项卡。
  3. 搜索项目:“您的项目名称”选项卡并打开它。
  4. 单击“Python 解释器”选项卡
  5. 双击列表中的 cvzone 库。
  6. 单击“指定版本”框,将其更改为 1.4.1,然后单击“安装包”。

祝你好运!


0
投票

从 cvzone.HandTrackingModule 导入 HandDetector

在导入/调用库时放置此行。然后检查它是否有效。这对我有用

© www.soinside.com 2019 - 2024. All rights reserved.