草庐IT

linux+QT+FFmpeg 6.0,把多个QImage组合成一个视频

直接上代码吧:RecordingThread.h#ifndefRECORDINGTHREAD_H#defineRECORDINGTHREAD_H#include"QTimer"#include#include#includeextern"C"{//因为FFmpeg是c语言,QT里面调用的话需要extern"C"#include"libavcodec/avcodec.h"#include"libavformat/avformat.h"#include"libswscale/swscale.h"#include"libavdevice/avdevice.h"#include"libavformat

Qt + OpenCV + Halcon + QScintilla 实现Halcon的脚本引擎功能 (源码)

前言在工业领域中,缺陷检测、目标计数等功能的应用,其过程基本都是见招拆招,没有一个具体的标准,把输入输出接口标准化,过程用脚本引擎代替就可以实现功能的标准模块。一、Qt+OpenCV+Halcon输入输出接口采用Qt+OpenCV来实现,OpenCV需要将采集到的图片转为Halcon的图像接口用于脚本检测,脚本输出的接口需要转换为Qt和OpenCV,用于绘制缺陷或目标的轮廓和标记。OpenCV的Mat转Halcon的HObject:HObjectHMatToHObject(Matimage){HObjectho_obj=HObject();if(image.empty())returnho_o

QT5交叉编译保姆级教程(arm64、mips64)

什么是交叉编译?简单说,就是在当前系统平台上,开发编译运行于其它平台的程序。比如本文硬件环境是x86平台,但是编译出来的程序是在arm64架构、mips64等架构上运行本文使用的操作系统:统信UOS家庭版22.0一、安装QT5:sudoaptupdatesudoaptinstallqtbase5-dev-ysudoaptinstallqtcreator -y二、安装编译所需的组件sudoaptinstallbuild-essentiallibgl1-mesa-devgperf libclang-dev-y#安装python环境(QT中的一些功能、组件需要用到)sudoaptinstallpyt

Qt6教程之三(8 )多进程、进程间通讯和调度

本篇博客从进程的三个方面做大体介绍,欢迎读者朋友评论与交流。所写内容依然还是以适用为主,方法为辅,若需要更加深层次了解进程的朋友可先阅读操作系统原理之类的书籍。进程在日常开发中,更多的用于不同程序之间的交互与通信,需要操作系统作为中间媒介,进程通信方式有很多种,稍后会挑两种最常用的通信方式进行讲解。本篇博客关于进程描述的三个方面分别为:什么是进程? 进程间如何通信?  进程是怎么调度的?一进程进程是程序的一次执行过程,在此过程中,进程会向操作系统申请各种资源(内存、CPU、执行时机),最后进程执行结束后,操作系统回收相关资源,进程也就此消亡。进程与程序的差别:1.进程是一个动态的概念:进程是程

android - QSettings 在 Android 下的 Qt 上无法正常工作

我想在Android上运行的qt应用程序中保存一些用户凭据。我这样使用QSettings:QStringappPath=QCoreApplication::applicationDirPath()+QLatin1Char('/');set=newQSettings(appPath+"test",QSettings::NativeFormat);set->setValue("user/username","NameOfTheUser");set->setValue("user/password","UserPassword");set->sync();我重新启动应用程序并在我拥有的ini

如何从QT上的qtabwidget获取CurrentTabname?

QTabWidget有一个称为的属性currentTabName.我如何访问currentTabName由代码?我需要检查选择哪个选项卡,但是我不能使用标签文本(tabText)因为它是可以翻译的并且可能会更改,我不想使用选项卡索引(currentIndex),因为未来的指数可能会改变。我正在使用QT5.3看答案当克里斯·卡瓦(ChrisKawa)回答这里这是当前小部件的对象名称。从代码我可以得到这样的情况:QStringcurrentTabName=tabWidget->currentWidget()->objectName();笔记:正如文档所建议的那样,请务必检查nullptr使用时ta

Windows下使用QT+OpenCV完成人脸检测(获取摄像头的数据进行检测)

一、环境介绍Windows版本:Win10X64OpenCV版本:2.4.13.6QT版本:5.12二、OpenCV库下载OpenCV官网下载地址:​ ​https://opencv.org​​​  目前官网OpenCV最新的版本是4.2.0,Windows版本的OpenCV在3.X版本后就不带X86的库,只有X64的库,如果需要X86的库,需要自己下载源码去重新编译。由于我的QT软件在安装时没有安装64位的编译器,又不想重新安装64位编译器,就选择了2.X的版本完成开发测试,3.X的版本在添加库的时候非常方便,就一个库。库下载之后,双击运行,解压到指定的目录就行。  接下来要把OpenCV的

【Qt】项目开发遇到问题及解决总结

1.控件的触发:toggle()、triggered()、clicked()区别:都是按钮点击后发射的信号clicked():用于Button发射的信号triggered():用于QAction发射的信号,trigger是一次性的。点击后,无法改变状态。要么是打开,要么是关闭。原型:voidtriggered(boolchecked=false);toggle():用于ChekBox,类似开关。具有2个状态,打开/关闭。使用这个信号,是在这2个状态之间切换。原型:voidtoggled(bool);2.QTTCPServer停止监听后仍能接收数据问题调用tcpserver的close函数后,已

【Qt之QStandardItemModel】使用,tableview、listview、treeview设置模型

1.引入QStandardItemModel类提供了一个通用的模型,用于存储自定义数据。以下是其用法:该类属于gui模块,因此在.pro中,需添加QT+=gui,如果已存在,则无需重复添加。首先,引入头文件:#include2.描述以下介绍很重要,可以慢下心来阅读。QStandardItemModel类提供了一个用于存储自定义数据的通用模型。QStandardItemModel可以用作标准Qt数据类型的存储库。它是模型/视图类之一,是Qt模型/视图框架的一部分。QStandardItemModel提供了一种经典的基于项目的方法来处理模型。QStandardItemModel中的项由QStand

Qt+OpenCV显示图片(Mat转QImage然后显示在QLabel上)

1、概述  此篇主要是记录一下如何将OpenCV集成得到QtCreator中,并将OpenCV的Mat对象转换为QImage并使用qt的api显示图片 a.使用QtCreator开发工具集成OpenCV,在.pro文件中配置环境即可,如下图所示 b.将Mat对象转为QImage对象并使用Qt显示出来的步骤如下:  1.将使用OpenCVimread函数加载一张图片  2.将Mat转为QImage  3.将QImage转为QPixmap  4.将QPixmap放到QLabel上并显示出来2、示例/***调用openCV显示一张图片,让图片的尺寸和窗口尺寸保持一致*@briefMainWindow