DYF
我思故我在!

Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)

前提是已经安装了python2,python3

1)安装各种依赖库

sudo apt-get update
sudo apt-get install build-essential

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

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev

sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libatlas-base-dev gfortran
sudo apt-get install ffmpeg

2) 下载 opencv 源码

https://github.com/opencv/opencv/releases
选择最新(或自己喜欢的)版本,然后减压

3)编译安装

cd ~/opencv-3.4.0
mkdir build
cd build

配置

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

编译安装

make -j4
sudo make install

测试

import cv2
print(cv2.version)

3.4.0

错误

IPPICV: Download failed: 28;"Timeout was reached"

1) 下载ippicv_2017u3_lnx_intel64_general_20170822.tgz,结果下载失败

解决办法是重复试一下,一般都会下载成功。
如果一直失败则

1)手动下载ippicv库
https://github.com/opencv/opencv_3rdparty/pull/22/commits/dfe3162c237af211e98b8960018b564bc209261d

2) 将文件拷贝到opencv-3.4.0同级目录
3)执行如下命令

 ipp_file=ippicv_2017u3_lnx_intel64_general_20170822.tgz &&
ipp_hash=$(md5sum ../$ipp_file | cut -d" " -f1) &&
ipp_dir=.cache/ippicv                           &&

mkdir -p $ipp_dir &&
cp ../$ipp_file $ipp_dir/$ipp_hash-$ipp_file
posted on 2018-01-05 15:56  o(∩_∩)o...  阅读(1793)  评论(0编辑  收藏  举报