ubuntu16.04安装配置opencv3.2.0(完全安装)

      本教程为完全安装教程,只需要简单安装的可以参考此篇简单安装教程,大部分功能可以使用,但是不具有video等视频处理的功能。由于本人需要video功能,因此重新安装的自己的opencv。

安装步骤

  1. 安装FFMPEG
  2. apt-get安装相关的依赖库
  3. 下载opencv,opencv_contrib包
  4. 编译,安装

Step1. 安装FFMPEG,要想完全安装,这一步是必须的,本人就是没有开始没有安装这一部分,导致后面编译出现error而暂停的编译的情况。出现的错误,例如:modules/videoio/CMakeFiles/opencv_videoio.dir/build.make:261: recipe for target 'lib/libopencv_videoio.so.3.2.0' failed。

      modules/videoio/CMakeFiles/opencv_videoio.dir/build.make:261: recipe for target 'lib/libopencv_videoio.so.3.2.0' failed。

(videoio大致就是跟FFMPEG相关了)

本人下载的是ffmpeg-3.1.11.tar.bz2,下载地址去github上ffmpeg,然后选择下载版本就可以了。安装指令比较简单,如下

tar xvf ffmpeg-3.1.11.tar.bz2
cd ffmpeg-3.1.11
sudo apt-get install yasm
 
./configure --host-cppflags=-fPIC --host-cflags=-fPIC --enable-shared
make
sudo make install
这部分比较顺利,没遇到什么问题。

Step2.  apt-get安装相关的依赖库。这些依赖库在opencv编译的时候会用到。


$ 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 # 优化opencv功能
$ sudo apt-get install ffmpeg
             这一块遇到了一些小问题,在apt-get安装的时候遇到的错误,如下图  :

    出现这个错误的原因是其中某些依赖需要切换到python2进行安装(本人用的python3.5)。前两句语句意思是设置python两个版本的优先级,从而进行切换。要是出现这类错误,可能是这个原因。

sudo update-alternatives --install /usr/bin/pythonpython /usr/bin/python2 200
sudo update-alternatives --install /usr/bin/pythonpython /usr/bin/python3 100

Step3.  下载opencv,opencv_contrib包。注意,两个文件要版本一致。比如我下载的是opencv-3.2.0,opencv_contrib-3.2.0。下载地址同样在github上搜,选择相应版本的zip文件进行下载。目录结构:我将opencv_contrib-3.2.0放在opencv-3.2.0文件夹里面。

cd opencv-3.2.0    ###此处省略了解压的步骤。只需注意opencv_contrib-3.2.0在
                   ###opencv-3.2.0文件夹里面。
mkdir build
cd build
###下面的cmake版本是不带cuda的
###标红的那个opencv_contrib-3.2.0文件夹,我重命名文件夹为opencv_contrib
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=/home/xwlab/opencv-3.2.0/opencv_contrib/modules \
-D PYTHON3_EXCUTABLE=/usr/bin/python \
-D WITH_CUDA=OFF \
-D WITH_TBB=ON \
-D WITH_V4L=ON \
-D WITH_GTK=ON \
-D WITH_OPENGL=ON \
-D BUILD_EXAMPLES=ON ..


.###这是带cuda的,下面带颜色的数值要自己查###查询网址:查看cuda型号网址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=/home/xwlab/opencv-3.2.0/opencv_contrib/modules \
-D PYTHON_EXCUTABLE=/usr/bin/python \
-D WITH_CUDA=ON \
-D WITH_CUBLAS=ON \
-D DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" \
-D CUDA_ARCH_BIN="5.2" \
-D CUDA_ARCH_PTX="" \
-D CUDA_FAST_MATH=ON \
-D WITH_TBB=ON \
-D WITH_V4L=ON \
-D WITH_GTK=ON \
-D WITH_OPENGL=ON \
-D BUILD_EXAMPLES=ON ..

以上带cuda版本和不带cuda版本本人都试过,并且都成功了。

Step4.  编译,安装,验证。

make -j4
sudo make install
sudo ldconfig

到这里安装就基本完成了,验证如下:


python  #进入python环境
import cv2
print(cv2.__version__) #打印opencv版本

output:3.2.0

cam = cv2.VideoCapture(0) #验证ffmpeg功能
print(cam.isOpened())

参考:https://www.cnblogs.com/arkenstone/p/6490017.html

http://dev.t7.ai/jetson/opencv/

https://jingyan.baidu.com/article/63acb44a3b326561fcc17e13.html

http://blog.csdn.net/qq_26656329/article/details/77092690



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章