Qt实用技巧:使用Qt加载超大图片的耗时测试

简介: Qt实用技巧:使用Qt加载超大图片的耗时测试

若该文为原创文章,未经允许不得转载

原博主博客地址:https://blog.csdn.net/qq21497936

原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062

本文章博客地址:https://blog.csdn.net/qq21497936/article/details/85042037

各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究

红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

 

Qt开发专栏:实用技巧(点击传送门)

 

需求

       某机器人项目中,需要加载构建的地图,此处仅测试直接加载图片的时间。

 

相关博客

《QT三大绘图类:QPixmap/QImage/QPicture》:https://blog.csdn.net/qq21497936/article/details/79231365

 

测试代码

QString path;
path = "./map/1.png";
QFileInfo fileInfo;
fileInfo.setFile(path);
qDebug() << __FILE__ << __LINE__ << "Load file:" << path << " size:" << fileInfo.size();
qDebug() << __FILE__ << __LINE__ << "QImage start load, " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
if(!_image.load(path))
{
    qDebug() << __FILE__ << __LINE__ << "Failed to QImage load path:" << path;
}
qDebug() << __FILE__ << __LINE__ << "QImage end load,   " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
qDebug() << __FILE__ << __LINE__ << "QPixmap start load," 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
if(!_pixmap.load(path))
{
    qDebug() << __FILE__ << __LINE__ << "Failed to QPixmap load path:" << path;
}
qDebug() << __FILE__ << __LINE__ << "QPixmap end load,  " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
path = "./map/2.png";
fileInfo.setFile(path);
qDebug() << __FILE__ << __LINE__ << "Load file:" << path << " size:" << fileInfo.size();
qDebug() << __FILE__ << __LINE__ << "QImage start load, " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
if(!_image.load(path))
{
    qDebug() << __FILE__ << __LINE__ << "Failed to QImage load path:" << path;
}
qDebug() << __FILE__ << __LINE__ << "QImage end load,   " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
qDebug() << __FILE__ << __LINE__ << "QPixmap start load," 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
if(!_pixmap.load(path))
{
    qDebug() << __FILE__ << __LINE__ << "Failed to QPixmap load path:" << path;
}
qDebug() << __FILE__ << __LINE__ << "QPixmap end load,  " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
path = "./map/3.pgm";
fileInfo.setFile(path);
qDebug() << __FILE__ << __LINE__ << "Load file:" << path << " size:" << fileInfo.size();
qDebug() << __FILE__ << __LINE__ << "QImage start load, " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
if(!_image.load(path))
{
    qDebug() << __FILE__ << __LINE__ << "Failed to QImage load path:" << path;
}
qDebug() << __FILE__ << __LINE__ << "QImage end load,   " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
qDebug() << __FILE__ << __LINE__ << "QPixmap start load," 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");
if(!_pixmap.load(path))
{
    qDebug() << __FILE__ << __LINE__ << "Failed to QPixmap load path:" << path;
}
qDebug() << __FILE__ << __LINE__ << "QPixmap end load,  " 
         << QDateTime::currentDateTime().toString("hh:MM:ss:zzz");

 

测试结果

       

 

拓展

       

 

原博主博客地址:https://blog.csdn.net/qq21497936

原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062

本文章博客地址:https://blog.csdn.net/qq21497936/article/details/85042037


相关文章
|
1月前
|
机器学习/深度学习 PyTorch 算法框架/工具
目标检测实战(一):CIFAR10结合神经网络加载、训练、测试完整步骤
这篇文章介绍了如何使用PyTorch框架,结合CIFAR-10数据集,通过定义神经网络、损失函数和优化器,进行模型的训练和测试。
101 2
目标检测实战(一):CIFAR10结合神经网络加载、训练、测试完整步骤
|
4月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
182 1
Qt(C++)开发一款图片防盗用水印制作小工具
|
1月前
|
测试技术 Python
自动化测试项目学习笔记(三):Unittest加载测试用例的四种方法
本文介绍了使用Python的unittest框架来加载测试用例的四种方法,包括通过测试用例类、模块、路径和逐条加载测试用例。
62 0
自动化测试项目学习笔记(三):Unittest加载测试用例的四种方法
|
1月前
|
机器学习/深度学习 人工智能 并行计算
StableDiffusion-01本地服务器部署服务 10分钟上手 底显存 中等显存机器 加载模型测试效果 附带安装指令 多显卡 2070Super 8GB*2
StableDiffusion-01本地服务器部署服务 10分钟上手 底显存 中等显存机器 加载模型测试效果 附带安装指令 多显卡 2070Super 8GB*2
33 0
|
3月前
|
NoSQL Linux Android开发
内核实验(三):编写简单Linux内核模块,使用Qemu加载ko做测试
本文介绍了如何在QEMU中挂载虚拟分区、创建和编译简单的Linux内核模块,并在QEMU虚拟机中加载和测试这些内核模块,包括创建虚拟分区、编写内核模块代码、编译、部署以及在QEMU中的加载和测试过程。
208 0
内核实验(三):编写简单Linux内核模块,使用Qemu加载ko做测试
|
3月前
|
计算机视觉
使用QT显示OpenCV读取的图片
使用QT显示OpenCV读取的图片
76 1
|
4月前
|
监控 Python
`pytest-qt` 是一个用于在 Qt 应用程序中进行 GUI 测试的 pytest 插件。
`pytest-qt` 是一个用于在 Qt 应用程序中进行 GUI 测试的 pytest 插件。
|
5月前
Qt绘图(线条、椭圆、矩形、图片滚动)
Qt绘图(线条、椭圆、矩形、图片滚动)
370 3
|
5月前
|
运维 Java 测试技术
Spring运维之boo项目表现层测试加载测试的专用配置属性以及在JUnit中启动web服务器发送虚拟请求
Spring运维之boo项目表现层测试加载测试的专用配置属性以及在JUnit中启动web服务器发送虚拟请求
47 3
|
4月前
测试语雀图片嵌入表格(不用通过)
测试语雀图片嵌入表格(不用通过)