Qt 编程指南10 QImage Mat QPixmap转换
//示例 pushButtonOpenPicBig按钮clicked单击动作触发
void Qt_Window::on_pushButtonOpenPicBig_clicked()
{
string filename =GetFileName() ; // 获取图像路径 Mat picMat= imread(filename, 1); // 读取保存为opencv Mat类图像 QPixmap picQPixmap = MatToQT(picMat); //opencv Mat类图像转换QT图像
//Text Browser QT控件 显示图像
ui.labelShow->setPixmap(picQPixmap);
//设置标签的新大小,与像素图一样大
ui.labelShow->setGeometry(picQPixmap.rect()); waitKey(); } //功能:以对话框的打开的模式获取图片目录
//输入: 无
//输出 : 字符型 路径
string GetFileName(){
QString strFileName; //文件名
strFileName = QFileDialog::getOpenFileName(this, tr("打开静态图片"), "",
"Pictures (*.bmp *.jpg *.jpeg *.png *.xpm);;All files(*)"); if (strFileName.isEmpty())
{
//文件名为空,返回
return;
} QTextCodec *code = QTextCodec::codecForName("GB2312");//解决中文路径问题
string filename = code->fromUnicode(strFileName).data();
return filename;
}
// 功能: 将Mat图像 转换为 QT 的图像
//输入: Mat opencv类图像
//输出: QPixmap QT类图像
QPixmap MatToQT(Mat picMat){ QImage picQImage;
QPixmap picQPixmap; cvtColor(picMat, picMat, CV_BGR2RGB);//三通道图片需bgr翻转成rgb picQImage = QImage((uchar*)picMat.data, picMat.cols, picMat.rows, QImage::Format_RGB888); picQPixmap = QPixmap::fromImage(picQImage);
return picQPixmap;
}
Qt 编程指南10 QImage Mat QPixmap转换的更多相关文章
- Qt 编程指南
Qt 编程指南 持续关注一本正在编写的Qt编程指南,期待作者早日完成创作.
- advanced base-scripting guide in chinese(高级Bash脚本编程指南-10)
<高级Bash脚本编程指南>Revision 10中文版 github上链接地址: https://github.com/LinuxStory/Advanced-Bash-Scriptin ...
- Qt 编程指南 8 显示静态小图片和动态大图片
显示控件概览 图片浏览示例 第一行是一个标签控件,objectName 为 labelShow,文本内容清空,因为是用来显示图片用的. 主界面第二行的控件是四个普通按钮 第一个按钮文本是 " ...
- Qt 编程指南 7 添加背景
. #include "QT_Text1.h" #include <QtWidgets/QApplication> #include <QBitmap> i ...
- Qt 编程指南 4 单行编辑控件
从 Qt 设计师界面可以看到常用的 Qt 文本编辑和浏览控件,包括四个: 其中单行编辑控件 QLineEdit 和 普通文本编辑控件 QPlainTextEdit 都是针对最普通的 C++ 字符串编辑 ...
- Qt 编程指南 3 信号和槽沟通
https://qtguide.ustclug.org/ 1 信号和槽 所谓信号槽,简单来说,就像是插销一样:一个插头和一个插座.怎么说呢?当某种事件发生之后,比如,点击了一下鼠标,或者按了某个按键, ...
- Qt 编程指南 1 从Hello World开始
1 简单的hello QT 注意项目和路径不要包含任何中文字符,特殊字符,空格. 只能有英文,数字,下划线,且不能数字开头. //helloqt.cpp #include <QtWidgets/ ...
- Qt 编程指南 9 软件打包
Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑 里无法正常运行.因此 Qt 官方开发环境里自带了一 ...
- Qt 编程指南 3_1 按钮弹窗手动和自动关联示例
触发的两种模式 connect() 和 on_控件ID_控件函数(参数) 两者优缺点对比: 虽然 Qt 有比较好用的自动关联大法,但自动关联不是万能的,尤其是涉及到多个窗体的时候,比如 A 窗体私有按 ...
随机推荐
- js 日期格式转换(转载)
1.当前时间转为 “yyyy-MM-dd HH:MM:SS” function getNowFormatDate() { var date = new Date(); var seperator1 = ...
- Java文件编译出现 “编码 GBK 的不可映射字符”
俗话说,温故而知新.本打算用dos回忆一下基础知识,没想到把自己绊倒了. 用Dos,当然就要回归原始,用记事本啦.下面用一个小练习,演示我遇到的绊脚石.之后,解决了简直笑死. 报错: Java文件编译 ...
- Web前端基础——jQuery(三)
本文主要从以下几方面介绍jQuery应用中的内容: 1 jQuery 节点遍历2 jQuery 中的过滤器3 jQuery 属性操作4 jQuery Dom节点操作5 几个jQuery例子6 jQue ...
- ajax提交form表单问题
form表单提交数据可以省下大量大量获取元素的代码,局部刷新时也可以用ajax提交form表单,但是要先把表单序列化,再把后台javaBean对象序列化,但是你有可能前后台都执行了系列化,但是后台还是 ...
- 重定向,/dev/null, 1>, 2>什么意思?
文件描述符我们常见的就是系统预留的0,1和2这三个,他们的意义分别有如下对应关系: 0 —— stdin(标准输入) 1 —— stdout (标准输出) 2 —— stderr (标准错误) 其中, ...
- Linux常用基本命令:三剑客命令之-awk动作用法(1)
1,多个动作,怎么写? ghostwu@dev:~/linux/awk$ cat host.txt name ip地址 host1 192.168.1.1 host2 192.177.81.1 hos ...
- Python全栈学习_day001作业
Day1作业及默写 1.简述变量命名规范 1. 必须以字母.数字.下划线命名,且不能以数字开头 2. 不能是python的关键字 3. 不能以中文或者拼音作为变量名 4. 命名格式推荐以驼峰式或者下划 ...
- Docker 启动遇到 Error starting daemon: Error initializing network controller 错误
docker 版本 1.10.3 一台装有 docker 的机器重启后,没法启动,/var/log/messages 展示如下错误信息: May 17 11:11:14 gziba-hc03 syst ...
- 自定义基于jquery竖向瀑布流插件
公司新项目做了一个关于图片的板块,网上找了一些瀑布流插件都不是很适合自己,于是就自己造轮子写一个,并封装成插件github 于是就想分享一下,主要是为了更好的学习与记忆. 如果大家进来了,希望能给我g ...
- Jmeter进阶篇之保存测试结果
Jmeter现在真的是一款越来越流行的接口测试工具. 但是通过和老大哥LR相比较,可能有部分同学觉得,LR的图表功能,报告功能不要太强大. 但是小弟jmeter在这方面其实并不差... 今天我们就来学 ...