目標(biāo)檢測在計(jì)算機(jī)視覺領(lǐng)域中具有重要意義。YOLOv5(You Only Look One-level)是目標(biāo)檢測算法中的一種代表性方法,以其高效性和準(zhǔn)確性備受關(guān)注,并且在各種目標(biāo)檢測任務(wù)中都表現(xiàn)出卓越的性能。本文將詳細(xì)介紹如何在性能更強(qiáng)的計(jì)算機(jī)上訓(xùn)練YOLOv5模型,并將訓(xùn)練好的模型部署到樹莓派4B上,通過樹莓派的攝像頭進(jìn)行實(shí)時(shí)動(dòng)物目標(biāo)檢測。
一、在電腦上訓(xùn)練YOLOv5模型
1. 安裝Anaconda
在性能更強(qiáng)的計(jì)算機(jī)上安裝Anaconda,方便管理Python環(huán)境和依賴。
1.從Anaconda官網(wǎng)(https://www.anaconda.com/products/distribution)下載適用于你操作系統(tǒng)的安裝包。
2.運(yùn)行安裝包并按照提示完成安裝。
3.安裝完成后,打開終端或命令提示符,輸入以下命令驗(yàn)證安裝是否成功:
conda --version
2. 創(chuàng)建虛擬環(huán)境
創(chuàng)建一個(gè)獨(dú)立的虛擬環(huán)境,用于安裝YOLOv5及其依賴項(xiàng):
conda create -n yolov5 python=3.9 -y conda activate yolov5
3. 下載YOLOv5代碼
從GitHub上克隆YOLOv5代碼倉庫:
git clone https://github.com/ultralytics/yolov5.git cd yolov5
4. 安裝依賴包
在虛擬環(huán)境中安裝YOLOv5所需的依賴包:
pip install -r requirements.txt
5. 準(zhǔn)備訓(xùn)練數(shù)據(jù)
準(zhǔn)備好你的數(shù)據(jù)集,并確保數(shù)據(jù)集按照YOLOv5要求的格式進(jìn)行組織。YOLOv5的訓(xùn)練數(shù)據(jù)通常包括圖像文件和對(duì)應(yīng)的標(biāo)簽文件,標(biāo)簽文件采用YOLO格式,每行表示一個(gè)目標(biāo)對(duì)象,包括類別ID和歸一化后的邊界框坐標(biāo)。
數(shù)據(jù)標(biāo)注的過程通俗來講就是給圖片畫框的過程,框出需要識(shí)別到的部分,然后打上標(biāo)簽,比如圖片里有一頭牛,那就把牛框起來然后命名框的標(biāo)簽為牛。
6. 開始訓(xùn)練
PyCharm打開yolov5項(xiàng)目
新建項(xiàng)目,項(xiàng)目路徑(Location)為GitHub上下載的yolov5項(xiàng)目路徑。
修改虛擬環(huán)境
新建好項(xiàng)目之后,我們打開設(shè)置。
找到Python Interpreter,修改為我們?cè)贏naconda自行創(chuàng)建的yolov5的虛擬環(huán)境。
如果下拉框里沒有,我們就在Add Interpreter里新增。
訓(xùn)練測試數(shù)據(jù)
① 下載預(yù)訓(xùn)練模型
預(yù)訓(xùn)練模型地址:https://github.com/ultralytics/
選擇你所需要的模型下載即可,這里我選擇yolov5s.pt下載。
下載好之后放到我們yolov5的項(xiàng)目目錄下。
② 訓(xùn)練數(shù)據(jù)
右鍵train.py,點(diǎn)擊run運(yùn)行。
運(yùn)行成功后如圖,訓(xùn)練結(jié)果保存在runs rainexp文件夾里。
其中weights里存儲(chǔ)兩個(gè)訓(xùn)練出的模型,分別為best.pt和last.pt,顧名思義,best.pt為跑出來結(jié)果最好的模型。
二、將模型部署到樹莓派
1. 復(fù)制模型到樹莓派
將訓(xùn)練好的模型文件best.pt復(fù)制到樹莓派上。可以使用SCP命令或直接將文件復(fù)制到SD卡中。例如,使用SCP命令:
scp runs/train/exp/weights/best.pt pi@
2. 配置樹莓派環(huán)境
在樹莓派上安裝必要的依賴和配置環(huán)境。首先,確保樹莓派已安裝Raspberry Pi OS。
安裝Anaconda
下載并安裝Anaconda(或Miniconda),用于管理Python環(huán)境:
wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh bash Anaconda3-2021.05-Linux-x86_64.sh
安裝過程中按照提示操作,并將Anaconda添加到系統(tǒng)PATH中。
創(chuàng)建虛擬環(huán)境并安裝YOLOv5
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
三、通過攝像頭進(jìn)行實(shí)時(shí)檢測
1. 配置攝像頭
確保樹莓派連接了攝像頭模塊,并啟用攝像頭接口。在樹莓派終端中運(yùn)行以下命令進(jìn)入Raspberry Pi配置工具:
sudo raspi-config
選擇Interface Options,然后選擇Camera,啟用攝像頭接口。重啟樹莓派以使配置生效。
2. 運(yùn)行實(shí)時(shí)檢測
在YOLOv5項(xiàng)目目錄下,使用以下命令運(yùn)行實(shí)時(shí)檢測腳本:
python detect.py --weights best.pt --source 0
--source 0指定使用攝像頭作為輸入源。檢測結(jié)果將實(shí)時(shí)顯示在屏幕上,并保存到runs/detect/exp目錄中。
四、總結(jié)
通過以上步驟,我們成功地在性能更強(qiáng)的計(jì)算機(jī)上訓(xùn)練了YOLOv5模型,并將訓(xùn)練好的模型部署到樹莓派4B上,利用樹莓派的攝像頭實(shí)現(xiàn)了實(shí)時(shí)動(dòng)物目標(biāo)檢測。這一過程展示了從環(huán)境配置、數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練到模型部署和實(shí)時(shí)推理的完整流程。通過本文的介紹,相信讀者能夠掌握在樹莓派上部署YOLOv5進(jìn)行動(dòng)物目標(biāo)檢測的完整流程。這一技術(shù)在智能家居、安防監(jiān)控、農(nóng)業(yè)監(jiān)測等領(lǐng)域具有廣泛的應(yīng)用前景。希望本文能夠?yàn)槟愕捻?xiàng)目開發(fā)提供幫助和參考。
-
目標(biāo)檢測
+關(guān)注
關(guān)注
0文章
209瀏覽量
15611 -
樹莓派
+關(guān)注
關(guān)注
116文章
1707瀏覽量
105631
原文標(biāo)題:基于YOLOv5和樹莓派4B的動(dòng)物目標(biāo)檢測
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論