本篇博客旨在帮助零基础的"计算机视觉"学习者搭建一个基于python3的opencv环境,这篇博客要从开头到结尾帮助大家完成学习环境的搭建
版本
win10主机
VMware15.5.0
ubuntu16.04
opencv-3.4.3
python3.5
下载VMware虚拟机
链接: https://pan.baidu.com/s/1DBXJsLS-_yS23UtDWlw8kw
提取码: jxbd
下载Ubuntu16.04镜像
链接: https://pan.baidu.com/s/1JtlYAW-qb5apm3_ND4CN5g
提取码: 8neb
VMware虚拟机安装Ubuntu16.04操作系统
-
双击打开VMware虚拟机
-
安装Ubuntu系统
编译安装opencv环境
1,更换国内源
$ sudo gedit /etc/apt/sources.list
打开文件后删除所有内容,粘贴下边的内容
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
2,更新系统源
$ sudo apt-get update
3,安装编译工具
$ sudo apt-get install build-essential cmake pkg-config
4,OpenCV是计算机视觉库,加载一些图像文件( JPEG, PNG, TIFF)
$ sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
5,OpenCV还要处理视频文件
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
$ sudo apt-get install libxvidcore-dev libx264-dev
6,OpenCV的GUI模块highgui依赖Gtk。安装gtk库
$ sudo apt-get install libgtk-3-dev
7,下面安装一些可以提高OpenCV性能的库,如矩阵操作
$ sudo apt-get install libatlas-base-dev gfortran
8,安装Python3的开发库
$ sudo apt-get install python3.5-dev
9,下载opencv3.4.3
$ cd ~
$ wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.4.3.zip
$ unzip opencv.zip
10,下载和OpenCV版本对应的opencv_contrib
$ wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.4.3.zip
$ unzip opencv_contrib.zip
注意:opencv和opencv_contrib的版本要一致。
11,创建Python虚拟环境,虚拟环境可以保持Python开发环境的干净整洁,建议使用虚拟环境。
安装pip:
$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py
$ rm get-pip.py
安装virtualenv:
$ sudo pip install virtualenv virtualenvwrapper
在~/.bashrc文件中添加如下环境变量:
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
使环境变量生效:
source ~/.bashrc
创建Python虚拟环境
mkvirtualenv cv3 -p python3
切换工作目录:
workon cv3
在cv3虚拟环境安装numpy:
$ pip install numpy
12,编译OpenCV
激活要安装的Python虚拟环境:
$ workon cv3
编辑OpenCV:
$ cd ~/opencv-3.4.3/
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON -D INSTALL_C_EXAMPLES=OFF -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.3/modules -D PYTHON_EXECUTABLE=~/.virtualenvs/cv3/bin/python -D BUILD_EXAMPLES=ON ..
注意:
1,把ON改为OFF可加快编译速度
2,如果执行过程中出现ICV: Downloading ippicv_linux_20151201.tgz...停住不动的情况,参考博客https://blog.csdn.net/qq_42517195/article/details/80834655
编译:
$ make
安装:
$ sudo make install
$ sudo ldconfig
13,完成OpenCV的安装
OpenCV模块位于/usr/local/lib/python3.5/site-packages/目录。
为Python3编译的模块名字不是cv.so,而是cv2.cpython-35m-x86_64-linux-gnu.so,系统不同名字也不同,重命名:
$ cd /usr/local/lib/python3.5/site-packages/
$ sudo mv cv2.cpython-35m-x86_64-linux-gnu.so cv2.so
创建链接:
$ cd ~/.virtualenvs/cv/lib/python3.5/site-packages/
$ ln -s /usr/local/lib/python3.5/site-packages/cv2.so cv2.so
测试安装:
$ cd ~
$ workon cv3
$ python
Python 3.5.2 (default, Jul 5 2016, 12:43:10)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.4.3'
>>>