10-嵌入式检测常见问题:卡顿、掉帧、误检、漏检排查
嵌入式检测常见问题:卡顿、掉帧、误检、漏检排查做嵌入式视觉项目,代码跑起来只是第一步。真正让人头秃的是各种"玄学问题":明明测试好的模型,现场就是卡顿;实验室精度 95%,客户现场误检满天飞。这篇把实际项目中踩过的坑系统梳理一遍。卡顿问题排查卡顿的表现是画面一卡一卡的,不像视频那样流畅。根本原因是处理速度跟不上采集速度,帧之间时间间隔不均匀。排查方向1:CPU/NPU 占用过高先用htop看 CPU 占用:htop如果某个核心长期 100%,就是瓶颈所在。常见情况:ONNX Runtime 默认用所有 CPU 核心,和采集线程抢资源解决:限制推理线程数,留核心给采集和显示session_options=ort.SessionOptions()session_options.intra_op_num_threads=4# 不要用满所有核心NPU 占用可以用 RK 的rknn_server工具查看,或者看/sys/kernel/debug/rknpu下的状态文件。排查方向2:内存不足嵌入式板子内存就 2G/4G,Python + OpenCV + ONNX Runtime 本身就吃几百 MB,再开几个大数组就紧张了。free-h# 看 available 列,如果低于 200MB 就危险了内存不足时系统会频繁 swap(交换到磁盘),磁盘 IO 变成瓶颈,整个系统变卡。解决:预分配内存,复用 buffer,避免频繁np.zeros关闭不必要的后台进程如果模型大,考虑量化到 INT8 减少内存占用排查方向3:IO 瓶颈CSI 摄像头走 MIPI 总线一般没问题,USB 摄像头在带宽紧张时会卡。特别是 USB 2.0(480Mbps 理论带宽),640×480 30FPS YUYV 格式需要约 147Mbps,两个摄像头就超了。排查方法:# 查看USB设备lsusb-t# 看USB版本,480M=USB2.0, 5000M=USB3.0解决:USB 摄像头用 MJPEG 格式压缩传输,减少带宽多摄像头分到不同 USB 总线上用v4l2-ctl --list-formats-ext看摄像头支持的格式# 用MJPEG格式采集,CPU解码cap.set(cv2.CAP_PROP_FOURCC,cv2.VideoWriter_fourcc('M','J','P','G'))掉帧问题分析掉帧和卡顿相关但不同。卡顿是"慢",掉帧是"丢"。摄像头出了 30 帧,你只处理了 15 帧,丢了 15 帧。排查方向1:采集线程跟不上如果VideoCapture.read()本身就很慢,问题在采集层。# 测采集速度cap=cv2.VideoCapture(0)times=[]for_inrange(100):t=time.perf_counter()ret,frame=cap.read()times.append(time.perf_counter()-t)avg=sum(times)/len(times)*1000print(

相关新闻

09-多线程推理架构:图像采集、推理、显示解耦

09-多线程推理架构:图像采集、推理、显示解耦

多线程推理架构:图像采集、推理、显示解耦 为什么需要多线程 前面几篇的代码都是单线程的:读一帧 → 预处理 → 推理 → 后处理 → 显示 → 读下一帧。这些步骤串行执行,总耗时是各步骤时间之和。 假设各环节耗时:读取 5ms + 预处理 3ms + 推理 60ms + 后处理 5ms + 显示…

2026/8/10 2:28:12 阅读更多 →
08-推理性能优化:帧率提升、CPU/NPU 占用优化

08-推理性能优化:帧率提升、CPU/NPU 占用优化

推理性能优化:帧率提升、CPU/NPU 占用优化 为什么要性能优化 嵌入式端最大的特点就是算力有限。一块 RK3588,CPU 6 核看着还行,但跑个 YOLOv8n 640 输入,CPU 推理也就 10FPS 出头。放到产品场景,10FPS 可能不够: 无人售货柜需要快速响应开门关门,检测慢了用户体验差 工…

2026/8/10 2:28:12 阅读更多 →
Unity动态加载BMP图片的三种方案:从原生API到手动解析

Unity动态加载BMP图片的三种方案:从原生API到手动解析

1. 项目概述:为什么Unity加载BMP是个“问题”?如果你在Unity项目里处理过图片资源,大概率会直接把.png或.jpg文件拖进Assets文件夹,然后通过Sprite或Texture2D来使用。整个过程丝滑流畅,Unity引擎在背后帮你处理了格式…

2026/8/10 2:27:12 阅读更多 →

最新新闻

游戏关卡状态管理与动态难度实现:以Unity持久化与事件触发为例

游戏关卡状态管理与动态难度实现:以Unity持久化与事件触发为例

在实际游戏开发或游戏机制分析中,关卡设计、状态管理和难度控制是核心挑战。以“挑战小黄人快跑果酱工厂泡泡糖V4.6版第572关金字塔第二次进入尖刺地带”这个具体场景为例,它背后涉及的是游戏进程的持久化、关卡状态的重置与恢复、特定障碍物的触发逻辑以…

2026/8/10 3:22:39 阅读更多 →
Python集合与字典:高效数据结构解析与应用

Python集合与字典:高效数据结构解析与应用

1. Python数据类型全解析:集合与字典篇在Python编程中,理解数据类型是构建任何程序的基础。前两篇我们已经探讨了数字、字符串、列表和元组等基础类型,这次我们把焦点放在集合(set)和字典(dict)这两个强大的数据结构上。它们不仅是Python的核…

2026/8/10 3:22:39 阅读更多 →
5分钟上手Hermes Agent插件开发:从零构建AI助手扩展能力

5分钟上手Hermes Agent插件开发:从零构建AI助手扩展能力

1. 项目概述:为什么你需要关注 Hermes Agent 插件开发?如果你正在寻找一种方法,让你手头的 AI 助手(无论是 ChatGPT、Claude 还是本地部署的大模型)能力瞬间翻倍,比如让它能直接操作你的电脑软件、自动处理…

2026/8/10 3:22:39 阅读更多 →
iOS审核4.3a条款避坑指南与代码差异化实践

iOS审核4.3a条款避坑指南与代码差异化实践

1. iOS审核4.3a条款深度解析最近在开发者社区里,关于苹果App Store审核条款4.3a的讨论又热了起来。这个被称为"马甲包杀手"的条款,让不少开发者吃了苦头。作为经历过多次4.3a拒审的老兵,我想分享一些最新实战经验和避坑指南。4.3a条…

2026/8/10 3:22:39 阅读更多 →
AI/Vibe Coding:从手工作坊到智能工厂的软件生产革命

AI/Vibe Coding:从手工作坊到智能工厂的软件生产革命

1. 从“手工作坊”到“流水线”:一场正在发生的软件生产革命最近和几个技术团队负责人聊天,话题总绕不开一个词:AI/Vibe Coding。有人觉得这是花架子,是“面向KPI编程”的新变种;也有人焦虑,担心自己那点写…

2026/8/10 3:22:39 阅读更多 →
如何在5分钟内快速掌握XHS-Downloader:小红书无水印下载神器完整指南

如何在5分钟内快速掌握XHS-Downloader:小红书无水印下载神器完整指南

如何在5分钟内快速掌握XHS-Downloader:小红书无水印下载神器完整指南 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品…

2026/8/10 3:21:38 阅读更多 →

日新闻

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南 【免费下载链接】graphql-css A blazing fast CSS-in-GQL™ library. 项目地址: https://gitcode.com/gh_mirrors/gr/graphql-css GraphQL-CSS是一个基于GraphQL的CSS-in-GQL™库&#xff0…

2026/8/10 0:00:02 阅读更多 →
告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南 【免费下载链接】kiss-translator A simple, open source bilingual translation extension & Greasemonkey script (一个简约、开源的 双语对照翻译扩展 & 油猴脚本) 项目地址: https://gitcode.com/…

2026/8/10 0:00:02 阅读更多 →
BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案 【免费下载链接】BepInEx.ConfigurationManager Plugin configuration manager for BepInEx 项目地址: https://gitcode.com/gh_mirrors/be/BepInEx.ConfigurationManager 你是否曾经因为游戏插件的复杂…

2026/8/10 0:00:02 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/10 1:05:29 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/10 1:05:29 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/10 1:05:29 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/10 1:05:29 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →