当前位置: 代码迷 >> 综合 >> 2.2【YoloV3--pytorch】Part Two:基于Pytorch的YoloV3训练自己的数据集----训练、测试
  详细解决方案

2.2【YoloV3--pytorch】Part Two:基于Pytorch的YoloV3训练自己的数据集----训练、测试

热度:68   发布时间:2023-12-23 13:12:52.0

2.1【YoloV3–pytorch】Part One:基于Pytorch的YoloV3训练自己的数据集----准备数据集、配置文件并下载预训练权重文件

二、训练

按照之前的blog准备就绪后便可以字节开始训练了。

python train.py --data data/voc.data --cfg cfg/yolov3-tiny.cfg --epochs 300 --weights weights/yolov3-tiny.weights

会在weights文件夹下生成best.pt和last.pt,last.pt主要是用来在上次程序中断之后,下次可以继续接着进行训练。
训练结果曲线图如下:(会自动生成在根目录下)
在这里插入图片描述
同时还会在根目录下生成runs这样一个文件夹,可以用tensorboard打开查看其中的loss曲线图,如下:。
在这里插入图片描述
在这里插入图片描述

二、预测

将待测试图像文件放到samples文件夹下,运行:

python detect.py --data data/voc.data --cfg cfg/yolov3-tiny.cfg --weights weights/best.pt

也可指定存放待测试图像的source文件路径,例如:

python detect.py --data data/voc.data --cfg cfg/yolov3-tiny.cfg --weights weights/best.pt --source data/test

测试结果如下:
在这里插入图片描述
从图中可以看到检测框的置信度很低,这是因为所用的网络结构比较简单,训练次数较少。(不过目前只能这样了,毕竟硬件跟不上啊,等嘛时候返校了,就可以在实验室的电脑上可劲造了)

三、测试评估

python test.py --data data/voc.data --cfg cfg/yolov3-tiny.cfg --weights weights/last.pt

结果生成在根目录下。

到此为止,基于pytorch的yolov3训练自己的数据集的实现步骤基本结束了,不过要想细致的理解网络可不是一朝一夕的事儿,后续有新的体会再作进一步更新吧。----->everybody come on.

资源下载链接:

yolov3-tiny.weights下载资源
yolov3-tiny.conv.15下载资源
darknet53.conv.74下载资源
yolov3.weights下载资源
yolov3-spp.weights下载资源

参考资料:

https://github.com/ultralytics/yolov3
https://pytorch.org/get-started/locally/

?????Yolov3的.cfg文件中的参数详解
?????参考Blog1
?????参考Blog2
?????参考Blog3
????参考Blog4
???参考Blog5

  相关解决方案