Ubuntu14.04下Qt5+opencv3.0安装和配置

一、Qt5安装
如果Ubuntu系统是64位,直接从Qt官网(如下图)上下载qt-opensource-linux-x64-5.6.3.run,之后添加执行权限运行安装即可。但是如果ubuntu系统是32位,官网上并没有32位的安装包,经过网上一番搜寻,通过以下方法可以安装上。
这里写图片描述
以下是执行步骤:

sudo apt-get install build-essential(这是需要的工具)
sudo apt-get install cmake qt5-default qtcreator 
sudo apt-get install qmake

通过以上三个步骤,不出现意外情况Qt已经完成安装。
二、Opencv3.0安装
首先找到openCV的官网把最新的openCV包下载到ubuntu里,下载地址:https://opencv.org/releases.html
根据自己的需要,选择合适的版本,然后选择图中的【Sources】,点击进行下载。
这里写图片描述
下载完成后,在下载目录中执行解压命令进行解压:

unzip opencv-3.0.0.zip

解压完毕,接下来开始编译Opencv了。首先进入opencv的目录中,在其目录下新建文件夹,文件夹名字随意,文件夹作用在于存放编译后的文件。

cd opencv-3.0.0
mkdir release

进入新建的release文件中,执行cmake命令,其中usr/local是lib文件的存放目录;

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

完成上述步骤后,继续输入指令:

sudo make

这一步可能会执行很长时间,亲测大概需要20分钟,主要看电脑的配置。完成后继续执行以下命令:

sudo make install

这一步也可能需要点时间,执行完毕即编译完成,可以在usr/local/lib下看到编译好的opencv函数库,如下图所示:
这里写图片描述
接下来需要配置opencv的环境变量,通知执行命令:

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

在打开的文件中输入/usr/local/lib,然后点击保存退出,如下图所示:
这里写图片描述
接着配置环境变量:

sudo gedit /etc/bash.bashrc

在打开的文件中输入以下内容,点击保存并退出。

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

这里写图片描述
三、opencv+Qt测试
打开Qt Creator,新建一个控制台工程,如下图:
这里写图片描述
工程新建完成后,点击.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_imgcodecd.so.3.0 

添加完成,记得按下Ctrl+S保存,之后在其他文件中添加相关头文件才能显示包含路径。在新建的工程目录下(即main.cpp文件所在的目录中),放一张图片用于测试,之后在main.cpp文件中添加测试代码;

#include <QCoreApplication>  
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>  
#include <opencv2/imgproc/imgproc.hpp>  
using namespace cv;    
int main(int argc, char *argv[])  
{    
    namedWindow( "src", WINDOW_AUTOSIZE );  
    Mat src1 = imread( "/home/cai/qtcode/test/firefox1.jpg" );  
    while(1)  
    {  
        imshow( "src", src1 );  
        char c =  waitKey(30);  
        if( 27==c )  
            return 0;  
    }  
}  

这里有个地方需要注意,之前看了网上很多教程,在imread中读取文件时,如果文件放在工程目录下,直接使用文件名即可读取,但我在测试的时候,始终报错(如下图)
这里写图片描述
使用图片的绝对路径(如下图所示的路径),则可以正常运行,打开的图片如下图所示。该问题的参考文章:http://answers.opencv.org/question/18135/opencv-error-assertion-failed-sizewidth0-sizeheight0-in-unknown-function/
这里写图片描述
测试的程序比较简单,如果能正常执行,则以上的安装和配置过程即已成功。

猜你喜欢

转载自blog.csdn.net/u011831771/article/details/78482306