ubuntu16.04安装opencv2.4.13

一.前期准备

安装编译工具
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

二. 下载opencv & 编译

下载地址:https://opencv.org/releases.html

cd opencv-2.4.13
新建一个文件夹用于存放临时文件:
mkdir build

cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

make -j4    //开启线程 按照自己的配置

sudo make install

在make的时候遇到的问题:

fatal error: unsupported/Eigen/MatrixFunctions: No such file or directory

解决方法:

sudo apt-get install libeigen3-dev  //默认安装路径是:/usr/include/eigen3

sudo cp -r usr/include/eigen3/unsported  usr/local/include/

三. 配置

1 将opencv的库加入到路径,从而让系统可以找到

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

末尾加入/usr/local/lib,保存退出

sudo ldconfig #使配置生效

sudo gedit /etc/bash.bashrc 

末尾加入

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

保存退出

sudo source /etc/bash.bashrc  #使配置生效

sudo updatedb #更新database

四. 测试用例

打开opencv2.4.10目录下的sample/c

#build

./build_all.sh

使用下面的一个sample进行测试

./find_obj

结果如下:

  ubuntu16.04安装opencv2.4.13_第1张图片

五. 查看版本号

命令:pkg-config --modversion opencv

结果:2.4.13

六. 调用多个版本中指定的opencv版本

http://www.linuxdiyf.com/linux/21233.html (多个版本的管理)

解决方案:

现在讨论Ubuntu16.04下分别使用CMake和Makefile编译运行带Opencv程序的两种解决方案。


1.CMake下指定Opencv版本

关键文件:OpenCVConfig.cmake。在opencv编译好后,所在目录中一般会有一个叫OpenCVConfig.cmake的文件,这个文件中指定了CMake要去哪里找OpenCV,其.h文件在哪里等,比如其中一行:

方法:

注意,将其添加在project(MyProjectName)之前。

如CMakeLists.txt内容如下:

cmake_minimum_required(VERSION 2.8)
set(OpenCV_DIR "/home/ubuntu/src/opencv-3.1.0/build")
project( camera )


2.Makefile下指定Opencv版本

关键文件:opencv.pc 。在Makefile下,应该是可以在其中详细设定Opencv路径。

我们常常使用pkg-config --modversion 来查看指定库的版本,比如查看opencv版本pkg-config --modversion opencv。其实pkg-config显示的信息来自于这个库对应的.pc文件,比如安装了opencv后,我们可以在/usr/local/lib/pkgconfig/ 文件夹下找到opencv.pc或者../opencv2410/build/unix-install/opencv.pc

方法:

如果我在/usr/local/lib/pkgconfig文件夹目录下添加opencv-3.1.0.pc文件,是否就可以将版本指向opencv-3.1.0l了呢?答案是肯定的。

备注:g++ detect.cpp ImageProcessClass.cpp CommonFunClass.cpp CameraProcess.cpp -o Detect `pkg-config opencv halcon --cflags --libs`

 

你可能感兴趣的:(系统配置,ubuntu)