ubuntu18.04安装QT5.9.2并用QT进行opencv的C++开发展示一个demo(手把手,完成每一步)

我的上一个教程记录了在ubuntu18.04下载配置vscode和opencv环境,默认电脑的opencv环境已经安装;

1.接下来将安装QT5.9.2

1.1 如果无所谓安装哪个qt版本(会自动安装当前时间点,最新的qt版本),可以命令行安装:

sudo apt-get update
sudo apt-get install qt5-default qtcreator

1.2 若想安装特定版本QT

例如 QT5.9.2(你想装啥版本,就该我的链接就是了),进入qt官网下载安装包:https://download.qt.io/archive/qt/5.9/5.9.2/
如果你想装5.9.9(好像真的有这个…)那你要进的网站就是:https://download.qt.io/archive/qt/5.9/5.9.9/

1.2.1 下载qt-opensource-linux-x64-5.9.2.run

在这里插入图片描述

1.2.2 安装QT

在安装包位置右键打开终端,输入如下内容:

sudo chmod a+x qt-opensource-linux-x64-5.9.2.run
sudo ./qt-opensource-linux-x64-5.9.2.run

配置环境变量

sudo gedit /usr/bin/qtcreator

在配置中写入如下代码

#!/bin/sh
export QT_HOME=/opt/Qt5.9.2/Tools/QtCreator/bin/
$QT_HOME/qtcreator $*

然后给其赋予可操作权限

sudo chmod a+x  /usr/bin/qtcreator

终端输入qtcreator,正常出现qt界面则安装完成

qtcreator

2 在ubuntu18.04下用QT进行opencv的C++开发展示一个demo

2.1 在QT中,建立opencv的C++工程文件

1.在终端输入qtcreator,打开qt

qtcreator

2.点击左上角File->New File or Project (或者在QT软件中用快捷键ctrl+n也可以)
3.依次选中Application->Qt Widgets Application->右下方的choose
在这里插入图片描述
然后可以命名你的工程文件、并为其选则路径
在这里插入图片描述
->Next>在这里插入图片描述
->Next>
在这里插入图片描述

->Next>
在这里插入图片描述
->Finish
全部完成后,现在你的文件结构如图:
在这里插入图片描述
接下来主要是要修改test2.pro和mainwindow.cpp文件(这里我不动main.cpp了,用这个是可以轻易用到QT的图形界面):

test2.pro文件:
主要改动是在最后一行添加:

INCLUDEPATH +="usr/local/include/" #为了让qt能找到你ubuntu系统中的一些库

#LIBS +=`pkg-config --cflags --libs opencv` #我看到网上有教程说这样可以,但是我测试这个不行
LIBS += /usr/local/lib/libopencv_highgui.so \ #主要是引入opencv的库,如果你安装过程和我上一次教程一致,那就没问题
        /usr/local/lib/libopencv_core.so    \
        /usr/local/lib/libopencv_imgproc.so \
        /usr/local/lib/libopencv_imgcodecs.so

我的完整test2.pro文件如下所示:

#-------------------------------------------------
#
# Project created by QtCreator 2022-09-22T19:23:37
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = test2
TEMPLATE = app

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0


SOURCES += \
        main.cpp \
        mainwindow.cpp

HEADERS += \
        mainwindow.h

FORMS += \
        mainwindow.ui
INCLUDEPATH +="usr/local/include/"

#LIBS +=`pkg-config --cflags --libs opencv`
LIBS += /usr/local/lib/libopencv_highgui.so \
        /usr/local/lib/libopencv_core.so    \
        /usr/local/lib/libopencv_imgproc.so \
        /usr/local/lib/libopencv_imgcodecs.so

点击mainwindow.ui
在这里插入图片描述
拖动一个pushbutton到白板
在这里插入图片描述
并双击这个,改名为show image,然后右击go
在这里插入图片描述

然后选择clicked(),然后点ok
在这里插入图片描述
主要会为mainwindow.cpp添加一个窗口函数

void MainWindow::on_pushButton_clicked()
{
}

在这里插入图片描述
mainwindow.cpp文件:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QMessageBox>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_clicked()
{
    //cv::Mat test_image =cv::imread("test_img.jpg");
    //test_img.jpg 这个图片是放到了我的工作文件夹下的!你可以随便放一张别的图片,记得要改路径或者命名
    //或者可以用绝对路径
    cv::Mat test_image =cv::imread("/home/smile/Documents/code/qt/hellocv/模板匹配/test2/test_img.jpg");
    if(!test_image.data)
    {

        QMessageBox msg;
        msg.setText("could not load image");
        msg.exec();
    }
    cv::namedWindow("test_image",cv::WINDOW_AUTOSIZE);
    cv::imshow("test_image",test_image);
}

你可以把test_img.jpg文件保存到你的工程文件目录下:test_img.jpg
我当前的工程文件目录视角:
在这里插入图片描述

2.2 在QT中,编译并运行刚刚建立的C++工程文件

1.先把可能存在的老编译文件删掉:Build->Clean Project“test2”
在这里插入图片描述
2.对我们刚刚写好的程序进行编译
Build->Run qmake
在这里插入图片描述
save all 然后等待编译成功
在这里插入图片描述
然后点击左下角的倒数第三个绿色的三角形(是锤子的上面的上面)
在这里插入图片描述
在这里插入图片描述
然后弹出了一个窗口
在这里插入图片描述
点击之后
在这里插入图片描述
如果你放置图片的路径不正确就会有
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大家好我是科林

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值