Qt+OpenCV显示图片(Mat转QImage然后显示在QLabel上)
2023-09-14 09:05:26 时间
1、概述
此篇主要是记录一下如何将OpenCV集成得到Qt Creator中,并将OpenCV的Mat对象转换为QImage并使用qt的api显示图片
a.使用Qt Creator开发工具集成OpenCV,在.pro文件中配置环境即可,如下图所示
b.将Mat对象转为QImage对象并使用Qt显示出来的步骤如下:
1.将使用OpenCV imread函数加载一张图片
2.将Mat转为QImage
3.将QImage转为QPixmap
4.将QPixmap放到QLabel上并显示出来
2、示例
/**
* 调用openCV显示一张图片,让图片的尺寸和窗口尺寸保持一致
* @brief MainWindow::MainWindow
* @param parent
*/
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
Mat src = imread("C:\\Users\\wei.yang\\Downloads\\girl.jpg");
//imshow("girl",src);
QImage dst = QImage(src.data,src.cols,src.rows,src.step,QImage::Format_BGR888);
this->setFixedSize(QSize(dst.width(),dst.height()));//设置窗口为固定尺寸
QLabel *label = new QLabel();//创建一个label
label->setParent(this);//将其父类指向当前窗口,在关闭窗口的时候此label会跟着销毁
label->setFixedSize(QSize(dst.width(),dst.height()));//设置label为固定尺寸
label->setScaledContents(true);//
//label->resize()
label->setPixmap(QPixmap::fromImage(dst));//在label显示图片
}
3、显示效果
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓
相关文章
- Python 图像处理 OpenCV (10):图像处理形态学之顶帽运算与黑帽运算
- OpenCV每日函数 K-Means聚类算法进行颜色量化
- OpenCV每日函数 计算摄影模块(3) HDR动态范围成像算法
- Opencv学习笔记 - 关于OpenCV的UMat 类
- 【OpenCV-Python】教程:1-3 画图
- Qt中使用OpenCV修改图片局部颜色算法优化
- Qt调用 OpenCV 显示图片
- Qt的QImage 与 OpenCV的Mat 之间的转换
- OpenCV图像像素映射
- 使用QT显示OpenCV读取的图片
- 使用opencv读入并显示一幅彩色图像,灰度化并显示,用canny算子得到图像边缘并显示
- QT 之Opencv视频播放(进度显示以及拖拽)
- OpenCV在Qt中显示视频的两种方法
- Qt+Opencv视频播放
- fedora 编译安装opencv 4.5.2 —— 筑梦之路
- 在OpenCV里学习常见问题汇编6
- 在OpenCV里学习常见问题汇编2
- 在OpenCV里使用姿态估算
- Opencv项目实战:05 物体检测
- 【OpenCV 例程200篇】59. 非线性滤波—双边滤波
- 人脸检测实战终极:使用 OpenCV 和 Python 进行人脸对齐
- 文本检测实战:使用OpenCV实现文本检测(EAST 文本检测器)
- (1)Python-OpenCV视频帧间差分、高斯混合建模、背景差分提取前景目标轮廓、KCF目标跟踪、Meanshift算法跟踪