目标检测自学记录之tensorflow实现YOLO-v1

目录

  • 前言
  • 原理
  • tensorflow实现
    • 相关参考
    • 数据准备
    • 训练
    • 测试
    • 遇到的问题

前言

本文记录我在学习YOLO-v1过程中参考的相关资料以及部分个人理解。

原理

相关理论知识,网络上有许多参考资料,我主要通过这篇博客来学习。

tensorflow实现

我实现的代码都有详细注释,这里不再解释

相关参考

参考blog:
xiaohu版本代码
hizhangp版本代码
参考github:
hizhangp
如何进行分类模型的预训练:
blog

数据准备

下载weight文件YOLO_small
下载voc_07数据集,网上都可以找到

训练

执行train.py文件即可。可以从0开始训练,也可以从以前模型进行训练。

测试

执行test.py文件,即可在测试图片中找到目标进行分类。

遇到的问题

1、当我从0开始训练时,出现了Nan的问题,参考blog ,一般网络层要加BN、l2正则等操作解决。
我的解决方法:开始conv权重初始化时stddev=0.1,从零开始训练模型时出现Nan,后来将stddev改为了0.01,即减少了权重间差异,避免Nan的出现。
2、开始将DECAY_STEPS写成了DECAY_RATE,导致学习率为0。以后注意,显示训练中学习率,防止学习率为0,导致loss不下降,不学习。
3、pycharm上传github参考:blog

你可能感兴趣的:(yolo,tensorflow,目标检测,目标检测)