YOLOv3的使用

本文详细介绍YOLOv3在Darknet框架下的配置与训练流程,包括如何利用预训练权重进行迁移学习,以及在Keras版本中解决早停问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

YOLOv3官方是用的darknet深度学习框架。

若想快速上手,使用官方的权重,可以直接参考官方的网站:https://pjreddie.com/darknet/yolo/

keras版YOLOv3可以参考博客:https://blog.csdn.net/Patrick_Lxc/article/details/80615433

keras版YOLOv3的github地址:https://github.com/qqwweee/keras-yolo3

注意:

1. yolov3.cfg文件

从0开始训练自己的模型,则不需要下面的修改步骤,而如果想用迁移学习思想,用已经预训练好的权重接着训练,则需要下面的修改步骤。

IDE里直接打开cfg文件,ctrl+f搜 yolo, 总共会搜出3个含有yolo的地方。

每个地方都要改3处,filters:3*(5+len(classes));

                                    classes: len(classes) = 1,我只识别一种,所以为1

                                    random:原来是1,显存小改为0   

如果要用预训练的权重接着训练,则需要执行以下代码:然后执行原train.py就可以了。原train.py中有加载预训练权重的代码,并冻结部分层数,在此基础上进行训练。可以修改冻结层数。

python convert.py -w yolov3.cfg yolov3.weights model_data/yolo_weights.h5

这个在github和参考的文章中均提到。

如果不用预训练的权重,上一步不用执行(执行也没影响),但是下面的train.py需要修改,改为如下所示(代码出处为上文提到的参考博客中):直接复制替换原train.py即可

参考博客https://blog.csdn.net/m0_37857151/article/details/81330699

2.keras版的yolov3中训练出现early_stopping(早停)

出现早停,可以吧回调函数(callback)删了。

操作如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值