1.源文件下载

opencv-3.4.1.tar.gz(https://github.com/opencv/opencv/releases)

opencv_contrib-3.4.1.tar.gz(https://github.com/opencv/opencv_contrib/releases)

2.安装必要的库

步骤1.安装依赖项

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

可选的

sudo apt-get install checkinstall yasm libtiff5-dev libjpeg-dev libjasper-dev libdc1394--dev libxine2-dev libgstreamer0.-dev libgstreamer-plugins-base0.-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils libeigen3-dev

步骤3.生成cmake编译配置

这里下载文件可能会出错,解决办法就是去官网下载

下载:ippicv_2017u3_lnx_intel64_general_20170822.tgz

然后参考:http://doc.okbase.net/u010739369/archive/291261.html解决

创建编译目录

 cd opencv-3.1.  mkdir release  cd release

编译opencv及opencv_contrib

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/home/opencv/opencv_contrib/modules/ ..  

如果不安装opencv_contrib模块,则第二步的命令为:
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local
CMAKE_INSTALL_PREFIX为你的opencv安装路径,OPENCV_EXTRA_MODULES_PATH是你的opencv_contrib/modules/的路径,可以参照在我的电脑上为
另外我们要打开支持opengl的opencv
ubuntu下安装opencv,支持opengl要在cmake的时候,加入-D WITH_OPENGL=ON就行,

原来是机器里装了gtk3,所以HAVE_GTKGLEXT==FALSE,机器里恰巧又没有QT,所以没有去检查OpenGL项目。

看来是gtk3与gtkglext不兼容,为了支持opengl,只能使用gtk2了。在cmake的时候,再增加一个选项-D WITH_GTK_2_X=ON就OK了。下面是cmake的输出结果:

就可以了。

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv-3.4. -D OPENCV_EXTRA_MODULES_PATH=/home/zn/opencv-3.4./opencv_contrib-3.4./modules/ -D WITH_OPENGL=ON -D WITH_GTK_2_X=ON ..

4.安装

make
sudo make install

make的时候大概会出现报错,参考以下链接解决

https://github.com/opencv/opencv/issues/6016

5.测试

查看opencv版本

pkg-config --modversion opencv

参考:

https://blog.csdn.net/neilooo/article/details/78425559

Ubuntu16.04 OpenCV3.4.1及扩展模块环境搭建

http://doc.okbase.net/u010739369/archive/291261.html

ubuntu16.04下安装opencv3.4.1及其扩展模块的更多相关文章

  1. ubuntu16.04下安装opencv-3.1.0及其扩展模块opencv_contrib

    步骤1.安装依赖项 sudo apt--dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 可选的 sudo apt--dev l ...

  2. ubuntu16.04下安装opencv3.3

    最近重装了ubuntu16.04的系统,在给电脑配置好cuda8.0和cudnn6.0的版本后,开始重新安装opencv,在opencv的官网上发现最新版本3.3版本增加了很多深度学习方面的东西,果断 ...

  3. Ubuntu16.04下安装opencv3.4.2

    1.安装官方给的opencv依赖包 GCC 4.4.x or later CMake 2.6 or higher Git GTK+2.x or higher, including headers (l ...

  4. ubuntu16.04下安装opencv3.1.0

    1.安装依赖项 sudo apt--dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 可选的 sudo apt--dev lib ...

  5. Ubuntu16.04下安装OpenCV3.2.0

    1.安装官方给的opencv依赖包 $ sudo apt-get install build-essential $ sudo apt-get install cmake git libgtk2.0- ...

  6. ubuntu16.04下安装opencv3的viz模块

    OPENCV3.0默认是不安装VIZ模块的,那么如何安装呢? 如果已经安装了Opencv,现在要增加VIZ模块,应该再安装一次就可以吧,我没试过,我是卸载了原来的,重新安装的 简单来说,就是要多安装一 ...

  7. 【深度学习】ubuntu16.04下安装opencv3.4.0

    1.首先安装一些编译工具 # 安装编译工具 sudo apt-get install build-essential # 安装依赖包 sudo apt-get install cmake git li ...

  8. Ubuntu16.04下安装数据库oracle客户端

    在Ubuntu16.04下安装oracle数据库客户端,使Django项目连接到远程Oracle数据库. 1.下载oracle客户端安装包: 进入官网http://www.oracle.com/tec ...

  9. Ubuntu16.04下安装redis

    Ubuntu16.04下安装redis 保证网络畅通,选定好下载工作路径,执行以下命令下载redis-3.2.6: sudo wget http://download.redis.io/release ...

随机推荐

  1. ROS中测试机器人里程计信息

    在移动机器人建图和导航过程中,提供相对准确的里程计信息非常关键,是后续很多工作的基础,因此需要对其进行测试保证没有严重的错误或偏差.实际中最可能发生错误的地方在于机器人运动学公式有误,或者正负号不对, ...

  2. donet core 2.1 DateTime ToString() 方法 在不同平台返回的时间格式不一样?

    跟操作系统的 设置的时间格式和系统区域设置有关.为了保持一致性.参数自己写好格式.

  3. git+gitolite如何实现权限控制

    前言 首先说明一下,这还是本人第一次写这类文章,如有不妥,多多见谅. 基本情况 因为现在公司的人不是很多,但是还对代码有着严格的管控,所以采用了gitolite的管理方式 其实正常来讲,这种权限的把控 ...

  4. 4.翻译系列:EF 6 Code-First默认约定(EF 6 Code-First系列)

    原文地址:http://www.entityframeworktutorial.net/code-first/code-first-conventions.aspx EF 6 Code-First系列 ...

  5. MVC 打印解决方案--SNF快速开发平台3.1

    SNF-MVC打印报表方案: 报表模块创建的过程如下: 利用Stimulsoft Reports客户端报表工具新增一个报表文件 *.mrt 当然你也可以拿好用的*.mrt模版文件进行复制出来一个,我常 ...

  6. Shell脚本编程(一):初识shell script

    Shell简介 Shell是一个命令解释器,它是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核 ...

  7. Python--Redis实战:第四章:数据安全与性能保障:第7节:非事务型流水线

    之前章节首次介绍multi和exec的时候讨论过它们的”事务“性质:被multi和exec包裹的命令在执行时不会被其他客户端打扰.而使用事务的其中一个好处就是底层的客户端会通过使用流水线来提高事务执行 ...

  8. pandas DataFrame(3)-轴

    和numpy数组(5)-二维数组的轴一样,pandas DataFrame也有轴的概念,决定了方法是对行应用还是对列应用: 以下面这个数据为例说明: 这个数据是5个车站10天内的客流数据: rider ...

  9. IOS开发之Storyboard应用

    制作一个Tab类型的应用 制作一个表格视图 原型表格单元 设计自定义的原型单元格 为原型单元格设置子类 故事版(Storyboard)是一个能够节省你很多设计手机App界面时间的新特性,下面,为了简明 ...

  10. vs2015打开慢的解决方法

        1.首先是这里,这里默认是用的软件加速,把"基于客户端性能自动调整视觉体验"去掉勾选.然后把下面的第一个选项去掉,第二选项勾选.我在想,它的"自动"基于 ...