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

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


当前回答

我通过运行代码pip install opencv_contrib_python来解决这个问题

其他回答

试试这个吧:

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

如果要在虚拟环境中安装opencv。 在终端中执行命令获取虚拟环境列表。

conda env list

或 Jupyter笔记本命令是

!conda env list

然后更新你的水蟒。

conda update anaconda-navigator
conda update navigator-updater

在您选择的环境路径中安装opencv。

conda install -c ['environment path'] opencv

朱普特笔记本

!conda install --yes --prefix ['environment path'] opencv

这是为那些使用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

我知道你在Occidentalis上有问题,但我在Windows上也有问题,而且我没有发现任何有用的东西。所以如果你有窗口,并且你已经安装了opencv,但是你仍然得到一个导入错误,这个方法可能会解决这个问题。

我设法解决了这个问题,重新激活了水蟒。

首先,我从path中删除了你的\path\to\anaconda3和你的\path\to\anaconda3脚本(你以后会需要这些,所以记住这些路径)

然后如果你从cmd运行python,它会说:

Warning:
This Python interpreter is in a conda environment, but the environment has
not been activated. Libraries may fail to load. To activate this environment
please see https://conda.io/activation.

然后在Anaconda提示符中运行这些:

your\path\to\anconda3\Scripts\activate base 
conda activate --stack your\path\to\anaconda3

我不确定这是否是让水蟒重新活跃起来的最简单的方法,但这对我来说是有效的。

pip install opencv-python

or

pip install opencv-python3 

肯定能正常工作。