我已经在树莓派的Occidentalis操作系统(Raspbian的变体)上安装了OpenCV,使用的脚本是jayrambhia编写的。它安装了2.4.5版本。

当我尝试在Python程序中导入cv2时,我得到了以下消息:

pi@raspberrypi~$ python cam.py
Traceback (most recent call last)
File "cam.py", line 1, in <module>
    import cv2
ImportError: No module named cv2

文件cv2。因此存储在/usr/local/lib/python2.7/site-packages/…

在/usr/local/lib中还有称为python3.2和python2.6的文件夹,以防相关。

我该如何解决这个问题?这是由路径配置错误引起的吗?


当前回答

创建一个虚拟环境,然后在其中安装open-cv。 这对我很管用。而且,创建虚拟环境是最佳实践。 创建虚拟环境:

python3 -m venv env

激活虚拟环境 Linux:

source env/bin/activate

现在安装OpenCV和其他模块。

pip3 install opencv-python

以上将适用于linux。 类似地,您可以为windows创建虚拟环境,然后安装opencv 更多关于虚拟环境:

https://docs.python.org/3/library/venv.html https://www.geeksforgeeks.org/creating-python-virtual-environment-windows-linux/

其他回答

pip install opencv-python

or

pip install opencv-python3 

肯定能正常工作。

试试这个吧:

sudo ldconfig

sudo nano /etc/ld.so.conf.d/opencv.conf

在opencv.conf文件中添加这一行,而不是在命令窗口中

/usr/local/lib

然后:

sudo ldconfig

sudo nano /etc/bash.bashrc

并在bash中添加这两行。命令窗口中没有Bashrc

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig       
export PKG_CONFIG_PATH

最后重启你的Pi sudo重启现在

然后导入cv2

我在安装cv2时遇到过同样的问题

pip install cv2

然而,当我导入cv2模块时,它显示没有名为cv2的模块错误。 然后我找到了cv2。Pyd文件在我的电脑上,我复制并粘贴到site-packages目录

C:\Python27\Lib\site-packages

然后我关闭并重新打开现有的应用程序,它工作。

编辑 我将告诉如何正确安装cv2。

1. 首先在你的电脑上安装numpy

pip install numpy

2. 从互联网下载opencv(大约266 mb)。 我下载了python 2.7的opencv-2.4.12.exe。然后安装这个opencv-2.4.12.exe文件。 我解压缩到C:\Users\harun\Downloads到这个文件夹。 安装后,在文件夹中查找cv2.py。对我来说

C:\Users\harun\Downloads\opencv\build\python\2.7\x64

在这个文件夹中取thecv2。并将其复制到

C:\Python27\Lib\site-packages

现在你可以在你的python脚本中使用cv2。

当python无法引用您的默认site-packages文件夹时,就会发生这种情况,该文件夹中保存了所需的python文件或库

在代码中添加这些行:

import sys

sys.path.append('/usr/local/lib/python2.7/site-packages')

或者在bash中运行python命令之前,移动到/usr/local/lib/python2.7/site-packages目录。如果您不想向代码中添加任何东西,这是一种变通方法。

尝试在~/.bashrc中添加以下行

export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH