摘要:本文介绍了树莓派 CM0 Dev Board 的实现 AI 视觉应用方案:物体识别的项目设计,包括准备工作、环境搭建、YOLO 模型、流程图、关键代码以及效果演示等。
本文介绍了树莓派 CM0 Dev Board 的实现 AI 视觉应用方案:物体识别的项目设计,包括准备工作、环境搭建、YOLO 模型、流程图、关键代码以及效果演示等。
项目介绍
准备工作:包括所需 Python 环境以及软件包的安装部署等;
ONNX 模型:使用 YOLOv5n 等轻量化 ONNX 模型实现物体识别的板端推理。
ONNX
Open Neural Network Exchange (ONNX) 是一个开放的生态系统,为 AI 开发人员提供支持 随着项目的发展选择正确的工具。
官方网站:https://onnx.ai/
ONNX 为 AI 模型(包括深度学习和传统 ML)提供开源格式。它定义了一个可扩展的计算图模型,以及内置运算符和标准的定义 数据类型。
详见:https://github.com/onnx/onnx
YOLO
YOLO(You Only Look Once)是一种流行的目标检测算法,它以其快速和准确性而闻名。YOLO算法的核心思想是将目标检测问题转化为一个回归问题,通过一个单一的卷积神经网络(CNN)直接从输入图像预测边界框和类别概率。
YOLO 的主要优点是速度快,能够实时处理视频流。它还具有较强的通用性,能够迁移到新的领域。
YOLOv5n
YOLOv5n 代表了目标检测方法的进步,源于 Ultralytics 开发的 YOLOv5 模型的基础架构,调整优化了模型架构,从而在目标检测任务中实现了更高的精度-速度权衡。YOLOv5 为那些在研究和实际应用中寻求稳健解决方案的人们提供了高效的解决方案。
详见:https://docs.ultralytics.com/zh/
准备工作
系统安装及环境搭建详见:
硬件连接
若采用 SSH 远程登录操作,则仅需连接电源供电即可;
若采用本地登录,则需连接 HDMI 视频流传输线、USB 键盘连接线等;
库安装
执行指令安装 OpenCV
sudo apt install python3-opencv
安装解析 ONNX 模型所需的 onnxruntime 库,终端执行
sudo apt install python3-pip
sudo pip3 install onnxruntime --break-system-packages
模型下载
下载 模型文件至本地 ./model 文件;
mkdir model
cd model
wget https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5n.onnx
物体识别
采用 YOLOv5n 轻量化的 onnx 模型实现物体识别的本地板端推理,并弹窗显示识别结果。
代码
执行 touch or_onnx.py 指令新建文件,并使用 nano 文本编辑器添加如下代码
代码过长,请查看原文章:
保存代码;
效果
终端执行 python or_onnx.py 弹窗显示物体识别结果:
更多应用场景的识别效果如下
道路
运动
室内
户外
总结
本文介绍了树莓派 CM0 Dev Board 的实现 AI 视觉应用方案:物体识别的项目设计,包括准备工作、环境搭建、YOLO 模型、流程图、关键代码以及效果演示等,为相关产品在 AI 视觉领域的开发设计和快速应用提供了参考。
来源:上海晶珩电子科技
