Qt QImage 显示TIFF格式图片
一,需求
利用Qt 控件 显示 tiff 图片,由于tiff图像深度位96位,3通道,所以无法直接用QImage 显示,QImage 支持24位,因此需要利用Opencv 进行转换。
二,关键点
(1),96位 深度需要利用 IMREAD_UNCHANGED 模式进行加载
Mat image2Draw_mat = imread("depth.tiff",cv::ImreadModes::IMREAD_UNCHANGED);
(2),加载后进行 规一化,然后进行位深 转换,将32f 转成8u
Mat normalize_mat;
normalize(image2Draw_mat, normalize_mat, 0, 500, NORM_MINMAX);
normalize_mat.convertTo(normalize_mat, CV_8U);
(3),因为 opencv 是 bgr格式,所以需要将bgr转成 rgb
cv::cvtColor(normalize_mat, normalize_mat, COLOR_BGR2RGB);
(4),因为原图是3通道,所以qt这边使用 QImage::Format_RGB888
const uchar *pSrc = (const uchar*)image2Draw_mat->data;image2Draw_qt = QImage(pSrc, image2Draw_mat->cols,image2Draw_mat->rows,image2Draw_mat->step,QImage::Format_RGB888);
(5),最后建议使用 QGraphicsView 显示 QImage 这样可以进行缩放,更利用观看。
三,位深度的理解
以3通道图像为例,位深度 显示96位,意思是 一个像素,可以显示的颜色范围为2的96次方种,每个通道32位,也就是4个字节。 而Qt Image 最多支持24位,也就是每个通道位8位 一个字节。因此需要将mat 进行转换(normalize_mat.convertTo(normalize_mat, CV_8U)) 把32转成8。之后就可以利用Qt QImage::Format_RGB888 进行加载了。
Qt QImage 显示TIFF格式图片相关推荐
- 学习QT之显示SVG格式图片
SVG的英文全称是Scalable Vector Graphics,即可缩放的矢量图形.它是有万维网联盟在2000年8月制定的一种新的二维矢量图形格式,也是规范中的网格矢量图形标准,是一个开发的图形标 ...
- Qt显示wmf格式图片
Qt显示wmf格式图片 夸平台的Qt不并不支持Auto CAD的输出图wmf.那么怎么才能在Qt下显示wmf格式图片呢?智能用win32 api了.具体过程下面一一介绍. ...
- 【数字图像处理】一.MFC详解显示BMP格式图片
本文主要是讲述<数字图像处理>系列栏目中的第一篇文章.主要详细介绍了BMP图片格式,同时使用C++和MFC显示BMP格式,主要结合自己的<数字图像处理>课程和以前的项目叙述讲解 ...
- MFC详解显示BMP格式图片
本文主要是讲述<数字图像处理>系列栏目中的第一篇文章.主要详细介绍了BMP图片格式,同时使用C++和MFC显示BMP格式,主要结合自己的<数字图像处理>课程和以前的项目叙述讲解 ...
- OpenCasCade学习笔记(三):加载显示STEP格式图片,并实现平移、缩放和旋转操作
OpenCasCade学习笔记(三):加载显示STEP格式图片,并实现平移.缩放和旋转操作 C3DWidget.h #pragma once#include <QtWidgets/QApplic ...
- 前端img标签展示tiff格式图片
前端img标签展示tiff格式图片 下面展示一些 内联代码片. *html<el-form-item label="参考图片"><img id="img ...
- 用JAI实现对TIF(TIFF)格式图片的合并
用JAI实现对TIF(TIFF)格式图片的合并 方法一: import java.io.File; import java.io.FileOutputStream; import java.io.IO ...
- 请问asp.net网页里能显示tiff格式的图片吗?
我做的存取图片的程序,其它格式的图片都可以显示,可tiff格式的图片总是显示乱码,哪位高手给指点指点是怎么回事?谢谢! 转载于:https://www.cnblogs.com/support/arch ...
- QT QImage显示图片后缀问题,不能显示图片(Image is a null image)
QImage在加载图片的时候是按图片后缀识别图片类型的,加入我们有一张png的图片,但是图片后缀却是jpg,这时候按jpg加载就会出错,所以我们加载图片的时候可以给QImage指定后缀列表 QImag ...
最新文章
- BZOJ 1194: [HNOI2006]潘多拉的盒子 [DP DFA]
- 企业级 SpringBoot 教程 (三)SpringBoot用JdbcTemplates访问Mysql
- 前端人员如何模拟慢网速环境
- ASP.NET-----Repeater数据控件的用法总结
- weblogic查看内存情况
- 【KVM系列08】使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机
- 【计算机组成原理】数据存储的大端和小端
- 一 python编程基础
- eclipse的插件安装
- poj 1269 Intersecting Lines
- Elastic Search 查询语法大全
- cad布局怎么用_【CAD】CAD布局怎么用?
- 三维匹配_为什么你的倾斜摄影三维建模模型效果差,都进来看看
- 校园 计算机网络设置路由器,GSWiFi路由器校园网怎么设置
- python中format使用
- 微信小程序(uni-app)
- 介绍个人计算机水平,计算机个性自我介绍范文
- 店铺定位目的,品牌传播,产品、人群、价格定位
- 通达信量化接口主力进出指标分析
- java春招面试冲刺系列:mysql基础知识超详细复习