參考項目
c??????????????GitHub - PeterH0323/Smart_Construction: Base on YOLOv5 Head Person Helmet Detection on Construction Sites,基于目標檢測工地安全帽和禁入危險區(qū)域識別系統(tǒng),????附 YOLOv5 訓練自己的數(shù)據(jù)集超詳細教程????2021.3新增可視化界面??
注意:我習慣先把pytorch安裝了,這樣能減少很多問題,哈哈
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
================================分界線=================================
目錄
一、常見錯誤
1、梯度爆炸問題
2、gpu內(nèi)存不足
3、張量計算使用設(shè)備不一致問題(一)
二、項目運行
1、圖片識別
2、視頻流識別
一、常見錯誤
跑YOLOv5遇到的問題_runtimeerror: a view of a leaf variable that requi_Pysonmi的博客-CSDN博客
python train.py --img 640 --batch 16 --epochs 10 --data ./data/custom_data.yaml --cfg ./models/custom_yolov5.yaml --weights ./weights/yolov5s.pt
1、梯度爆炸問題
報錯原因
這個錯誤是由于在執(zhí)行in-place操作時,使用了一個需要梯度的葉節(jié)點變量視圖(view)。在PyTorch中,如果一個變量需要梯度,那么它的視圖也會繼承這個屬性。而in-place操作是對變量進行原地操作,即直接修改變量的值,這樣會導致梯度信息的丟失或不一致。
解決方法
最簡單粗暴的方法是找到models文件夾下的yolo.py文件,在第149下面添加with torch.no_grad(): 如下圖:
2、gpu內(nèi)存不足
解決辦法:
3、張量計算使用設(shè)備不一致問題(一)
模型和數(shù)據(jù)都分別放入了GPU中,將數(shù)據(jù)和模型打印出來也在GPU上、運行時GPU的顯存確實有被占但依然報這個錯誤。
解決辦法:
無意在這里看到的,剛好解決了,真是隨便解決了,感謝cctv,感謝csdn,感謝這位大佬
來源:
yolov5_obb報錯合集_while-L的博客-CSDN博客
4、張量計算使用設(shè)備不一致問題(二)
can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.
解決辦法:
nice
二、項目運行
1、圖片識別
python detect.py --source ./inference/test/02.jpg --weight ./weights/helmet_head_person_s.pt
2、視頻流識別
python detect.py --source rtsp://127.0.0.1:8554/stream --weights ./weights/helmet_head_person_s.pt
使用5s模型進行訓練,內(nèi)存占用2G,3060顯卡性能去到20%,CPG占20%左右。文章來源:http://www.zghlxwxcb.cn/news/detail-660620.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-660620.html
到了這里,關(guān)于使用yolov5進行安全帽檢測填坑指南的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!