module 'cv2' has no attribute 'legacy'
时间: 2023-09-23 22:10:13 浏览: 63
这个错误通常是由于安装的 OpenCV 版本过新导致的。在 OpenCV 4.0 以后的版本中,`cv2.legacy` 模块已被移除,如果你的代码中使用了该模块,就会报出这个错误。
解决方法是卸载当前版本的 OpenCV,然后安装一个较旧的版本,例如 OpenCV 3.4.14。你可以使用以下命令安装:
```
pip install opencv-python==3.4.14.0
```
如果你已经安装了多个版本的 OpenCV,可以使用以下命令来查看所有已安装的版本:
```
pip list | grep opencv
```
然后使用以下命令卸载指定版本:
```
pip uninstall opencv-python==<version>
```
替换 `<version>` 为要卸载的版本号。
相关问题
module 'cv2.cv2' has no attribute 'legacy'
回答: 如果你在使用OpenCV时遇到了"module 'cv2.cv2' has no attribute 'legacy'"的错误,这可能是因为你的OpenCV版本过高。建议你回退到低于4.5的版本,例如使用4.4版本。在回退版本后,你可以尝试删除代码中的"legacy"部分,然后重新执行代码。这样应该可以解决这个问题。\[1\]
#### 引用[.reference_title]
- *1* [在目标跟踪时出现AttributeError: module ‘cv2‘ has no attribute ‘legacy‘的问题解决方法](https://blog.csdn.net/KD_NO_1/article/details/124596809)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
AttributeError: module 'cv2' has no attribute 'legacy'
这个错误通常是由于OpenCV版本的问题导致的。在较新的OpenCV版本中,`cv2.legacy`模块已被移除。
解决方法之一是降低OpenCV的版本。你可以尝试执行以下命令来安装旧版本的OpenCV:
```
pip install opencv-python==3.4.2.16
```
如果你已经安装了较新版本的OpenCV,可以尝试卸载它,然后再安装旧版本:
```
pip uninstall opencv-python
pip install opencv-python==3.4.2.16
```
另一种解决方法是更新你的代码以适应新版本的OpenCV。你可以查看OpenCV文档或迁移指南,了解如何使用新的OpenCV API。
请注意,这只是一种可能的解决方法之一,具体取决于你的情况和使用的代码。如果问题仍然存在,请提供更多细节,以便我能够提供更准确的帮助。