在Windows 7上为Python 2.7安装OpenCV

31

我正在努力让OpenCV在Windows 7上运行。我下载并安装了它,但它没有起作用,我遇到了

ImportError: No module named opencv 

我尝试运行一个示例,但在谷歌搜索我的问题时只得到了一些无用的随机解决方案。有没有人能够指导我如何安装它,或者知道哪里可以获得适合编程新手的清晰安装指南。

8个回答

44
自OpenCV 2.2.0起,Python绑定的包名为"cv"。旧的绑定名"opencv"已不再维护。您可能需要调整您的代码。请参见http://opencv.willowgarage.com/wiki/PythonInterface
官方OpenCV安装程序不会将Python绑定安装到您的Python目录中。在您的OpenCV 2.2.0安装目录下应该有一个Python2.7目录。将整个Lib文件夹从OpenCV\Python2.7\复制到C:\Python27\并确保您的OpenCV\bin目录在Windows DLL搜索路径中。
或者使用在http://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv上提供的opencv-python安装程序。

41

我在这里发布了一个非常简单的方法,可以在Windows上安装Python的OpenCV 2.4, 链接如下:在Windows上为Python安装OpenCV

只需复制和粘贴即可。希望对未来的观众有所帮助。

  1. 从官方网站下载Python、Numpy和OpenCV。

  2. 提取OpenCV(将提取到一个名为opencv的文件夹)

  3. 复制..\opencv\build\python\x86\2.7\cv2.pyd

  4. 将其粘贴到 C:\Python27\Lib\site-packages 中

  5. 打开Python IDLE或终端,然后键入:

    >>> import cv2
    

如果没有显示错误,那就没问题了。

更新(感谢dana提供的信息):

如果你正在使用VideoCapture功能,则还必须将opencv_ffmpeg.dll复制到你的路径中。参见:https://dev59.com/7mgt5IYBdhLWcg3w8h01#11703998


1
对于那些怀疑的人,cgohlke链接是一个更小的下载,因为似乎只需要cv2.pyd文件(整个opencv压缩后为200MB,未压缩则为2.2GB...) - heltonbiker
1
@heltonbiker,cgohlke的库只包含pyd文件,如果您只需要访问OpenCV函数,则可以正常工作。然而,所有其他资源(例如haarcascade_frontalface_alt.xml)都没有被包含在内。因此,您将无法直接使用文档中的许多示例。 - Wang
2
这个很好用!如果你正在使用VideoCapture功能,你也必须将opencv_ffmpeg.dll复制到你的路径中。参见:https://dev59.com/7mgt5IYBdhLWcg3w8h01 - dana
@dana:谢谢您的信息,我不知道这些。希望您不介意更新我的回答以包括您的评论。这对于未来的访问者可能是有用的 :) - Abid Rahman K
没有,对我没用。无论是PyCharm还是IDLE都无法识别它,CMD也不行。我要切换回Linux,因为Windows对OpenCV的支持已经失效了。 - Arunav Sanyal
显示剩余10条评论

5

请通过重新表述而非复制粘贴的方式,添加足够的相关信息到你的链接中,使其在链接失效时仍然有用。 - Kevin

1

1

打开命令提示符并运行以下命令(假设使用的是 Python 2.7):

cd c:\Python27\scripts\
pip install opencv-python

对于我来说,上述内容适用于Windows 10 64位操作系统上的Python 2.7。


1

0

在Windows 7上为Python 2.7安装OpenCV


这并没有提供问题的答案。如果您想对作者进行批评或请求澄清,请在他们的帖子下留言 - 您始终可以在自己的帖子上发表评论,并且一旦您拥有足够的声望,您将能够在任何帖子上发表评论。 - Kmeixner
答案是一个声明,通过评论提供的链接不可信(可能是安全文件,但除非您知道发布者,否则永远不要点击这些链接)。 - Angry 84

0
有一件事需要提到。您必须使用x86版本的Python 2.7。OpenCV不支持Python x64。我在这个问题上纠结了一会儿,直到我找出来为止。
话虽如此,请按照Abid Rahman K的答案中的步骤进行操作。正如Antimony所说,您需要执行“from cv2 import cv”。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接