Ubuntu 16.04 安装Opencv3.2.0+Opencv_contrib-3.2.0安装步骤以及错误解决(原创)

Ubuntu 16.04 安装Opencv3.2.0+Opencv_contrib-3.2.0安装步骤以及错误解决(原创)

ubuntu16.04安装opencv3.2

1.安装官方给的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
$ sudo apt-get install ffmpeg

2. 下载官方opencv以及其相应的扩展模块

注意:1.扩展模块和opencv版本要严格一致,否则编译中出许多莫名奇妙的错误。
2.建议大家下载安装下cmake-gui图形界面化工具,以便后面方便使用。
我在这里下载的opencv以及其扩展模块还有安装过程中涉及到的一些软件包,下载的地址为:https://github.com/xinke121/opencv3.2source-contrib-ippicv
里面包括安装过程中的全部涉及的包

3. 编译opencv

配置编译opencv (无NVIDIA CUDA版本)
将上述opencv包解压,放置在你建立的文件下我的是/home/zvy/Thirdparty/opencv3.2
然后打开终端执行以下命令:
$ cd opencv-3.2.0
$ mkdir build
$ cd build

a.编译无cuda版本的opencv

$ cmake -D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/home/bobo/anaconda3/envs/tensorflow
-D INSTALL_PYTHON_EXAMPLES=ON
-D INSTALL_C_EXAMPLES=OFF
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.2.0/modules
-D PYTHON_EXCUTABLE=/home/bobo/anaconda3/envs/tensorflow/bin/python
-D WITH_TBB=ON
-D WITH_V4L=ON
-D WITH_QT=ON
-D WITH_GTK=ON
-D WITH_OPENGL=ON
-D BUILD_EXAMPLES=ON …
上面后面的… 千万不要省略。

编译过程中的错误

1 在安装cmake -D这步时,由于网络原因会出现下载不下来的情况:
1.ubuntu下安装opencv3.2出现-- ICV: Downloading ippicv_linux_20151201.tgz…提示很多错误。
需要自己下载ippicv_linux_20151201.tgz
然后复制替换到
opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e。
2. Failed to download v3.1.0/protobuf-cpp-3.1.0.tar.gz. Status=7;“Couldn’t connect to server”
替换路径类似:\opencv_extra\opencv_contrib-3.2.0\modules\dnn.download\bd5e3eed635a8d32e2b99658633815ef\v3.1.0目录下的protobuf-cpp-3.1.0.tar.gz(注意:这里文件在Ubuntu是隐藏的利用命令或者直接手动去添加)。
**注意:**如果一旦camke命令设置不成功或者报一些诸如下面类错误,编译设置肯定不过,还记得之前我让安装的cmake-gui么,大家用里面界面化工具安装,设置好生成就好。
– Looking for linux/videodev.h
– Looking for linux/videodev.h - not found
– Looking for linux/videodev2.h
– Looking for linux/videodev2.h - found
– Looking for sys/videoio.h
– Looking for sys/videoio.h - not found
– Checking for module ‘libavresample’
– No package ‘libavresample’ found
– Checking for module ‘libgphoto2’
– No package ‘libgphoto2’ found
– found IPP (ICV version): 9.0.1 [9.0.1]
– at: /home/elsa/software/opencv3/opencv-3.2.0/build/3rdparty/ippicv/ippicv_lnx
– Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
– Could not find OpenBLAS lib. Turning OpenBLAS_FOUND off
– Could NOT find Atlas (missing: Atlas_CBLAS_INCLUDE_DIR Atlas_CLAPACK_INCLUDE_DIR Atlas_CBLAS_LIBRARY Atlas_BLAS_LIBRARY Atlas_LAPACK_LIBRARY)
– Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
– Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)
– Could NOT find Matlab (missing: MATLAB_MEX_SCRIPT MATLAB_INCLUDE_DIRS MATLAB_ROOT_DIR MATLAB_LIBRARIES MATLAB_LIBRARY_DIRS MATLAB_MEXEXT MATLAB_ARCH MATLAB_BIN)
– VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file
CMake Error at cmake/OpenCVModule.cmake:295 (message):
No extra modules found in folder:
/home/software/opencv3/opencv3.2.0/opencv_contrib-3.2.0/modules

Please provide path to ‘opencv_contrib/modules’ folder.
Call Stack (most recent call first):
modules/CMakeLists.txt:7 (ocv_glob_modules)


– Configuring incomplete, errors occurred!
See also “/home/elsa/software/opencv3/opencv-3.2.0/build/CMakeFiles/CMakeOutput.log”.
See also “/home/elsa/software/opencv3/opencv-3.2.0/build/CMakeFiles/CMakeError.log”.
完成上述步骤其他就和其他博客讲述的一样了,利用命令一步一步编译就好了。
**注意:**本文提供的方法几乎适用所有opencv以及扩展模块安装,本人也是经多次安装调试的经验。谢谢转载,有疑惑留言。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值