提高Qt开发软件运算性能提升

编译器minGW32,release版本,大部分操作在线程循环里面更容易体现出来

1、网上有说opencv像素处理使用直接获取Mat对象的像素块的数据指针,例如

for (int row = 0; row < h; row++) {

uchar* uc_pixel = image.data + row * image.step;

for (int col = 0; col < w; col++) {

uc_pixel[col] = 255 - uc_pixel[col];

}

和直接像素操作

image.at<uchar>(i,j) = xx; 我发现差异不大;

我还是选择了第二种方法

在Mat赋值操作最好不要使用clone()

2、使用QString::Number()和**QString("%1").arg(xx)**这两种转换方式,我发现第二种效果比较好;

3、两种延时操作,都可以有效防止UI卡顿

Qt中关于一种网上流传延时方法Bug说明_c# tomsecssinceepoch_莫听穿林打叶声儿的博客-CSDN博客

连接面提供两种延时方法,最下面一种明显比第一种要高效;

4、关于串口,网口的数据高速通讯操作

有人喜欢使用Qt信号槽接收数据,我个人很不喜欢,我更喜欢使用单独线程去主动读取串口或网口数据,这样也做到后台数据和前台更新的数据分离,比如下面连接中就是使用线程主动读取串口数据案例;

艾德堡HP-100推拉力计,Qt串口、曲线经典应用(开源)_艾德堡数显拉力机软件-CSDN博客

5、如果有更高效的方法请在评论区留言......

相关推荐
jump_jump4 小时前
深入 JavaScript Iterator Helpers:从 API 到引擎实现
javascript·性能优化
Hello.Reader12 小时前
从零开始安装 Qt完整新手教程(1)
开发语言·qt
娇娇yyyyyy12 小时前
QT编程(19) : Qt 实现自定义delegate
开发语言·数据库·qt
Yupureki13 小时前
《实战项目-个人在线OJ平台》1.项目简介和演示
c语言·数据结构·c++·sql·算法·性能优化·html5
小羊子说14 小时前
关于车机中的升级流程小结(SOC、MCU、4G升级流程)
android·adb·性能优化·车载系统
IDC02_FEIYA15 小时前
SQL Server 2016及SQL Server Management Studio下载,SQL Server 2016数据库安装教程图解
服务器·数据库·性能优化
小羊子说15 小时前
Android 车机开发中常用的adb 脚本(更新中)
android·linux·adb·性能优化·车载系统
不想看见40416 小时前
QAbstractItemModel 自定义实现--Qt 模型 / 视图(MVC)
开发语言·qt·mvc
不想看见40416 小时前
Qt 事件循环与事件过滤器讲解【详细】
开发语言·数据库·qt
FL162386312916 小时前
基于yolov8+pyqt5实现的水尺图像识别与水深计算系统
开发语言·qt·yolo