我已经在树莓派的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的文件夹,以防相关。

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


当前回答

这是为那些使用ubuntu运行script.py的人准备的 你必须复制cv2。在你的pythonpachages目录下,然后是resourcing你的bachrc。 在这里:

sudo cp -rfv /home/<user>/<your opencv file dir>/lib/cv2.so  /usr/local/lib/python2.7/site-packages/
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH

其他回答

Easy

python -m pip install --upgrade pip

Then

pip install opencv-python

上面的答案对我都没用。我快疯了,直到我发现下面这个解决方案!

简单地运行:

sudo apt install python-opencv

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

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

试试这个吧:

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

当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目录。如果您不想向代码中添加任何东西,这是一种变通方法。