记录YOLOv5使用过程中碰到的一些问题。

下载yolov5

git clone https://github.com/ultralytics/yolov5

打开cmd命令框,cd到yolov5目录下,安装依赖环境。

pip install -r requirements.txt

训练测试

python detect.py --source data\images\zidane.jpg --weights yolov5s.pt --conf 0.25

显示如下结果:

 torch-1.10.2+cpu CPU,为什么没有使用GPU?原来是pytorch的版本不对。我机器上torchvision的版本为0.11.3。

查看cuda版本

 nvcc -V

可看到CUDA的版本号为10.0。

打开requirements.txt文件,可以看到文件中要求的torch>=1.7.0 和 torchvision>=0.8.1版本。    

torch、 torchvision和python之间的版本关系。https://github.com/pytorch/vision#installation

torchtorchvisionpython
main / nightlymain / nightly>=3.7<=3.10
1.12.00.13.0>=3.7<=3.10
1.11.00.12.0>=3.7<=3.10
1.10.20.11.3>=3.6<=3.9
1.10.10.11.2>=3.6<=3.9
1.10.00.11.1>=3.6<=3.9
1.9.10.10.1>=3.6<=3.9
1.9.00.10.0>=3.6<=3.9
1.8.20.9.2>=3.6<=3.9
1.8.10.9.1>=3.6<=3.9
1.8.00.9.0>=3.6<=3.9
1.7.10.8.2>=3.6<=3.9
1.7.00.8.1>=3.6<=3.8
1.7.00.8.0>=3.6<=3.8
1.6.00.7.0>=3.6<=3.8
1.5.10.6.1>=3.5<=3.8
1.5.00.6.0>=3.5<=3.8
1.4.00.5.0==2.7>=3.5<=3.8
1.3.10.4.2==2.7>=3.5<=3.7
1.3.00.4.1==2.7>=3.5<=3.7
1.2.00.4.0==2.7>=3.5<=3.7
1.1.00.3.0==2.7>=3.5<=3.7
<=1.0.10.2.2==2.7>=3.5<=3.7

 查找对应的关系  Previous PyTorch Versions | PyTorch

# CUDA 9.2
conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=9.2 -c pytorch

# CUDA 10.0
conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch

# CPU Only
conda install pytorch==1.2.0 torchvision==0.4.0 cpuonly -c pytorch

因为我的python版本为3.6.5,我最后选择的版本 cu101+torch1.7.1+torchvision0.8.2

下载torch-1.7.1+cu101和torchvision-0.8.2+cu101这2个文件安装,离线包下载地址 https://download.pytorch.org/whl/torch_stable.html

pip install F:\torch-1.7.1+cu101-cp36-cp36m-win_amd64.whl
pip install F:\torchvision-0.8.2+cu101-cp36-cp36m-win_amd64.whl

安装成功后,再执行训练脚本

python detect.py --source data\images\zidane.jpg --weights yolov5s.pt --conf 0.25

这时使用的就是gpu执行了。

训练指令

 python train.py --data fruit_training/dataset.yaml --cfg fruit_training/yolov5s.yaml --weights yolov5s.pt --batch-size 4 --epochs 100

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐