如何在 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.pyeasy_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”:没有这样的文件或目录有什么想法吗? (顺便说一句) 你修改你的shell PATH 以包含/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

如何使用 xampp 在 OSX 上正确设置 php_gmp

如何在OSX系统上安装Opencv3和Python2.7

如何检查anaconda包是否已正确安装

如何检查安装在 osx 和 centos 上的所有 python 版本