//示例 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转换的更多相关文章

  1. Qt 编程指南

    Qt 编程指南 持续关注一本正在编写的Qt编程指南,期待作者早日完成创作.

  2. advanced base-scripting guide in chinese(高级Bash脚本编程指南-10)

    <高级Bash脚本编程指南>Revision 10中文版 github上链接地址: https://github.com/LinuxStory/Advanced-Bash-Scriptin ...

  3. Qt 编程指南 8 显示静态小图片和动态大图片

    显示控件概览 图片浏览示例 第一行是一个标签控件,objectName 为 labelShow,文本内容清空,因为是用来显示图片用的. 主界面第二行的控件是四个普通按钮 第一个按钮文本是 " ...

  4. Qt 编程指南 7 添加背景

    . #include "QT_Text1.h" #include <QtWidgets/QApplication> #include <QBitmap> i ...

  5. Qt 编程指南 4 单行编辑控件

    从 Qt 设计师界面可以看到常用的 Qt 文本编辑和浏览控件,包括四个: 其中单行编辑控件 QLineEdit 和 普通文本编辑控件 QPlainTextEdit 都是针对最普通的 C++ 字符串编辑 ...

  6. Qt 编程指南 3 信号和槽沟通

    https://qtguide.ustclug.org/ 1 信号和槽 所谓信号槽,简单来说,就像是插销一样:一个插头和一个插座.怎么说呢?当某种事件发生之后,比如,点击了一下鼠标,或者按了某个按键, ...

  7. Qt 编程指南 1 从Hello World开始

    1 简单的hello QT 注意项目和路径不要包含任何中文字符,特殊字符,空格. 只能有英文,数字,下划线,且不能数字开头. //helloqt.cpp #include <QtWidgets/ ...

  8. Qt 编程指南 9 软件打包

    Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑 里无法正常运行.因此 Qt 官方开发环境里自带了一 ...

  9. Qt 编程指南 3_1 按钮弹窗手动和自动关联示例

    触发的两种模式 connect() 和 on_控件ID_控件函数(参数) 两者优缺点对比: 虽然 Qt 有比较好用的自动关联大法,但自动关联不是万能的,尤其是涉及到多个窗体的时候,比如 A 窗体私有按 ...

随机推荐

  1. js------科学计数法转换为正常小数

    // toD.js文件export default (val) => { const e = String(val) let rex = /^([0-9])\.?([0-9]*)e-([0-9] ...

  2. [转]Angular 4 *ngIf/Else

    本文转自:http://tylerscode.com/2017/03/angular-4-ngifelse/ As you may know it wasn’t that many months ag ...

  3. DotNetCore学习-1.读取Json配置并绑定到配置类实例

    DotNetCore的程序的配置不再完全局限于XML文件,增加更加通用的Json配置. 读取Json配置文件的类主要在Microsoft.Extensions.Configuration命名空间下,创 ...

  4. MVC中使用JQuery方式进行异步请求和使用自带方式进行异步请求

    在MCV中使用异步请求可以很很高效地进行前台和后台的数据传递,在这里,笔者为初学者介绍两种在MVC中常用的异步请求处理方式. 在这里,我们通过在一个页面中放置一个按钮来异步获取当前服务器端的系统时间为 ...

  5. UdPloyer交付系统设计思路

    宏观愿景: 一键搞定项目依赖环境,将软件交付过程管理化,实现DevOps研发测试运维一体化. 一.一站式版本交付生命周期管理  业务线[私有权限] 1.SVN源码交付 合主干.版本归档.拉分支.版本回 ...

  6. 每个JavaScript工程师都应懂的33个概念

    摘要: 基础很重要啊! 原文:33 concepts every JavaScript developer should know 译文:每个 JavaScript 工程师都应懂的33个概念 作者:s ...

  7. 判断api请求方式

    $curl_request = $_SERVER['REQUEST_METHOD']; //获取请求方式 if($curl_request == 'POST'){ echo post; }else i ...

  8. python自动化开发-3

    python里的集合 1.集合的概念 集合(set):把不同的元素组成一起形成集合,是python基本的数据类型.set集合,是一个无序且不重复的元素集合. 2.集合的主要作用 1)去重 举例说明: ...

  9. Mobile First! Wijmo 5 之 架构

    CSDN移动开发频道率先报道的<Mobile First!jQuery UI组件集Wijmo五年最大更新>引起开发者极大关注. 本文就开发者关心的话题之一架构,展开叙述. Wijmo 5是 ...

  10. MySQL 性能优化--优化数据库结构之优化数据类型

    MySQL性能优化--优化数据库结构之优化数据类型   By:授客  QQ:1033553122   优化数字数据(Numeric Data) l   对于唯一ID或其它可用字符串或数字表示的值,选择 ...