Ubuntu安装opencv

环境搭建

基于已有ubuntu环境

一 opencv安装

  1. 下载

      https://github.com/opencv/opencv/releases?page=3
    
  2. 解压

       tar -zxvf opencv-3.4.4.tar.gz -C .
    
  3. 安装cmake

      sudo apt-get install cmake
    
  4. 安装依赖

    sudo apt-get install build-essential pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev   libjpeg-dev libswscale-dev libtiff5-dev
    
  5. 进入文件目录,创建build目录并进入

       cd opencv-3.4.4/
        mkdir build
        cd build
    
  6. 使用cmake生成makefile文件

    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_GTK=ON -D OPENCV_GENERATE_PKGCONFIG=YES ..
    

    CMAKE_BUILD_TYPE=RELEASE:表示编译发布版本
    CMAKE_INSTALL_PREFIX:表示生成动态库的安装路径,可以自定义
    WITH_GTK=ON:这个配置是为了防止GTK配置失败:即安装了libgtk2.0-dev依赖,还是报错未安装
    OPENCV_GENERATE_PKGCONFIG=YES:表示自动生成OpenCV的pkgconfig文件,否则需要自己手动生成。。

  7. 编译

      make -j4
    
  8. 安装

      sudo make install
    
  9. 环境配置

    方法一: 配置ld.so.conf文件

    sudo vim /etc/ld.so.conf
    

    在文件中加上一行 include /usr/loacal/lib,这个路径是cmake编译时填的动态库安装 路径加上/lib

    方法二: 手动生成opencv.conf文件

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

    是一个新建的空文件,直接添加路径,同理这个路径是cmake编译时填的动态库安装路径加上/lib

          /usr/local/lib
    

    以上两种方法配置好后,执行如下命令使得配置的路径生效

        sudo ldconfig
    
  10. 配置系统bash

    因为在cmake时,选择了自动生成OpenCV的pkgconfig文件,在/usr/local/lib/pkgconfig路径可以看到文件
    确保文件存在,执行如下命令

     sudo vim /etc/bash.bashrc
    

    在文末添加

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

保存退出,然后执行如下命令使配置生效
source /etc/bash.bashrc

至此,Linux\Ubuntu18.04环境下OpenCV的安装以及配置已经全部完成,可以使用以下命令查看是否安装和配置成功

  pkg-config --modversion opencv4
  pkg-config --cflags opencv4
  pkg-config --libs opencv4

  opencv3
  pkg-config --modversion opencv
  pkg-config --cflags opencv
  pkg-config --libs opencv

测试

新建一个demo.cpp文件,代码如下:

  #include 
  #include 

  using namespace std;
  using namespace cv;

  int main()
 {
  Mat srcImage = imread("opencv.jpg");
  imshow("Display Image window",srcImage);
  waitKey(0);
  return 0;
 }

同级目录放一张图片,名为opencv.jpg,编译

  g++ `pkg-config opencv4 --cflags` demo.cpp  -o demo `pkg-config opencv4 --libs`

  opencv3
  g++ `pkg-config opencv --cflags` demo.cpp  -o demo `pkg-config opencv --libs`

运行:

 ./demo

你可能感兴趣的:(opencv)