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

https://blog.csdn.net/u013180339/article/details/77507936

这里的安装没有用pip或是conda安装,通过pip或者conda安装的opencv只是封装了opencv的Python API,一般情况下也够用。但是如果准备安装完整版本的opencv,这里比较建议将opencv-python卸载,以免之后产生一些不必要的报错。

1.配置环境

$ 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

2.下载opencv3.4.0

这里需要下载opencv和opencv_contrib(后者会在cmake配置的时候用到),这是因为opencv3以后SIFT和SURF之类的属性被移到了contrib中

$ wget https://github.com/opencv/opencv/archive/3.4.0.zip # 从github上直接下载或者clone也可
$ wget https://github.com/opencv/opencv_contrib/archive/3.4.0.zip

3.配置编译opencv (无NVIDIA CUDA版本)

解压安装完cmake配置属性 ,创建编译文件夹

$ unzip 3.4.0.zip
$ cd opencv-3.4.0
$ mkdir bilud
$ cd build
$ 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=~/opencv_contrib-3.4.0/modules \
-D PYTHON_EXCUTABLE=/usr/bin/python \
-D WITH_TBB=ON \
-D WITH_V4L=ON \
-D WITH_QT=ON \ # 1
-D WITH_GTK=ON \
-D WITH_OPENGL=ON \
-D BUILD_EXAMPLES=ON .. # cmake命令的使用方式:cmake [<some optional parameters>] <path to the OpenCV source directory>。
如果命令报错的话可以试着把-D后面的空格去掉在执行一次。
$ make -j4 #4是根据自己电脑的核数确定,我的电脑4核
$ sudo make install
$ sudo /bin/bash -c 'echo "/home/fanzong/anaconda2/envs/tensorflow/lib" > /etc/ld.so.conf.d/opencv.conf'
$ sudo ldconfig

PS:1. 如果qt未安装可以删去此行;
CMAKE_INSTALL_PREFIX:安装的python目录前缀,其实就是指定了python模块的安装路径。如下命令的输出即是该路径:

python -c "import sys; print(sys.prefix)"

PYTHON_EXCUTABLE:指定python的执行文件路径。如下命令的输出即是该路径

which python

如果想关闭掉ippicv的安装,只需在上述cmake命令中增加一行: -D WITH_IPP=OFF \ 即可

查看自己电脑核数的命令

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数
# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq # 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l

# 查看CPU信息(型号)
  cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

# 查看内 存信息
  cat /proc/meminfo

# 查看cpu详细信息

cat /proc/cpuinfo

上述配置命令执行成功后,继续执行编译命令

sudo make install 执行完毕后OpenCV编译过程就结束了,接下来就需要配置一些OpenCV的编译环境首先将OpenCV的库添加到路径,从而可以让系统找到

sudo vim /etc/ld.so.conf.d/opencv.conf 

执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加

/usr/local/lib 

执行如下命令使得刚才的配置路径生效

sudo ldconfig  

4.完成安装并测试

安装完成以后,重启下机器,检测opencv版本

python -c "import cv2; print(cv2.__version__)"

如果正确安装的话则会输出3.4.0

												

ubuntu16.04 安装opencv3.4.0的更多相关文章

  1. ubuntu16.04 安装opencv3.2.0以及opencv_contrib-3.2.0

    1.需要的包:sudo apt-get install build-essentialsudo apt-get install cmake git libgtk2.0-dev pkg-config l ...

  2. ubuntu16.04安装opencv3.4.0

    老实说这篇记录可能拖了有8个月了,早在去年6月份我应该是第一遍安装opencv.当时懒得记录,以为自己什么都能记得住.后来由于电脑各种原因,需要重装opencv,装的时候发现啥都记不住了.然后又得去找 ...

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

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

  4. 深度学习环境配置:Ubuntu16.04安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)

    本来就对Linux不熟悉,经过几天惨痛的教训,参考了不知道多少篇文章,终于把环境装好了,每篇文章或多或少都有一些用,但没有一篇完整的能解决我安装过程碰到的问题,所以决定还是自己写一篇我安装过程的教程, ...

  5. 【PyImageSearch】Ubuntu16.04使用OpenCV3.3.0实现图像分类

    这篇博文将会展示如何采用一个预训练的深度学习网络(模型)在ImageNet的数据集并把它当作输入图像. 首先说明,运行环境为Ubuntu16.04(或者MacOS),windows暂不支持,已经编译好 ...

  6. Ubuntu16.04 - 安装gtk+-3.0和appindicator3-0.1

    今天在Ubuntu16.04里面遇到这样的问题: # pkg-config --cflags gtk+-3.0 appindicator3-0.1Package gtk+-3.0 was not fo ...

  7. Ubuntu16.04安装opencv-3.4.2

    原文链接: https://m.oldpan.me/archives/ubuntu-install-opencv-from-source 第一步:更新我们的系统 sudo apt-get update ...

  8. ubuntu16.04 安装opencv3.3

    from: http://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/ Step #1: Install O ...

  9. Ubuntu16.04安装OpenCV3.2以及PCL1.8

    最近在学习slam14讲,需要配置一些环境<视觉slam十四讲> 这本书中已经给出如何配置相关环境的比较详细的说明,但是有些环境并无卵用,比如OpenCV以及PCL 这里给出自己屡试不爽的 ...

随机推荐

  1. HDFS 01 - HDFS是什么?它的适用场景有哪些?它的架构是什么?

    目录 1.HDFS 是什么 1.1 简单介绍 1.2 发展历史 2.HDFS 应用场景 2.1 适合的应用场景 2.2 不适合的应用场景 3.HDFS 的架构 4.NameNode 和 DataNod ...

  2. [转]ROS Q&A | How to read LaserScan data

    http://www.theconstructsim.com/read-laserscan-data/ Step 1. Open a project on ROS Development Studio ...

  3. JVM Attach实现原理剖析

    本文转载自JVM Attach实现原理剖析 前言 本文旨在从理论上分析JVM 在 Linux 环境下 Attach 操作的前因后果,以及 JVM 为此而设计并实现的解决方案,通过本文,我希望能够讲述清 ...

  4. 鸿蒙开源第三方组件 ——B站开源弹幕库引擎的迁移(上)

    鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录: 一.弹幕库的基础知识 二.弹幕库的使用方法 三.sample解析 四.作者系列文章合集 前言 ...

  5. 第39天学习打卡(多线程 Thread Runnable 初始并发问题 Callable )

    多线程详解 01线程简介 Process与Thread 程序:是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念. 进程则是执行程序的一次执行过程,它是一个动态的概念.是系统资源分配的 ...

  6. $nextTick解决Vue组件卸载在加载合并的问题

    情况是这样的,父子组件都是复选框,点击父组件的复选框,子组件的复选框要显示并全选,取消复选框,子组件隐藏.子组件显隐我用的 v-if ,使用created钩子函数来使子组件处于全选状态. 但是出现的问 ...

  7. 在windows10中启动VmWare时,只要一启动虚拟机,电脑就会蓝屏死机(终止代码:SYSTEM_SERVICE_EXCEPTION)

    在windows10中启动VmWare时,只要一启动虚拟机,电脑就会蓝屏死机(终止代码:SYSTEM_SERVICE_EXCEPTION) 没错就是这个,绿色的死亡按钮 原因: 第一种:windows ...

  8. Less常用变量与方法记录

    需求:仅记录Lsee常用变量与方法定义,便于使用.-- @color: #000; @title-color: #000; @bg-color: #fff; @small-font: 12px; @l ...

  9. 关于深度学习配置的一些tips

    建立博客的第一天,将以前记录的一些东西存档下,方便查看. 1安装anaconda 2pycharm破解 配置环境变量3虚拟环境推荐是python3.5或3.6版本 4.安装numpy tensorfl ...

  10. python学习之基础内容

    python基础内容① 什么是python? -一种计算机语言,计算机语言分为 -高级语言:python.java.Ruby.C#.C++...... -基础语言:C语言.汇编 -计算机可以直接执行基 ...