Ubuntu下为Anaconda虚拟环境编译OpenCV

今天重新编译OpenCV搞了很久,看了很多博客,发现针对虚拟环境编译OpenCV的资料虽然有,但是我都失败了。Google之后,找到了一篇比较详细的,并且我按照作者的方法,编译通过了。因此在这里做一个记录。
由于原文访问容易失败,这里直接copy原文。原文的链接在这里,能看的建议直接看原文。
Install OpenCV 4.0.1 from Source on MacOS with Anaconda Python 3.7 to Use SIFT and SURF
Installing OpenCV for Conda Virtual Environments

重点: 整个安装过程的重点在于 install.sh 脚本中 PYTHON3_* 相关的几个配置参数的值的设置。

安装过程:

  1. 依赖库安装:参考OpenCV官方 Required Packages
  2. 创建虚拟环境并激活:
conda create --name cv python=3.7.2 numpy=1.16.2 # NEED NumPy
conda activate cv # or source activate cv
  1. 下载opencv和contrib模块(如果需要)的源码,解压后将contrib模块放到opencv文件夹下
  2. 在opencv解压文件夹下创建build文件夹,在build文件夹中新建instal.sh脚本文件,文件内容如下(根据需要修改 CONDA_HOME变量的值,和OPENCV_EXTRA_MODULES_PATH选项的值以及其他配置参数):
#!/bin/bash

export CONDA_HOME=<your anaconda folder> 
export CPLUS_INCLUDE_PATH=$CONDA_HOME/envs/cv/lib/python3.7
cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D OPENCV_EXTRA_MODULES_PATH=<contrib_path/modules> \
    -D PYTHON3_LIBRARY=$CONDA_HOME/envs/cv/lib/libpython3.7m.so \
    -D PYTHON3_INCLUDE_DIR=$CONDA_HOME/envs/cv/include/python3.7m \
    -D PYTHON3_EXECUTABLE=$CONDA_HOME/envs/cv/bin/python \
    -D PYTHON3_PACKAGES_PATH=$CONDA_HOME/envs/cv/lib/python3.7/site-packages \
    -D BUILD_opencv_python2=OFF \
    -D BUILD_opencv_python3=ON \
    -D INSTALL_PYTHON_EXAMPLES=OFF \
    -D INSTALL_C_EXAMPLES=OFF \
    -D OPENCV_ENABLE_NONFREE=ON \
    -D WITH_OPENMP=ON \
    -D BUILD_EXAMPLES=OFF .. 
  1. 打开终端,进入build文件夹,运行 sh ./install.sh
  2. 编译 make -j8j8 表示使用8个核,根据自己电脑配置修改
  3. 安装 make install,根据安装路径,可能需要使用 sudo
  4. 测试:
conda activate cv
python -c "import cv2; print(cv2.__version__)"

至此,安装完成。

你可能感兴趣的:(OpenCV)