Mac 安装 OpenCV 4.1.2

2020/02/08 OpenCV Mac

安装时,主要参考这个教程一步一步来就行:Mac 平台 OpenCV4.1.2 环境搭建。该链接是从零开始安装的,图文并茂,并且还有安装后的测试。不过,该链接更像是这个英文链接的中文翻译:Install OpenCV 4 on macOS

接下来记录一下上面教程中没有提到的几个问题。

有关 virtualenvwrapper 的按照和使用

教程中提到了要安装 virtualenvwrapper,这是一个在 python 中建立独立虚拟环境的工具,很强大。但是如果只为了安装 OpenCV 的话,其实并不是必须的。不过为了保险,还是安装上吧。

安装 virtualenvwrapper 时可能会显示某个路径没有权限

此时,在 sudo 后面增加 -H 参数:

sudo -H pip3 install virtualenv virtualenvwrapper

配置 zshrc 环境时找不到 virtualenvwrapper.sh 的位置

笔者的电脑中,virtualenvwrapper.sh 并不在默认的 /usr/local/bin 路径下。此时,可以通过

sudo find / -name virtualenvwrapper.sh

寻找该文件的路径。笔者的路径是:

/Library/Frameworks/Python.framework/Versions/3.8/bin/virtualenvwrapper.sh

将该路径替换默认路径,添加到你的 ~/.zshrc 配置文件中,教程里面有添加方法。

有关 virtual environment 的建立

可以按照教程推荐的,新命名一个环境名,例如 py3cv4 之类。常见的几个命令:

mkvirtualenv test # 新建一个名为 test 的环境
mkvirtualenv test --python=python3 # 也可以指定环境
lsvirtualenv # 列出全部环境
workon test # 进入该环境
deactivate # 退出环境
rmvirtualenv test # 移除该环境

有关 virtualenvwrapper 的使用可以参考:python环境神器virtualenvwrapper安装与使用

编译 OpenCV 源码时使用的 CMake 命令

cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D OPENCV_EXTRA_MODULES_PATH=~/Downloads/opencv_contrib-4.1.2/modules \
    -D PYTHON3_LIBRARY=`python -c 'import subprocess ; import sys ; s = subprocess.check_output("python-config --configdir", shell=True).decode("utf-8").strip() ; (M, m) = sys.version_info[:2] ; print("{}/libpython{}.{}.dylib".format(s, M, m))'` \
    -D PYTHON3_INCLUDE_DIR=`python -c 'import distutils.sysconfig as s; print(s.get_python_inc())'` \
    -D PYTHON3_EXECUTABLE=$VIRTUAL_ENV/bin/python \
    -D BUILD_opencv_python2=OFF \
    -D BUILD_opencv_python3=ON \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D INSTALL_C_EXAMPLES=OFF \
    -D OPENCV_ENABLE_NONFREE=ON \
    -D BUILD_EXAMPLES=ON ..

里面要注意的是 CMAKE_INSTALL_PREFIX(安装路径)和 OPENCV_EXTRA_MODULES_PATH (你的 OpenCV modules 的解压路径)。

Search

    Table of Contents