自研rk3566/rk3588+rgbd相机之基础知识介绍---Qt界面开发软件使用介绍

目录

qt是跨平台软件

Qt有qtcreater用于开发程序

Qt显示图像可以用Qimage控件

Qt不仅可以显示图片,也可以显示点云


qt是跨平台软件

可以开发界面程序和软件框架,以及制作3d仿真软件,配合opengles可以实现图形图像开发。本文简要介绍qt开发上位机软件和嵌入式平台开发的使用方法和常见用法。

Qt有qtcreater用于开发程序

以及qtopensourse是跨平台的可以在windows及windows下安装,linux下安装后要指定qmake用于编译qt程序,以及arm-linux-gcc/g++编译器编译c++程序。QwidgetDiolog类用于开发界面,也可以动态生成界面,界面启动主线程,qt有自己的线程函数封装,可以定义声明子线程类,之后在主线程中用构造函数或通过按钮启动子线程。主线程和子线程之间可以通过信号槽方式进行通信。子线程定义并发送信号,主线程绑定接收信号和回调函数处理信号。

Qt显示图像可以用Qimage控件

配合信号槽函数,将接收的图片显示,可以设置显示图片的格式,也可以与opencv配合,对图片处理后进行显示,可以在pro文件中指定头文件和库路径以及库名。qt中可以编译v4l2的接收linux camera相机文件节点linux底层函数,将接收后的内存图片数据放入mat中,再转换为Qimage格式图片即可显示。

Qt不仅可以显示图片,也可以显示点云

利用qt自带的Qwidgetgl函数类和Qwidgetgl控件,定义好shader渲染管线,以及点云格式可以将点云数据显示到界面上。点云显示步骤是初始化函数调用shader声明,传入点云数据,将点云数据点填充数据接口,调用更新点云显示控件数据接口函数,调用刷新点云显示控件数据接口。

       

       

### 配置和搭建RK3566平台上的QT开发环境 #### 准备工作 为了在RK3566平台上成功配置并搭建QT开发环境,需先完成一系列准备工作。这包括但不限于获取必要的软件包、设置合适的编译器以及准备目标板的支持文件。 - **安装依赖项**:确保主机Ubuntu系统已准备好所有必需的构建工具和其他依赖关系。可以通过执行`sudo apt-get update && sudo apt-get install build-essential cmake git libgl1-mesa-dev`来实现这一点[^3]。 - **下载QT源码或二进制包**:访问[Qt官方网站](https://www.qt.io/download-open-source),选择适合嵌入式Linux系统的版本进行下载;也可以通过指定镜像站点加速下载过程,比如中国科学技术大学提供的镜像站[^4]。 #### 编译器的选择与安装 对于RK系列芯片来说,推荐使用GCC作为C/C++编译器。考虑到兼容性和性能优化的需求,建议采用ARM架构专用的交叉编译链路。可以从官方资源库或者其他可信渠道获得适用于RK356X系列处理器的预编译好的工具链,并将其路径添加到环境变量中以便后续调用。 ```bash export PATH=/path/to/toolchain/bin:$PATH ``` #### 构建QT库 一旦上述条件满足,则可着手于实际的QT库构建流程: - 解压所下载的QT压缩包至本地磁盘; - 进入解压后的顶层目录运行configure命令以生成Makefile,期间应指明目标平台参数(如-qpa eglfs),同时指向之前选定的交叉编译器位置; - 执行make指令启动整个项目的编译环节,视具体情况而定可能耗时较长; - 使用make install将最终产物部署到预期的目标文件夹内。 ```bash ./configure -release -opengl es2 -device linux-rk356x-gcc -sysroot /opt/rk-rootfs \ -prefix /usr/local/qt5 -extprefix /home/user/rk_qt_build \ -nomake examples -no-warnings-are-errors -skip webengine make -j$(nproc) sudo make install ``` #### 设置远程调试支持 为了让开发者能够在宿主机端更方便地开展图形界面应用程序的设计工作,在完成了基本的QT环境建设之后还需要额外考虑如何建立有效的远程调试机制。一种常见做法是在RK设备上开启SSH服务允许外部连接进来,再配合VSCode这类集成开发环境中内置的相关扩展来进行断点跟踪等操作[^1]。 #### 创建项目模板 最后一步就是创建一个新的QT工程项目了。利用qmake或是cmake这样的自动化构建管理系统可以帮助快速建立起合理的项目结构框架。下面给出了一段简单的`.pro`文件示例供参考: ```pro # qt_rgbd_show.pro 工程文件 QT += core gui widgets opengl multimedia multimediawidgets CONFIG += c++17 warn_on release_with_debug_info TARGET = RGBDShowApp TEMPLATE = app SOURCES += main.cpp \ mainwindow.cpp HEADERS += mainwindow.h RESOURCES += resources.qrc ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

三十度角阳光的问候

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

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

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

打赏作者

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

抵扣说明:

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

余额充值