本文记录ubuntu下安装opencv过程,步骤来自 opencv官网可以对照官网步骤:
https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_install.html
(1)、Required Packages(安装必要的库,以及想要的功能的库,使用cmake ..时会检查哪些依赖库安装了,然后就会开启哪些功能对应的写入到Makefile文件中,如果有些需要的库没有安装,那么对应的功能就不能使用):

GCC 4.4.x or later
CMake 2.8. or higher
Git
GTK+.x or higher, including headers (libgtk2.-dev)
pkg-config
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
[optional] libtbb2 libtbb-dev
[optional] libdc1394 .x
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394--dev
[optional] CUDA Toolkit 6.5 or higher
The packages can be installed using a terminal and the following commands or by using Synaptic Manager: [compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394--dev

下面是具体的安装命令(如果下面那些东西之前已经安装过那么就没有必要安装了,比如我的cmake git 之前都安装好了,所以我在第二条命令就去掉了cmake git ):

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.-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--dev

slam需要的库(可参考视觉slam十四讲95页内容),下面的库会与上面安装过的库有重复,你可以对照着上面跳过重复的库(实际上 libvtk5-dev libtiff4-dev(这个安装过程会有问题,下面会有说明) libopenexr-dev是不重复的,下面列举出全部的原因,是为了明确slam需要的库):

sudo apt-get install build-essential libgtk2.-dev libvtk5-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev libtbb-dev

(插入说明:在安装上面的依赖库时,仅仅libtiff4-dev出现了错误(这个库是用来支持TIFF图像的),会有提示信息,可以按照提示替换为libtiff5-dev。当然如果提示了更高的版本,就对应安装提示的库。)
(2)、Getting OpenCV Source Code(获得Opencv源码)

可以到下面的网址下载源码包:https://opencv.org/releases.html

(3)、Building OpenCV from Source Using CMake(使用CMake编译安装源码)
打开源码包,之后在该路径下打开终端。输入如下指令:

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4 # runs jobs in parallel(4线程同时安装 速度比单线程快)
sudo make install

说明:

-D CMAKE_INSTALL_PREFIX=/usr/local ..    这个选项表示你将Opencv库安装的目录。可以选择其他目录。这个目录里面会找到包含lib库 和头文件库的文件夹。

参考资料;
1、https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_install.html
2、https://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html?highlight=install
3、Opecv常用模块的说明:https://docs.opencv.org/3.4.0/d9/df8/tutorial_root.html

ubuntu16.04+Opencv3.4.0安装(slam版)的更多相关文章

  1. Ubuntu16.04+OpenCV3.2.0+Opencv_Contrib3.2.0安装

    为了学习slam,在ubuntu16.04系统上安装opencv3.2.0以及对应的opencv_contrib3.2.0 安装过程 下载 Github上下载有的时候比较慢,我这里分享了OpenCV3 ...

  2. Ubuntu16.04+Opencv3.3的安装教程

    需要准备的基本材料(请先看完整个安装过程再进行下面的操作): 一.到Opecv-Release的Github项目上下载最新的Opencv版本,注意---基于python2.7,可选用 OpenCV2. ...

  3. Anaconda ubuntu16.04 Cuda 8.0安装pytorch

    Pytorch 安装 Pytorch安装真的太让人省心了,在anaconda的环境下进行安装,只需要一个命令 具体命令请查看官网pytorch 找到适合你的版本进行安装 本机环境: anaconda3 ...

  4. [置顶] Ubuntu16.04+opencv3.3.0的安装配置说明

    系统环境:  Linux Ubuntu 16.04  [GCC 5.4.0 20160609] on linux2 之前的教程中我们已经安装了做机器学习需要使用的框架TensorFlow,笔者本科阶段 ...

  5. Ubuntu16.04 anaconda3 opencv3.1.0 安装CPU版本caffe

    安装anaconda3 安装opencv3.1.0 安装依赖库 修改Makefile.config 修改Makefile 编译报错,卸载anaconda中的protobuffer: conda uni ...

  6. ubuntu16.04下sublime text3安装和配置

    ubuntu16.04下sublime text3安装和配置 2018年04月20日 10:31:08 zhengqijun_ 阅读数:1482 1.安装方法 1)使用ppa安装 sudo add-a ...

  7. Ubuntu16.04 LTS下apt安装WireShark

    Ubuntu16.04 LTS下apt安装WireShark 安装与配置 首先通过apt安装WireShark: $ sudo apt install wireshark 会同时安装许多的依赖包,其中 ...

  8. Ubuntu16.04 + gtx1060 + cuda8.0 + cudnn5.1 + caffe + Theano + Tensorflow

    参考 ubuntu16.04+gtx1060+cuda8.0+caffe安装.测试经历 ,细节处有差异. 首先说明,这是在台式机上的安装测试经历,首先安装的win10,然后安装ubuntu16.04双 ...

  9. 路由器安装ubuntu-16.04.1-server-amd64出现“无法安装busybox-initramfs”错误。向目标系统中安装busybox-initramfs软件包时出现一个错误。请检查/var/log/syslog或查看第四虚拟控制台以获得详细

    公司的路由器要ubuntu服务器进行路由网络功能的管理,在安装的时候出现下面的错误提示: 安装ubuntu-16.04.1-server-amd64出现“无法安装busybox-initramfs”错 ...

随机推荐

  1. 跌宕起伏的java帝国史,剖析谷歌甲骨文长达8年的版权战争

    这篇博文是我在B站上发的一个科普java的视频文案整理,本来发过一次了,但是有几种不严谨的地方只能删掉重新发了一下,内容如标题,感兴趣的码农朋友可以观看视频的版本,欢迎提提意见啥的,感谢~https: ...

  2. CAP理论的理解

    CAP理论作为分布式系统的基础理论,它描述的是一个分布式系统在以下三个特性中: 一致性(Consistency) 可用性(Availability) 分区容错性(Partition tolerance ...

  3. ObjectArx 使用消息钩子实现鼠标滚轮旋转实体

    测试结果: 实现方法:主要是程序注册一个消息函数:func,拦截鼠标滚轮触发的消息,需要注意的是,以写的方式处理实体时需要锁定文档.注册func的主要方法是:BOOL acedRegisterFilt ...

  4. [ASP.NET Core 3框架揭秘] Options[2]: 配置选项的正确使用方式[下篇]

    四.直接初始化Options对象 前面演示的几个实例具有一个共同的特征,即都采用配置系统来提供绑定Options对象的原始数据,实际上,Options框架具有一个完全独立的模型,可以称为Options ...

  5. JavaScript substring()

    JavaScript substring() 方法 参数 描述 start 必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置. stop 可选.一个非负的整数, ...

  6. js实现类选择器和name属性选择器

    jQuery的出现,大大的提升了我们操作dom的效率,使得我们的开发更上一层楼,如jQuery的选择器就是一个很强大的功能,它包含了类选择器.id选择器.属性选择器.元素选择器.层级选择器.内容筛选选 ...

  7. Java类成员之属性

    属性含义:对应类中的成员变量. 语法格式:修饰符 数据类型 属性名 = 初始化值; 1.修饰符常用的有权限修饰符(private.default.protected.public) 以及其他修饰符(s ...

  8. MariaDB的备份与主从、高可用实践

    1.编写脚本,支持让用户自主选择,使用mysqldump还是xtraback全量备份. [root@test-centos7-node1 scripts]# cat chose_backup_mysq ...

  9. phpstudy nginx设置CORS跨域不起作用的可能解决方法

    今天搞了半天的跨域问题,想通过nginx配置跨域,希望以后本地调试程序都不用为这件事烦心.无非就是设置几个请求头: add_header Access-Control-Allow-Origin *; ...

  10. Neo4j集群容器化部署

    集群基本配置(示例) core servers: 10.110.10.11, 10.110.10.12, 10.110.10.13read replicas: 10.110.10.14, 10.110 ...