Qt C++ 在windows上三目运算不断增加内存

今天在做摄像头项目的时候,运行程序很卡

打开任务管理器发现程序内存一直在增加

函数内部无任何的 new 和 malloc操作

最后在nv12转rgb像素转换函数发现是因为三目运算导致内存不断增长

cpp 复制代码
r = r > 255 ? 255 : (r < 0 ? 0 : r);
g = g > 255 ? 255 : (g < 0 ? 0 : g);
b = b > 255 ? 255 : (b < 0 ? 0 : b);

最后替换了if

解决了这个问题

cpp 复制代码
if (r > 255) r = 255; if (r < 0) r = 0;
if (g > 255) g = 255; if (g < 0) g = 0;
if (b > 255) b = 255; if (b < 0) b = 0;

由于平时测试的摄像头分辨率都比较低,所以这个问题不太突出

今天换了个高分辨率的镜头才出现了这个问题

找了很久才定位到三目运算的问题

所以记录一下此问题

相关推荐
笨蛋不要掉眼泪7 分钟前
Java虚拟机:常用参数
java·开发语言·python
2023自学中18 分钟前
imx6ull 开发板 贪吃蛇, C++11 SDL2 无硬件GPU优化版
linux·c++
happy_0x3f20 分钟前
前端应用的离线暂停更新策略
开发语言·前端·php
anscos41 分钟前
为CUDA 代码引入静态分析
c++·工业软件·功能检测
众少成多积小致巨41 分钟前
C++ 规范参考(中)
c++
小保CPP1 小时前
OpenCV C++基于AI模型的场景文本识别(OCR)
c++·人工智能·opencv·计算机视觉·ocr
shylyly_1 小时前
C++中的类型转换
开发语言·c++·匿名对象·隐式类型转换·拷贝优化
jinyishu_1 小时前
哈希表原理与开放定址法C++实现
c++·哈希算法·散列表
北冥you鱼1 小时前
Go 语言新手扫盲:指针 * 和 & 使用场景详解
开发语言·后端·golang
cui_ruicheng1 小时前
Python数据分析(一):数据分析概述与环境搭建
开发语言·python·数据分析