CV预备(三): Ubuntu18.04和macOS下OpenCV3.X环境搭建

CV预备(一): conv2, filter2, imfilter的差别
CV预备(二): im2col与col2im

目录

  • 前言
  • 安装
  • 测试
  • macOS安装OpenCV3.X
  • 最后

前言

为什么在OpenCV4.X出了n多个版本的时候, 我要来搭建3.X, 无他, 就是我目前的一些工程要调用的库需要3.X. 顺带, 在mac上也安装一下.


安装

首先如果是我, 会用ssh访问Ubuntu, 所以要先安装下ssh.

sudo apt install net-tools
sudo apt-get install openssh-server

然后补一些必要的库:

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

你可能会遇到依赖问题, 你可以这样解决:

sudo apt-get install aptitude
sudo aptitude  install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

用wget下载OpenCV3.X, 这里是3.4.7

sudo apt-get install wget
wget https://github.com/opencv/opencv/archive/3.4.7.zip
image

之后解压这个zip包, 进入解压目录, 新建build文件夹

mkdir ./cv ; unzip -d ./cv 3.4.7.zip ; cd cv/opencv-3.4.7 ; mkdir build ; cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python3 -D BUILD_opencv_python3=ON -D BUILD_opencv_python2=OFF ..

cmake这里需要说一下, /usr/local是安装路径, 可以修改. 然后, 后面一大串的目的就是编译的时候, python默认用python3.

然后开始编译和安装.

但是你可能会被一个叫ippicv的东西卡主, 可以到这里下载, 然后修改opencv目录下的/3rdparty/ippicv/ippicv.cmake, 把http那段改成下载文件的目录, 最好写绝对路径.

#"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/"
"file:/home/sean/Desktop/"

然后继续编译吧.

sudo make -j2
sudo make install
image

image

之后如果你用python, 你需要用pip3下载opencv-python, 如果你是C++, 就可以跳过.

sudo apt install python3-pip
pip3 install opencv-python

运行python3, 输入import cv2, 无错误就是成功.


测试

官方提供了一个打开摄像头的测试用例, 进入如图目录, 编译运行.

cmake .
make
./opencv_example
image

或者, 你可以用g++嘛. 注意不是单引号', 是波浪线下面那个点`.

g++ example.cpp `pkg-config opencv --libs --cflags opencv`
image

当然, 可以用自己的案例. 比如这里, 我用了一个Ransac算法, 新建build目录, 然后编译运行, 也完全ok.

image

macOS安装OpenCV3.X

mac上安装比较简单, 主要还是依靠homebrew. 首先用homebrew看下版本:

brew search opencv
image

这里我们要装的是opencv@3

brew install opencv@3

但是homebrew需要先按照java8, 所以你可以手动下载安装. 或者用指令brew cask install adoptopenjdk/openjdk/adoptopenjdk8, 手动可以用迅雷, 你懂我意思吧.

下载完成之后, 你需要把动态库进行链接.
比方说, 我已经进入我用virtualenv构建的虚拟环境env1的/lib/python3.7/site-packages, 使用如下链接指令, 就可以把.so文件链接到当前环境目录下.

ln -s /usr/local/Cellar/opencv@3/3.4.5_6/lib/python3.7/site-packages/cv2/python-3.7/cv2.cpython-37m-darwin.so cv2.so

链接成功之后, 可以用ll查看:

image

然后可以进入python环境进行测试, 可以成功导入并查看版本号就是链接成功.

image

最后

喜欢记得点赞或者关注我哦, 有意见或者建议评论区见~

你可能感兴趣的:(CV预备(三): Ubuntu18.04和macOS下OpenCV3.X环境搭建)