<p style="text-indent:2em;"> <span style="text-indent:2em;">目标<u>检测</u>在<u>计算机视觉</u>领域中具有重要意义。YOLOv5(You Only Look One-level)是目标检测<u>算法</u>中的一种代表性方法,以其高效性和准确性备受关注,并且在各种目标检测任务中都表现出卓越的性能。本文将详细介绍如何在性能更强的计算机上训练YOLOv5模型,并将训练好的模型部署到<u>树莓派</u>4B上,通过树莓派的摄像头进行实时动物目标检测。</span></p>
讯享网
讯享网一、在<u>电脑</u>上训练YOLOv5模型</p> 1. 安装Anaconda</p> 讯享网在性能更强的计算机上安装Anaconda,方便管理<u>Python</u>环境和依赖。</p> 1.从Anaconda官网(https://www.anaconda.com/products/distribu<u>ti</u>on)<u>下载</u>适用于你<u>操作系统</u>的安装包。</p> 讯享网2.运行安装包并按照提示完成安装。</p> 3.安装完成后,打开终端或命令提示符,输入以下命令验证安装是否成功:</p> 讯享网</p> conda --version</p> 讯享网</p> <img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbtSAXrp6AAAR1VCid1Y949.png" alt="bc139f82-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网2. 创建虚拟环境</p> 创建一个独立的虚拟环境,用于安装YOLOv5及其依赖项:</p> 讯享网</p> conda create -n yolov5 python=3.9 -y conda <u>ac</u>tivate yolov5</p> 讯享网</p> <img src="https://file1.elecfans.com/web2/M00/0B/44/wKgZomcxbtWATjUrAAAKUxKRYmw805.png" alt="bc2a3f4e-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网3. 下载YOLOv5代码</p> 从GitHub上克隆YOLOv5代码仓库:</p> 讯享网</p> git clone https://github.com/ultralytics/yolov5.git cd yolov5</p> 讯享网</p> 4. 安装依赖包</p> 讯享网在虚拟环境中安装YOLOv5所需的依赖包:</p> </p> 讯享网<u>pi</u>p install -r requirements.txt</p> </p> 讯享网<img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbtWAF85EAAErP_zQFOQ461.png" alt="bc375e18-9050-11ef-a511-92fbcf53809c.png" /></p> 5. 准备训练数据</p> 讯享网准备好你的数据集,并确保数据集按照YOLOv5要求的格式进行组织。YOLOv5的训练数据通常包括图像文件和对应的<u>标签</u>文件,标签文件采用YOLO格式,每行表示一个目标对象,包括类别ID和归一化后的边界框坐标。</p> 数据标注的过程通俗来讲就是給图片画框的过程,框出需要识别到的部分,然后打上标签,比如图片里有一头牛,那就把牛框起来然后命名框的标签为牛。</p> 讯享网<img src="https://file1.elecfans.com/web2/M00/0B/44/wKgZomcxbtaAYRGWAArxGn-uYY0412.png" alt="bc5a8438-9050-11ef-a511-92fbcf53809c.png" /></p> 6. 开始训练</p> 讯享网PyCharm打开yolov5项目</p> <br /> 新建项目,项目路径(Location)为GitHub上下载的yolov5项目路径。</p> 讯享网<img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbtaAQnWWAACUim2rbq0259.png" alt="bc9f04dc-9050-11ef-a511-92fbcf53809c.png" /></p> 修改虚拟环境</p> 讯享网<br /> 新建好项目之后,我们打开设置。</p> <img src="https://file1.elecfans.com/web2/M00/0B/44/wKgZomcxbtaASG8TAADp2Unoxis300.png" alt="bcc0bce4-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网找到Python Interpreter,修改为我们在Anaconda自行创建的yolov5的虚拟环境。</p> <img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbteAT1M4AAHX7TtDF9Y060.png" alt="bcdea9e8-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网如果下拉框里没有,我们就在<u>Ad</u>d Interpreter里新增。</p> <img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbteAfVTlAACGFt3yxbk321.png" alt="bd-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网训练测试数据</p> ① 下载预训练模型</p> 讯享网预训练模型地址:https://github.com/ultralytics/</p> 选择你所需要的模型下载即可,这里我选择yolov5s.pt下载。</p> 讯享网下载好之后放到我们yolov5的项目目录下。</p> ② 训练数据</p> 讯享网右键tr<u>ai</u>n.py,点击run运行。</p> <img src="https://file1.elecfans.com/web2/M00/0B/44/wKgZomcxbteAG8QSAAHN5kQ3RdQ647.png" alt="bd3fd0c4-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网<img src="https://file1.elecfans.com/web2/M00/0B/44/wKgZomcxbteAfBESAAHIkJ9j1WI706.png" alt="bd5a242e-9050-11ef-a511-92fbcf53809c.png" /></p> <img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbteACij4AAExzE_jDg0112.png" alt="bd8d06fa-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网运行成功后如图,训练结果保存在runs rainexp文件夹里。</p> <img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbtiANwasAATg1s16kro977.png" alt="bdaf787a-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网其中weights里存储两个训练出的模型,分别为best.pt和last.pt,顾名思义,best.pt为跑出来结果最好的模型。</p> 二、将模型部署到树莓派</p> 讯享网1. 复制模型到树莓派</p> 将训练好的模型文件best.pt复制到树莓派上。可以使用SCP命令或直接将文件复制到<u>SD</u>卡中。例如,使用SCP命令:</p> 讯享网</p> 
scp runs/train/exp/weights/best.pt pi@<your-raspberry-pi-ip>:/home/pi/yolov5/</p> 讯享网</p> 2. 配置树莓派环境</p> 讯享网在树莓派上安装必要的依赖和配置环境。首先,确保树莓派已安装Raspberry Pi OS。</p> 安装Anaconda</p> 讯享网下载并安装Anaconda(或Min<u>ic</u>onda),用于管理Python环境:</p> </p> 讯享网wget https://repo.anaconda.com/archive/Anaconda3-2021.05-<u>Linux</u>-x86_64.sh bash Anaconda3-2021.05-Linux-x86_64.sh</p> </p> 讯享网安装过程中按照提示操作,并将Anaconda添加到系统PATH中。</p> 创建虚拟环境并安装YOLOv5</p> 讯享网</p> conda create -n yolov5 python=3.9 -y conda activate yolov5 git clone https://github.com/ultralytics/yolov5.git cd yolov5 pip install -r requirements.txt</p> 讯享网</p> 三、通过摄像头进行实时检测</p> 讯享网1. 配置摄像头</p> 确保树莓派连接了摄像头模块,并启用摄像头<u>接口</u>。在树莓派终端中运行以下命令进入Raspberry Pi配置工具:</p> 讯享网</p> sudo raspi-config</p> 讯享网</p> 选择Interface Options,然后选择Camera,启用摄像头接口。重启树莓派以使配置生效。</p> 讯享网2. 运行实时检测</p> 在YOLOv5项目目录下,使用以下命令运行实时检测脚本:</p> 讯享网</p> python detect.py --weights best.pt --source 0</p> 讯享网</p> --source 0指定使用摄像头作为输入源。检测结果将实时显示在屏幕上,并保存到runs/detect/exp目录中。</p> 讯享网<img src="https://file1.elecfans.com/web2/M00/0B/44/wKgZomcxbtiAWpn9AARZbRfV8Jw856.png" alt="bddc6d08-9050-11ef-a511-92fbcf53809c.png" /></p> <img src="https://file1.elecfans.com/web2/M00/0C/30/wKgaomcxbtiAVUUwAAQh7Nb-9bY411.png" alt="be067332-9050-11ef-a511-92fbcf53809c.png" /></p> 讯享网四、总结</p> 通过以上步骤,我们成功地在性能更强的计算机上训练了YOLOv5模型,并将训练好的模型部署到树莓派4B上,利用树莓派的摄像头实现了实时动物目标检测。这一过程展示了从环境配置、数据准备、模型训练到模型部署和实时推理的完整流程。通过本文的介绍,相信读者能够掌握在树莓派上部署YOLOv5进行动物目标检测的完整流程。这一技术在<u>智能家居</u>、安防监控、农业监测等领域具有广泛的应用前景。希望本文能够为你的项目开发提供帮助和参考。</p> 讯享网</p>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/196607.html