python - AttributeError:部分初始化的模块“cv2”没有属性“CascadeClassifier”(很可能是由于循环导入)
问题描述
多年来,我一直在兜圈子,试图弄清楚这一点。为什么我会收到此属性错误?我试过使用绝对引用,并得到同样的问题。PyCharm 还强调 CascadeClassifier、cvtColor 和 COLOR_BGR2GRAY 说它在 cv2.py 中找不到参考。我不确定是否有更多信息与解决此问题相关,因此请询问是否需要更多信息。
import cv2
face_cascade = cv2.CascadeClassifier('read_only/haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('read_only/haarcascade_eye.xml')
grayed_images = []
for x in np_images:
gray_img = cv2.cvtColor(x, cv2.COLOR_BGR2GRAY)
grayed_images.append(gray_img)
print(x)
解决方案
如果我是正确的,那么您使用的环境与您运行的环境不同。
Step1:
opencv-python
在您运行时看到的命令行/终端中pip list
:
运行python
命令。复制您的代码,检查它是否有效(您可以简单地import cv2
替代)
如果可行,我的想法应该是正确的。否则,还有更大的事情。
Step 2:
(假设 step1 有效。)在 Pycharm 的 UnderRun > Edit Configurations
中,更改python interpreter
为您拥有的任何解释器opencv
。
Step2 better alternative:
在 Pycharm 上,打开terminal
, pip install opencv-python
. 之后你应该有opencv。
推荐阅读
- ios - 如何在浏览器和我的应用程序之间共享数据
- python - 以下哪一项是访问类中变量的最佳实践?
- python - 如何在 Python 2.7 中加速这个 Mersenne Prime py
- reactjs - 如何测试酶,反应虚拟化,材料UI?
- android - 使用意图不打开应用程序的 Android 深层链接
- excel - VBA 将 Excel 工作表作为 PDF 和 Excel 文件发送
- android - 按钮单击时带有声音的两个片段之间的过渡
- r - R Plotly - 绘制多条回归线
- webmethods - webmethods 是 pub.client http 不遵循 http 客户端标准吗?
- java - Java从url解析xml文档