Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows中OpenCV Python的自动完成不工作_Python_Opencv_Autocomplete_Sublimetext2_Pycharm - Fatal编程技术网

Windows中OpenCV Python的自动完成不工作

Windows中OpenCV Python的自动完成不工作,python,opencv,autocomplete,sublimetext2,pycharm,Python,Opencv,Autocomplete,Sublimetext2,Pycharm,我无法在Windows上使用OpenCV(Python)实现自动完成 根据阿比德的指示,我将cv2.pyd文件粘贴到C:\Python27\Lib\site包中 在Python代码中,我导入如下内容: import cv2.cv as cv 我还安装了numpy,它在站点包中创建了自己的文件夹,而不像OpenCV(我直接粘贴到站点包中) 使用此设置,即使在调用OpenCV方法时,代码也不会出现任何问题 但我一直无法让自动完成工作。我试着让它在Sublime Text 2(使用Sublimito

我无法在Windows上使用OpenCV(Python)实现自动完成

根据阿比德的指示,我将cv2.pyd文件粘贴到C:\Python27\Lib\site包中

在Python代码中,我导入如下内容:

import cv2.cv as cv
我还安装了numpy,它在站点包中创建了自己的文件夹,而不像OpenCV(我直接粘贴到站点包中)

使用此设置,即使在调用OpenCV方法时,代码也不会出现任何问题

但我一直无法让自动完成工作。我试着让它在Sublime Text 2(使用SublimitoDeintel)和PyCharm上工作。在这两个IDE中,autocomplete可用于numpy导入,但无法用于OpenCV导入

我使用的是OpenCV 2.4.6和Python 2.7(32位)


任何可能的解决方案?

它不起作用的原因是因为您使用的是
.pyd
文件,该文件是。自动完成的工作原理是读取源
.py
文件,这些文件是纯文本。尝试从Christoph Gohlke的存储库中安装“英特尔数学内核库”和“英特尔数学内核库”优化包,该存储库经常更新,对于在Windows上进行任何科学Python计算的人来说都是必须使用的资源。确保首先从
网站包中删除
cv2.pyd
numpy
目录。这些新软件包将以Sublime文本安装autocomplete引擎所需的
.py
源文件


编辑

好的,所以我写了上面的内容,因为它对其他一些软件包都很有效。我是一个Python3的人,我从未从Gohlke安装过OpenCV,因为它只有Python2绑定。在阅读了下面的@CrazyCoder之后,我启动了Win7,事实上他是绝对正确的(我以前应该意识到这一点)——因为OpenCV是用C/C++编写的,Gohlke包中唯一包含的
.py
文件是
cv.py
,其全部内容如下:

import cv2.cv as cv
从cv2.cv导入*

其余部分包含在
cv2.pyd
和一堆
.dll
s中。来自的完整OpenCV Windows发行版是291 MB的下载,可扩展到3 GB,其中的少数
.py
文件涉及到构建OpenCV,对于自动完成目的没有任何好处。所以,不幸的是,我不知道你的问题目前是否有解决办法。只要随身携带,也许可以从2013年4月出版的Packt/O'Reilly上查看。祝你好运

在windows上构建自定义版本的OpenCV时,我遇到了与PyCharm相同的问题。以下是我所做的修复:

OpenCV在Python
站点包中创建了一个文件夹,如下所示:

因此,您需要做的就是将
python-3.9
文件夹添加到解释器中

  • 文件
  • 设置
  • Python解释器
  • 解释器旁边的三点图标->全部显示
  • 选择您的解释器并单击“显示所选解释器的路径”图标
  • 在cv2站点包中添加文件夹

现在正常导入cv2模块。

PyCharm不支持是因为.Ah。已知问题FTW。但如果我只是在PyCharm中说import cv2,它确实会显示库中的一些自动完成项。当然,这不会正确执行。但是,考虑到.pyd文件类似于.dll,那么自动完成是如何显示的呢?它不会有帮助,至少对PyCharm没有帮助。链接中的二进制OpenCV安装程序没有安装任何源代码。麻烦。你说得对,出于某种原因,OpenCV包只是二进制文件,但NumPy包括源代码和二进制文件。我想这是因为OpenCV的大部分(如果不是全部的话)是用C/C++编写的,而NumPy的大部分是Python,尽管它确实有一些C和Fortran中的函数。让我看看我是否能找到一个解决办法…糟糕透了。谢谢你花了这么大的力气来找出这是否可行。