学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用

注:本文非标准教程,仅是总结个人学习过程,可能存在纰漏,如有错误之处欢迎留言告知,非常感谢

一、Qt安装:
方法一:官网地址:http://www.qt.io/download/ 下载.run安装包
进入下载文件目录,执行下面的命令

chmod +x qt-creator-文件名.run

随后双击运行 ××.run即可安装
接下来CMake的时候需要qt4,所以还需要执行

sudo apt-get install qt-sdk 

方法二:命令行安装Qt (我用的这种)Creator4.4.1+Qt5.9.1
Colea的公众号里的推文的方法

sudo add-apt-repository ppa:levi-armstrong/qt-libraries-xenial
sudo add-apt-repository ppa:levi-armstrong/ppa
sudo apt-get update
sudo apt-get install qt57creator-plugin-ros

方法三:http://download.qt.io/official_releases/qt/5.9/5.9.0/

二、安装cmake及依赖库

sudo apt-get install cmake
sudo apt-get install build-essential libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev 

测试cmake是否安装成功
查看cmake版本:

cmake --version

三、安装opencv
建议使用GPU版本的opencv,比CPU版本运行更高速
使用GPU版本需先下载CUDA及cuDNN之后再安装配置opencv,详细下载方法参考学习笔记(三)
根据官网安装文档:https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_install.html

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

官网下载 https://opencv.org/releases.html 源码包

unzip opencv-3.4.0.zip

cd到解压后的opencv文件夹目录
cd /home/user_name/opencv-3.4.0
然后执行以下命令

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

同样在build目录中执行:(建议在多个线程中执行)

make -j7

然后就开始跑跑跑
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第1张图片
结束后输入命令

sudo make
sudo make install

然后你就可以在usr/local/lib看到opencv函数库
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第2张图片
接下来配置环境变量
sudo gedit /etc/ld.so.conf.d/opencv.conf
打开该文件后在最后加上/usr/local/lib,
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第3张图片
保存退出后执行:sudo ldconfig

接着配置环境变量:sudo gedit /etc/bash.bashrc
写入
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第4张图片

这样就编译完成啦~

四、配置Qt
1.tools→options
Qt和qmake的路径设好
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第5张图片
2.新建一个程序
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第6张图片

#include 
#include 
#include 
#include 
#include 

using namespace std;
using namespace cv;

int main(int argc, char *argv[])
{
    namedWindow( "src", WINDOW_AUTOSIZE );
    Mat src = imread( "/home/xutian/1.jpg" );
    while(1)
    {
        imshow( "1", src );
        char c =  waitKey(30);
        if( 27==c )
        return 0;
    }
}

学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第7张图片

3.将opencv的头文件、库文件和Qt关联起来
在.pro文件中加上

INCLUDEPATH += /usr/local/include \
                /usr/local/include/opencv \
                /usr/local/include/opencv2

LIBS += /usr/local/lib/libopencv_highgui.so \
        /usr/local/lib/libopencv_core.so    \
        /usr/local/lib/libopencv_imgproc.so

修改后整个pro文件内容如下
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第8张图片
如果报错error:ld returned 1 exit status
这里写图片描述
则检查是否安装步骤漏了什么
如果报错error adding symbols:DSO missing from command line如图
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第9张图片
则在pro文件末尾再加上一行
/usr/local/lib/libopencv_imgcodecs.so.3.4
学习笔记(二)ubuntu16.04下Qt+opencv的安装配置及使用_第10张图片

本文参考博客:http://blog.csdn.net/shawn_ht/article/details/40795039
https://www.cnblogs.com/tornadomeet/archive/2012/07/10/2584702.html

你可能感兴趣的:(学习笔记,配置,opencv)