当前位置: 首页 > news >正文

RK3568中使用QT opencv(显示基础图像)

文章目录

  • 一、查看对应的开发环境是否有opencv的库
  • 二、QT使用opencv

一、查看对应的开发环境是否有opencv的库

在开发板中的/usr/lib目录下查看是否有opencv的库:
在这里插入图片描述
这里使用的是正点原子的ubuntu虚拟机,在他的虚拟机里面已经安装好了opencv的库。

二、QT使用opencv

在QT pro文件中添加opencv的支持:

QT += core guiCONFIG += c++11
# 添加 OpenCV 支持
CONFIG += link_pkgconfig
PKGCONFIG += opencv4SOURCES += main.cpp

这两行代码与Qt的构建系统(特别是.pro文件)有关,用来在项目中链接外部库。

具体解释如下:

  1. CONFIG += link_pkgconfig
    这行代码告诉Qt的构建系统使用pkg-config工具来查找和配置项目所需的库。pkg-config是一个工具,用来提供已安装库的信息,如编译器标志和链接器标志,以便构建系统可以正确地链接这些库。

  2. PKGCONFIG += opencv4
    这行代码告诉构建系统通过pkg-config来查找OpenCV 4库(opencv4)。pkg-config会提供有关如何链接OpenCV 4的必要信息,例如需要的编译和链接标志。

总结:这两行的目的是通过pkg-config来自动化获取OpenCV 4的编译和链接信息,以便在Qt项目中正确地链接到OpenCV 4库。

QWidget.cpp:

#include "widget.h"
#include "ui_widget.h"
#include <QLabel>#include <QPixmap>
#include <QDebug>
#include <opencv4/opencv2/opencv.hpp>
#include <QPushButton>Widget::Widget(QWidget *parent): QWidget(parent), label(this), ui(new Ui::Widget)
{ui->setupUi(this);// 读取图像cv::Mat cvImage = cv::imread("/mnt/app/bootloader.png");// 检查图像是否加载成功if (cvImage.empty()) {qWarning("Could not load image");}// 将OpenCV的BGR格式转换为Qt的RGB格式cv::cvtColor(cvImage, cvImage, cv::COLOR_BGR2RGB);// 将OpenCV的Mat转换为QImageQImage qImage(cvImage.data, cvImage.cols, cvImage.rows, cvImage.step, QImage::Format_RGB888);// 将QImage转换为QPixmapQPixmap pixmap = QPixmap::fromImage(qImage);label.setPixmap(pixmap);label.show();
}Widget::~Widget()
{delete ui;
}

QWidget.h:

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QLabel>QT_BEGIN_NAMESPACE
namespace Ui {
class Widget;
}
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTQLabel label;public:Widget(QWidget *parent = nullptr);~Widget();private:Ui::Widget *ui;
};
#endif // WIDGET_H
http://www.lryc.cn/news/529272.html

相关文章:

  • [答疑]DDD伪创新哪有资格和仿制药比
  • C#,入门教程(05)——Visual Studio 2022源程序(源代码)自动排版的功能动画图示
  • DIY QMK量子键盘
  • C++ 堆栈分配的区别
  • 范冰冰担任第75届柏林电影节主竞赛单元评委 共鉴电影佳作
  • Pandas进行MongoDB数据库CRUD
  • 《DeepSeek 实用集成:大模型能力接入各类软件》
  • 适配Android16
  • 如何用 Groq API 免费使用 DeepSeek-R1 70B,并通过 Deno 实现国内访问
  • iperf 测 TCP 和 UDP 网络吞吐量
  • Autogen_core: Model Context
  • SpringBoot AOP 和 事务
  • Ubuntu全面卸载mysql
  • android的gradle
  • 前端开发之jsencrypt加密解密的使用方法和使用示例
  • 电路研究9.2.5——合宙Air780EP中GPS 相关命令使用方法研究
  • Python标准库 - os (3) 调度策略、系统信息
  • 【NLP251】NLP RNN 系列网络
  • 【漫话机器学习系列】067.希腊字母(greek letters)-写法、名称、读法和常见用途
  • 2.文件IO
  • 毕业设计--具有车流量检测功能的智能交通灯设计
  • 【SpringBoot教程】Spring Boot + MySQL + HikariCP 连接池整合教程
  • 设计模式的艺术-策略模式
  • 【memgpt】letta 课程1/2:从头实现一个自我编辑、记忆和多步骤推理的代理
  • 动态规划DP 最长上升子序列模型 合唱队形(题目分析+C++完整代码)
  • 【踩坑】解决Hugging-face下载问题
  • Spring AI 在微服务中的应用:支持分布式 AI 推理
  • 5.3.2 软件设计原则
  • java求职学习day20
  • Python NumPy(8):NumPy 位运算、NumPy 字符串函数