1、立项背景和目标:
随着物联网与边缘计算快速发展,嵌入式设备承担智能识别任务的需求日益增长。树莓派凭借低成本、易部署优势成为边缘识别常用载体,但受限于算力,复杂模型难以直接部署。本项目在Windows下基于YOLOv5训练轻量化目标检测模型,支持人脸及5类以上日常物品识别,部署至树莓派4结合摄像头实现实时视频流识别,验证从训练到嵌入式端落地的完整链路,为嵌入式AI识别提供可行方案。
2、软件功能、核心功能模块:
系统包含三大核心模块:①目标检测模块——基于YOLOv5实现人脸及日常物品实时检测与定位,输出边界框坐标和类别标签;②人脸识别子模块——实现指定人脸库的身份识别与匹配;③实时视频流处理模块——调用树莓派摄像头完成帧采集、预处理及模型推理,画面叠加标注结果。最终系统帧率5FPS以上,检测mAP≥80%,人脸识别准确率≥85%。
3、业务流程、功能路径描述:
用户启动树莓派执行主程序→系统初始化摄像头并采集实时视频流→每帧图像经尺寸归一化预处理→加载本地YOLOv5轻量化模型推理→输出目标类别、置信度、边界框→OpenCV叠加矩形框和标签至原始画面→HDMI输出至显示器。形成“采集→推理→渲染→输出”闭环流水线,用户无需额外操作即可持续获得识别反馈。
1、整体架构和设计思路,不同模块使用的技术栈:
系统采用分层架构:数据与训练层(Windows端)+ 硬件与部署层(树莓派端)。算法选用YOLOv5,兼顾速度与精度;训练基于PyTorch + Python,Windows平台完成数据标注、训练与调优。数据集含5类目标(人脸、凳子、键盘、杯子、手机),使用LabelImg标注并实施数据增强。模型导出轻量版本部署至树莓派,运行环境为Raspbian Linux + Python + OpenCV + PyTorch,通过CSI摄像头驱动采集实时画面。
2、“我”的负责模块和结果(尽可能量化):
本人独立负责全流程:构建含5类目标、800+张标注图片的数据集(数据增强后等效2000+张);在Windows完成YOLOv5s训练与调优(lr=0.001,300轮),模型压缩至15MB;完成树莓派系统烧录、摄像头配置及环境搭建,编写约300行推理主程序。最终系统帧率5-8 FPS,mAP≈82%,人脸识别准确率≥85%,全部达标。
3、“我”遇到的难点、坑,和解决方案:
①摄像头驱动不兼容导致无法拍照:排查为接口接触不良与驱动版本不匹配,更换CSI接口并升级固件解决;②树莓派软件源访问慢:更换清华/阿里国内镜像源,分步安装大体积库避免超时;③初始模型45MB,推理帧率不足2FPS:裁剪YOLOv5s通道数并减少网络深度,结合ONNX导出与量化,压缩至15MB,帧率提升至5-8 FPS;④数据集标注不均导致手机类识别偏低:针对性补拍该类300张并修正标注,各类别AP趋于均衡。