cv2 (cv2.cv2) 中未解析的引用 "cv2"
Unresolved reference "cv2" inside cv2 (cv2.cv2)
我环顾四周,人们似乎遇到了类似的问题,但 none 准确地描述了我的情况,适用于他们的解决方案似乎对我不起作用(或者没有答案根本没有问题)。
使用 pycharm,在安装 opencv-python
和 opencv-contrib-python
之后,我注意到 import cv2
有效,但是当我尝试访问 cv2.imread()
pycharm 抱怨找不到
所以我去了 cv2 初始化文件,它看起来像这样:
import importlib
from .cv2 import *
from .data import *
# wildcard import above does not import "private" variables like __version__
# this makes them available
globals().update(importlib.import_module('cv2.cv2').__dict__)
Pycharm 在 from .cv2 import *
行检测到未解决的引用,我想同样的问题发生在最后一行 - 我尝试在 python 控制台中执行以下操作:
import cv2
print(__version__)
但是我得到了一个 NameError,这似乎证实了我的怀疑。
如我所写,我已尝试安装 opencv-contrib-python
,但似乎没有任何效果,坦率地说,我已经没有主意了。
备注:
- 我在 Windows 10 x64。
- 我正在使用 Python 3.6 x64。
- 我在我的 Pycharm 项目上设置了一个虚拟环境。
我发现问题出在 cv2 的 __init__.py
导入所有内容的方式,即 globals().update()
行。
实际上,一切正常,但由于 Pycharm 没有索引那种调用,它没有检测到名称空间是否被正确导入。因此,解决方案是忽略 "error" 并且不使用自动完成。
你有没有通过终端安装opencv?
比如像这样。
$ pip install opencv-python
$ pip install opencv-contrib-python
我也遇到了同样的问题。
如果你使用pycharm,你应该通过pycharm安装opencv。
File
-> Settings...
-> Project interpreter
-> +
我不是专家,但以下行对我有用:
import cv2.cv2 as cv2
之后似乎一切正常。自动补全也回来了
我遇到了同样的问题。您需要尝试几件事。
- 您只需导入 cv2 而不是 cv2.cv2。只需写 "import cv2"
- 如果之前安装过cv等其他库,请先卸载。
- 我们需要安装的库是opencv-python
- 您需要通过 IDE 安装它,而不是使用终端。步骤如下:
文件 -> 设置 -> (点击你的项目) -> 项目解释器 -> + - > (类型 opencv-python) -> 下载并安装它 -> 它现在应该可以工作了。
我环顾四周,人们似乎遇到了类似的问题,但 none 准确地描述了我的情况,适用于他们的解决方案似乎对我不起作用(或者没有答案根本没有问题)。
使用 pycharm,在安装 opencv-python
和 opencv-contrib-python
之后,我注意到 import cv2
有效,但是当我尝试访问 cv2.imread()
pycharm 抱怨找不到
所以我去了 cv2 初始化文件,它看起来像这样:
import importlib
from .cv2 import *
from .data import *
# wildcard import above does not import "private" variables like __version__
# this makes them available
globals().update(importlib.import_module('cv2.cv2').__dict__)
Pycharm 在 from .cv2 import *
行检测到未解决的引用,我想同样的问题发生在最后一行 - 我尝试在 python 控制台中执行以下操作:
import cv2
print(__version__)
但是我得到了一个 NameError,这似乎证实了我的怀疑。
如我所写,我已尝试安装 opencv-contrib-python
,但似乎没有任何效果,坦率地说,我已经没有主意了。
备注: - 我在 Windows 10 x64。 - 我正在使用 Python 3.6 x64。 - 我在我的 Pycharm 项目上设置了一个虚拟环境。
我发现问题出在 cv2 的 __init__.py
导入所有内容的方式,即 globals().update()
行。
实际上,一切正常,但由于 Pycharm 没有索引那种调用,它没有检测到名称空间是否被正确导入。因此,解决方案是忽略 "error" 并且不使用自动完成。
你有没有通过终端安装opencv?
比如像这样。
$ pip install opencv-python
$ pip install opencv-contrib-python
我也遇到了同样的问题。
如果你使用pycharm,你应该通过pycharm安装opencv。
File
-> Settings...
-> Project interpreter
-> +
我不是专家,但以下行对我有用:
import cv2.cv2 as cv2
之后似乎一切正常。自动补全也回来了
我遇到了同样的问题。您需要尝试几件事。
- 您只需导入 cv2 而不是 cv2.cv2。只需写 "import cv2"
- 如果之前安装过cv等其他库,请先卸载。
- 我们需要安装的库是opencv-python
- 您需要通过 IDE 安装它,而不是使用终端。步骤如下: 文件 -> 设置 -> (点击你的项目) -> 项目解释器 -> + - > (类型 opencv-python) -> 下载并安装它 -> 它现在应该可以工作了。