我在虚拟环境中尝试了一切,但一次又一次“没有名为opencv的模块”。我检查了网站包文件夹,发现没有cv2文件夹,就像我找到了numpy,pip文件夹;但是有一个名为的文件夹:
cv2-1.0-py2.7.egg-info
现在该怎么办? Open CV 3.0与python 3.5.1不兼容,而这个问题一次又一次地阻碍了我对python 2.7。请帮忙!!
P.S。之前答案中提到的解决方案都没有奏效:/
答案 0 :(得分:2)
将OpenCV安装到虚拟环境时,我还发现cv2.so
丢失了。修复方法是手动复制它:cp /home/user/opencv/lib/cv2.so /home/user/venv/lib/python2.7/site-packages/cv2.so
。
因此,为了完整起见,以下内容对我有用:
git clone https://github.com/Itseez/opencv
cd /home/user/opencv
mkdir release && cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D WITH_QT=ON \
-D WITH_OPENMP=ON \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/home/user/venv/local \
-D PYTHON2_PACKAGES_PATH=/home/user/venv/local/lib/python2.7/site-packages \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_EXAMPLES=ON ..
make
make install
cp /home/user/opencv/lib/cv2.so /home/user/venv/lib/python2.7/site-packages/cv2.so
答案 1 :(得分:1)
亲眼看看:https://pypi.python.org/pypi/cv2/1.0
...所以删除它:
rm -rf /usr/local/lib/python2.7/dist-packages/cv2-1.0*
如果您正在尝试import cv2
,那么您当然需要opencv python模块。
在ubuntu上,pip无法提供 - 您需要安装系统包:
apt-get install python-opencv
如果你正在使用virtualenv,那么你需要手动将opencv符号链接到你的virtualenv中。
cd venv/lib/python2.7 && ln -s /usr/local/lib/python2.7/dist-packages/cv2.so
cd venv/lib/python2.7 && ln -s /usr/local/lib/python2.7/dist-packages/cv.py
这不太可能,但有时候pip会遇到依赖于cv2
的包。如果没有操作,这个(或运行pip install cv2
- 不推荐!)将从pypi安装冒名顶替cv2-1.0
包。要安抚pip,请创建一个元数据文件,描述系统的cv2安装到pip:
#/usr/local/lib/python2.7/dist-packages/cv2-2.4.8.egg-info
Metadata-Version: 1.2
Name: cv2
Version: 2.4.8
文件名和文件中的版本号应与apt-cache show python-opencv
中的主要版本匹配。
如果您从源代码构建opencv debian软件包,那么您最终会得到opencv-python
,其中描述的依赖项较少(特别是它缺少opencv-libs
),而且我不知道&{ #39;使用它。也许有人可以告诉我们为什么所有这一切都是如此混乱。
答案 2 :(得分:1)
在静脉内尝试一下。会起作用
pip安装opencv-python
答案 3 :(得分:0)
在使用pip的virtualenv中OSX上的opencv安装上,我一直被困在“没有名为opencv的模块”的消息上。
对我的设置有效的两个解决方法是:
1 - 绕过virtualenv结构并直接在python代码中添加opencv的syspath(不是优雅的方式)
import sys
sys.path.append('/usr/local/lib/python3.4/site-packages')
或
2 - 使用conda代替pip进行opencv安装
conda install -c https://conda.binstar.org/menpo opencv
答案 4 :(得分:0)
对我有用的解决方案是使用pip安装cv2wrap包:
aws configure
答案 5 :(得分:0)
它为我工作(在您的虚拟环境中):
brew install opencv
答案 6 :(得分:-1)
如果您使用的是MacOS,下面详细说明并从here获取的说明可以提供帮助(感谢Daniel Shiffman和David Haylock!)。如果链接死亡,this是备用位置。 brentiumbrent 的帖子解释了为什么发生安装错误但是用Linux编写,因此如果您使用的是MacOS,则无法使用apt-get命令。 casper 的帖子触及了CMAKE的使用,但是如果您之前没有安装它和/或从未使用它,那么在终端中运行它时可能会出错...
无论如何,我只是从第一个网站复制了HTML。点击“运行snippit”,你就可以得到一个不错的版本。单击上面的其中一个链接以获取所有相同的信息,但格式更好。它提供了所有相同的信息,但格式更好(我只是复制了HTML)。
在说明的最后,它没有明确说明,但您需要按照 casper的引导,并将...opencv/SharedLibs/lib/cv2.so
文件复制到您的python包目录:{ {1}}。根据找到的建议here,我从SharedLibs文件夹而不是StaticLibs文件夹安装了cv2.so文件,并且它工作正常。
...lib/python2.7/site-packages/