• 2024-08-12裁剪图像--原始大小变换
    用QPainter画出图像,画出要取出的矩形位置头文件源码如下:CusImageCrop.h点击查看代码`#pragmaonce#include<QObject>#include<QPaintEvent>#include<QLabel>#include<QMutex>#include<QTimer>#pragmaexecution_character_set("utf-8")class
  • 2024-07-18QT中常见QImage、Pixmap、Mat三种图像格式的转换
    写在前面    暑假实习参与了单位的QT项目开发,在过程中遇见了一些困扰以及解决方式,在此记录下来常见图像格式之间的转换    我将他们都封装在了一个类中,代码见下#ifndefUTIL_H#defineUTIL_H#include"qimage.h"#include"QPixmap"#include"opencv2/open
  • 2024-07-10qt 用数据画一个图,并表示出来
    1.概要想用数据绘制一个画面,看有相机到播放的本质是啥。要点  //创建一个QImage对象,指定图像的宽度、高度和格式  QImageimage(width,height,QImage::Format_Grayscale8);  //将像素数据复制到QImage对象中  memcpy(image.bits(),pixelData,width
  • 2024-07-03使用qt 获取一张网络图片,并将这张图片显示在qml 上
    #include<QGuiApplication>#include<QQmlApplicationEngine>#include<QNetworkAccessManager>#include<QNetworkReply>#include<QUrl>#include<QImage>#include<QQuickImageProvider>classImageProvider:publicQQuickI
  • 2024-06-10QT鼠标拖拽方式
    创建按钮,然后添加图片因为按钮是直接继承了ui类的,所以在ui界面直接把按钮进行拖拽就好给按钮添加上图片QPixmap和image的区别:QPixmap:QPixmap主要用于在屏幕上显示图像,通常用于GUI界面中的图像显示。QPixmap优化了对显示设备的访问,因此在显示图像时具有更好的性能。QPi
  • 2024-06-01QImage和QPixmap的区别和使用
    一、基本概念和特点QImage概念:QImage是Qt库中用于处理图像数据的一个类。它提供了直接访问和操作图像像素的接口。特点:可以独立于屏幕分辨率和设备处理图像。支持读取和保存多种图像格式,如PNG、JPEG、BMP等。可以在没有图形界面的情况下使用,例如服务器端图像处理。内部存
  • 2024-05-08Qt合成图片
    需求:要做一个合成签名的功能,在一张图片上贴一张签名图片 voidcomposeSignPic(){QImagesign_img(sign_path);//签名图片QImagewait_compose_sign_img;//等待合成的图片//创建一张空图片,和等待合成的图片一样大小QImagefull_img(wait_co
  • 2024-05-07cv::Mat转QImage导致图像色彩异常
    问题:1QPixmapMainWindow::opencvToQImage(constQString&str)2{3cv::MatcvImage=cv::imread(str.toStdString(),cv::IMREAD_REDUCED_COLOR_2);4cv::MatresizeMat;5cv::resize(cvImage,resizeMat,cv::Size(ui->label->width(),u
  • 2024-04-09QImage 与 Mat 互转
     QImage转MatMatQImage2Mat(QImage&img){cv::Matmat;switch(img.format()){caseQImage::Format_RGB32://一般Qt读入彩色图后为此格式mat=cv::Mat(img.height(),img.width(),CV_8UC4,(void*)img.constBits(),img.bytesPerLine())
  • 2024-04-06OpenCV中表示图像的类Mat在QT里的基本使用
    在Qt中使用OpenCV的Mat类来表示和处理图像是相对简单的,因为Qt和OpenCV都是跨平台的,并且可以很好地在一起工作。以下是如何在Qt项目中使用OpenCV的Mat类的基本步骤:1.在Qt代码中包含OpenCV头文件在Qt的源代码文件中,你需要包含OpenCV的头文件以及opencv统一的命名空间来使用Mat
  • 2024-02-01QVBoxLayout添加图片
    QVBoxLayout添加图片 #include<QApplication>#include<QWidget>#include<QVBoxLayout>#include<QLabel>#include<QImage>#include<QPixmap>intmain(intargc,char*argv[]){QApplicationapp(argc,argv);QWid
  • 2024-01-29Qt QtConcurrent::run()函数的两种写法
    第一种,使用lambda表达式1QFuture<void>future=QtConcurrent::run([=](){2//Codeinthisblockwillruninanotherthread3});4...第二种,使用成员函数调用QByteArray的成员函数split()1//call'QList<QByteArray>QByteArray::split(charsep)c
  • 2023-12-25图像数据格式转换
    TESTHALCON.h#pragmaonce#include<QtWidgets/QWidget>#include<QImage>#include<QObject>#include"..\TEST-HALCON\halcon12\x64\include\halconcpp\HalconCpp.h"usingnamespaceHalconCpp;/****************************
  • 2023-12-08Qt显示OpenCV的单通道图片
    一、概述Qt中显示OpenCV的图片。OpenCV中的Mat默认是3通道图片。但是其灰度图、二值图片会是8位单通道的。示例代码中记录了如何显示二、代码示例#include"ImageUtils.h"MatImageUtils::qImageToMat(QImageqImage){//QImage转Mat三通道图片QImageimage=
  • 2023-11-25将多个png合并成gif动图实践
    将多个png合并成gif动图实践这里用到一个库gif.h下载地址https://github.com/charlietangora/gif-h使用这个库来生成gif挺简单的,下载解压缩后,将gif.h添加到工程这里是用QImage加载完图片后,用gif.h将取得的QImages.bits数据写入到文件中主要实现代码如下:#include<gif.h>...void
  • 2023-11-11格式转换:相机帧void* pBuffer,QImage,cv::Mat,Halconcpp::HObject
    【说明】1、若传递的是指针,则内存共享,其一改变,另一个也被改变。为了避免输入被更改,做了些处理。如QImage2Mat中使用了两个变量mat,out。2、有的存在宽度方向4字节对齐情况,所以做了些处理。如QImage2HObject中让宽度变为4的整数倍。 【相机帧void*pBuffer赋给其他格式】 
  • 2023-10-13QT 给图片添加一层颜色遮罩
    最近公司需求,在一张带有透明度的图片上增加一层颜色遮罩,记录一下。1#include<QImage>2#include<QPainter>34intmain(){5//行数56//加载原始图像7QImageoriginalImage("path/to/your/image.png");89//行数910//创建
  • 2023-09-29QT QPixmap QImage内存泄漏
    无论是在代码中还是在UI中设置icon都会产生内存泄漏大概看了下,好像是QPixmap的data_ptr的引用计数,到不了1/0(查看引用计数,释放后,理论上应回到1)试了下,仅以下两种方式不会产生内存泄漏:1、从XPM加载:img=QPixmap(result);  //result为  staticconstchar*result[]={。
  • 2023-09-19qt图片处理界面
     #ifndefMAINWINDOW_H#defineMAINWINDOW_H#include<QMainWindow>#include<opencv2/opencv.hpp>usingnamespacecv;QT_BEGIN_NAMESPACEnamespaceUi{classMainWindow;}QT_END_NAMESPACEclassMainWindow:publicQMainWindow{Q_OBJECT
  • 2023-08-27qt进行视频二值化 未成功 待改进
    QT+opencv使用videocapture采集视频进行二值化输出_哔哩哔哩_bilibili #ifndefMAINWINDOW_H#defineMAINWINDOW_H#include<QMainWindow>#include<QLabel>#include<QTimer>#include"opencv2/opencv.hpp"#include<iostream>usingnamespacec
  • 2023-04-03QLabel 显示opencv Mat
    QLabel显示opencvMat importcv2fromPyQt5.QtGuiimportQImage,QPixmapfromPyQt5.QtWidgetsimportQLabellabel=QLabel()#LoadtheimageusingOpenCVimage=cv2.imread("path/to/image.png")#ConverttheimagetoaQImageheight,width,
  • 2023-03-25QT绘图类
    QT绘图类QPaint设备类|QtGUI5.15.13绘图设备是指继承QPaintDevice的子类,你可以使用QPainter直接在其上面绘制图形,Qt一共提供了四个这样继承QPaintDevice的绘图
  • 2023-02-24QPaint绘制频谱图基础原理(使用QImage)
    振幅周期固定,产生相应数据周期固定,振幅随机,产生相应数据 使用模拟随机数据 核心代码如下:1#include"thspectrum.h"23#include<math.h>45ThSpectr
  • 2023-02-14在OpenCV图片(cv::Mat格式)输出汉字
    staticvoidputTextZH(constcv::Mat&inMat,constQStringtext,constcv::PointwordCenter,intinWordSize,constcv::ScalarinColor){QImageimage;swit
  • 2023-02-10QImage从VtkImageData中加载16图片 导出PNG格式
    项目背景:1.前后端采用websocket通讯,后端处理得到的结果通过png数据格式返回前端2.常规的8位png图像只能由256个灰阶,动态范围小,不能在前端进行窗宽窗位调节,因此需要使用16