054、TensorFlow Lite Micro的Person Detection项目:人检测

发布时间:2026/6/15 11:19:53
054、TensorFlow Lite Micro的Person Detection项目:人检测 054、TensorFlow Lite Micro的Person Detection项目:人检测昨晚调试到凌晨三点,板子上的LED死活不按预期亮。明明模型推理返回了“person”标签,置信度0.87,但GPIO就是没反应。最后发现是模型输出的后处理逻辑里,把类别索引和输出张量的维度搞反了——这种低级错误,在PC上跑Python脚本时根本不会暴露,但一上嵌入式就现原形。Person Detection是TFLite Micro最经典的入门项目之一,也是很多智能摄像头、安防设备的基础。今天这篇笔记,我尽量把踩过的坑都摊开说。模型选型:别被MobileNetV1的“轻量”骗了官方推荐的person detection模型通常是基于MobileNetV1的变体,输入尺寸96x96,量化后大约250KB。这个大小在STM32F4系列上勉强能跑,但如果你用的是Cortex-M0或者ESP8266这种资源更紧的芯片,建议换成TinyML Perf的“person_detection_int8”模型,它只有80KB左右。这里踩过坑:我一开始图省事,直接用了官方示例里的model.cc文件。结果发现这个模型是float32的,在只有256KB RAM的板子上根本跑不动。后来换成int8量化版本,推理时间从2.3秒降到了0.8秒——注意,这个0.8秒是包含预处理和后处理的完整流程。工程结构:别把代码全塞在main.c里