如何在 OSX 上正确安装 Python 以与 OpenCV 一起使用?
Posted
技术标签:
【中文标题】如何在 OSX 上正确安装 Python 以与 OpenCV 一起使用?【英文标题】:How to properly install Python on OSX for use with OpenCV? 【发布时间】:2011-10-31 00:31:29 【问题描述】:过去几天我试图让 opencv 与我的 Python 2.7 安装一起工作。每当我尝试“import cv”时,我一直收到一条错误消息,提示找不到 opencv 模块。
然后我决定尝试使用 Macports 安装 opencv,但没有成功。
接下来,我尝试了 Homebrew,但也没有用。
最后,我发现我应该这样修改 PYTHONPATH: export PYTHONPATH="/usr/local/lib/python2.6/site-packages/:$PYTHONPATH"
我的问题是我没有找到 /usr/local/lib/python2.*...etc 该文件夹根本不存在
所以我的问题是: 如何在 OS X Snow Leopard 上正确安装 Python 以使其与 opencv 一起使用?
非常感谢,
【问题讨论】:
【参考方案1】:您需要使用您的 python2.7 安装来安装模块。将 PYTHONPATH 指向安装在 2.6 下以在 2.7 下运行的东西是一个坏主意。
根据您想要的安装方式,执行python2.7 setup.py
或easy_install-2.7 opencv
之类的操作来安装。
fwiw,在 OS X 上,模块通常安装在 /System/Library/Frameworks/Python.framework/ 下,但您几乎不需要知道安装在站点包中的任何内容的物理位置;如果 Python 在没有帮助的情况下找不到它们,则说明你安装错误。
【讨论】:
我确实尝试将 2.6 更改为 2.7,但它不起作用,因为正如我所说,整个目录不存在。我从官方 Python 网站上提供的 .dmg 图像安装了 python。 嗯,是的。它不会在 /usr/local/lib 中,因为它在 /System/Library/Frameworks/ 中,但不要尝试从系统 python 安装它的位置使用它;用你想要的python再次安装。 在参考了这篇文章的评论后:***.com/questions/5846745/opencv-python-osx 我试过这个: sudo port install python27 然后这个: sudo port select --set python python27 它没有返回任何错误,但现在我我被困在 py27-numpy 上。 Macports 返回此错误:无法打开端口:tar:打开存档时出错:无法打开“/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/python/py27-numpy”:没有这样的文件或目录有什么想法吗? (顺便说一句) 你修改你的shellPATH
以包含/opt/local/bin
这是MacPorts 安装命令的地方吗?请参阅trac.macports.org/wiki/… 对于 numpy 问题,请确保清理端口并更新到最新版本:sudo port clean py27-numpy; sudo port selfupdate; sudo port install py27-numpy
遵循上述指南后,opencv 现在可以工作了(即使没有 numpy)。正如你所说,我会最后一次尝试。谢谢!【参考方案2】:
我自己为此花了几天时间。对我来说,问题是 OpenCV 安装程序没有找到正确的 python 安装。尽管我已经用自制软件升级了 python 并且使用了用于 python 的 virtualenv,但它默认为 MacOS 安装的版本。我在这里收集了我的大部分设置: https://gist.github.com/4150916
使用自制软件获取所有依赖项,然后下载 OpenCV tarball 并自行编译,确保指定所有与 python 相关的配置选项。
假设一个名为 'opencv' 的 virtualenv...
cd OpenCV-2.4.3/
mkdir release
cd release
cmake -D PYTHON_EXECUTABLE=$WORKON_HOME/opencv/bin/python \
-D PYTHON_PACKAGES_PATH=$WORKON_HOME/opencv/lib/python2.7/site-packages \
-D INSTALL_PYTHON_EXAMPLES=ON\
-D PYTHON_INCLUDE_DIR=/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Headers\
-D PYTHON_LIBRARY=/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib\
..
make -j8
make install
【讨论】:
我正在尝试使用 OpenCV-2.4.6 和 Python 2.7.4 并使用 cmake 得到此错误:CMake Error: The source directory "/Users/hdara/src/opencv-2.4.6/release/PYTHON_LIBRARY=/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib.." does not exist.
好的,我找到了问题,只是..
之前缺少一个空格。我添加了一些缺失的空格,但没有注意到这一点。配方似乎缺少空格。【参考方案3】:
使用 Homebrew 安装 OpenCV
brew tap homebrew/homebrew-science
brew install opencv
设置 Python
取决于您的安装位置 - OS X 默认
cd /Library/Python/2.7/site-packages/
或 - 自制 Python
cd /usr/local/lib/python2.7
然后创建符号链接
ln -s /usr/local/Cellar/opencv/2.4.9/lib/python2.7/site-packages/cv.py cv.py
ln -s /usr/local/Cellar/opencv/2.4.9/lib/python2.7/site-packages/cv2.so cv2.so
以上方法来源于blog post。
【讨论】:
仅在完美世界中。默认情况下,在 mac 上安装 opencv 非常活跃。 按照指定的 brew 和 opencv 安装,我取得了很好的效果。您需要链接 python 位。【参考方案4】:我搜索并尝试使用 python3 安装 opencv3 3 天。一些链接建议 Brew 和一些虚拟环境,有人说安装 xcode 但在我的情况下都失败了。 不要使用 linux 步骤在 Mac 上安装 opencv-python。 Mac 的问题是 Mac 已经安装了 Python 2.7。除此之外,安装和链接所有站点包几乎没有问题,我们最终会出错。
我将分享我所做的:在 Mac 上安装完整包 opencv3、numpy、matplotlib、notebook、spyder 等的简单步骤。
安装 anaconda,它会创建一个目录并在其中安装所有内容 使用此链接-> https://www.continuum.io/downloads 下载命令行安装
下载后,转到终端并下载 anaconda 的位置。 $ bash Anaconda3-4.3.0-MacOSX-x86_64.sh
安装程序会要求您将路径附加到 .bash_profile >> 说是
转到主目录,运行 .bash_profile $ source .bash_profile
检查python,应该指向 $哪个蟒蛇 $ /.../anaconda/bin/python
最后一步 $ pip install opencv-pyhton
$蟒蛇
$ 导入 cv2
如果没有错误,我们就可以开始了。
【讨论】:
以上是关于如何在 OSX 上正确安装 Python 以与 OpenCV 一起使用?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 OSX 上通过 Python Tkinter 安装和使用 TkDnD?
如何在 OSX 上安装 python-gtk2、python-webkit 和 python-jswebkit