如何为 python 安装 OpenCV
Posted
技术标签:
【中文标题】如何为 python 安装 OpenCV【英文标题】:How to install OpenCV for python 【发布时间】:2011-03-20 12:36:41 【问题描述】:嗨!我正在尝试安装 opencv 并将其与 python 一起使用,但是当我编译它时,我没有收到任何错误,但我无法从 python 导入 cv 模块:
patrick:release patrick$ python
Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named cv
我用来编译它的代码是这样的:
cd opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON
make
sudo make install
我怎样才能让它与 python 一起工作?
【问题讨论】:
我发布了一个blog post,展示了如何在 Snow Leopard 上安装 OpenCV 2.1。也许你可以看看。 谢谢,但它对我不起作用:( 您是否遇到同样的错误? ***.com/questions/19891790/… 【参考方案1】:你可以试试ctypes-opencv——不知道为什么用-D BUILD_PYTHON_SUPPORT=ON
构建和安装对你不起作用(也许它不知道在osx中安装Python包装器的位置......?),但是ctypes 包装器理论上应该可以正常工作。
【讨论】:
build_python 指令似乎不起作用,因为它没有创建 cv.pyd(它只创建 cv.so)。无论如何,我只是尝试了 ctypes-opencv 并收到此错误:dpaste.com/221536【参考方案2】:我在这里找到了一种为 python 安装 opencv 的方法:http://recursive-design.com/blog/2010/12/14/face-detection-with-osx-and-python/ :)
【讨论】:
它同样适用于 Linux,而不仅仅是 OSX。重要的一步是根据cv.so
的安装位置定义PYTHONPATH环境变量。【参考方案3】:
如果您想在 Windows 中进行简单快速的安装,可以下载Python(x,y)。此发行版包括 OpenCv。请务必在安装设置中指定要安装 OpenCV,因为默认情况下不安装它。
【讨论】:
谢谢,但我目前在 os x 上 :) @insys 我修复了链接。【参考方案4】:brew tap homebrew/science
brew install opencv
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
【讨论】:
我认为当您对您的意图添加一些解释时,这对OP和进一步的访问会更有帮助。【参考方案5】:我们可以使用 home-brew 为 Mac OS X 安装 opencv for Python。
首先,安装自制软件:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
您可以查看有关如何安装自制软件的详细信息。 http://brew.sh
如果不安装Python,安装python(brew会安装python2.7):
brew install python
也许你想安装 Python3:brew install python3
然后为 Python3 安装 opencv3:
brew install opencv3 --with-python3
如果你想为 Python(Python2.7) 安装 opencv3:brew install opencv3 --with-python
或为 Python3 安装 opencv2:brew install opencv --with-python3
或者如果你想为 Python3 安装 opencv2:brew install opencv --with-python3
最后,也许你会将 opencv 的站点包链接到 Python 的站点包。
注意:以下命令中/usr/local/opt/opencv3/lib/python3.5/site-packages
是opencv3的site-packages目录,/usr/local/lib/python3.5/site-packages/
是Python3.5的site-packages目录。
也许您应该将这两个更改为您自己的 OPENCV 和 PYTHON site-packages
目录。
echo /usr/local/opt/opencv3/lib/python3.5/site-packages >> /usr/local/lib/python3.5/site-packages/opencv3.pth
【讨论】:
【参考方案6】:easy_install pip
pip install opencv-python --user
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
也许你会使用sudo
,
而且安装的路径可能没有提到。
【讨论】:
【参考方案7】:这对我有用(将 python36 更改为您想要的任何版本)
sudo port install opencv +avx2 +python36 +qt5 +contrib +eigen
我得到了this error 并且不得不在那里应用补丁 (download link)
应用补丁:
sudo patch /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_opencv/opencv/work/opencv-3.2.0/modules/highgui/src/window_QT.cpp ~/Downloads/patch-cpp11-narrowing-error.diff
然后再次运行sudo port install -N opencv +avx2 +python36 +qt5 +contrib +eigen
【讨论】:
【参考方案8】:使用虚拟环境时
感谢@user495470。请按照以下步骤操作
brew update
brew install -v cmake
brew install opencv`
如果第 1 部分不起作用,请遵循第 2 部分 第 I 部分
下一步可能会在某个时候起作用,尽管它对我不起作用export PYTHONPATH="/VENV_PATH/python2.7/site-packages:$PYTHONPATH"
然后使用 import cv
或 import cv2
签入 python IDE 检查第 2 部分
走这条路
/usr/local/Cellar/opencv/3.4.3/lib/python2.7/site-packages/
或 /usr/local/lib/python2.7/site-packages
复制cv2.so
文件
在此处粘贴/VENV_PATH/lib/python2.7/site-packages
然后使用 import cv
或 import cv2
签入 python IDE 检查如果这件事有效,请告诉我。
【讨论】:
以上是关于如何为 python 安装 OpenCV的主要内容,如果未能解决你的问题,请参考以下文章