深度学习之利用yolov4训练数据集(基于PyCharm实现)

目录

1.YOLOv4简介

1.1YOLOv4检测算法

2. 训练数据集

2.1 标注图像集

2.2 用pycharm训练数据集

3.实验结果

3.1结果

3.2 分析

4.特别说明

4.1可能存在的问题

4.2技术、设备问题

4.3参考文献


1.YOLOv4简介

1.1 YOLOv4检测算法

 YOLOv4检测算法主要是由主干特征提取网络CSPDarknet53、颈部特征融合网络Neck以及检测头Head这三部分组成。其中颈部网络Neck又由路径聚合网络(path aggregation network,PANet)和空间金字塔池化(spatial pyramid pooling,SPP)模块组成,其网络结构如下图所示:

上图展示了YOLOv4目标检测算法的网络框图。该目标检测算法通常可以划分为4个模块,具体包括:输入端、基准网络、Neck网络与Head输出端。

2. 训练数据集

2.1 标注图像集

①这里的主要代码是老师在课堂上提供的,把它下载、解压。

②下载好自己的数据集,保存在"yolov4-pytorch-master\VOCdevkit\VOC2007\JPEGImages"目录下,统一图片格式为.jpg,且下载的图片至少要大于100张。(批量下载图片可以利用Microsoft Edge拓展中的图片批量下载或者利用python代码爬虫,当然,也可以分工合作。)

③win+r打开命令提示符,输入代码下载安装labelimg(目标检测标注工具)。

1.pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple
2.labelimg 

④安装好后,继续在命令提示符内使用命令:labelimg,对图像进行标注。点击Open Dir打开上述已经保存好的图片的文件夹点击Create RectBox手动标注图像、标注动物的名字。

⑤确保每个保存的图与上图两个绿色框里面的内容一致后,点击Save,将标注完后的图片保存在“yolov4-pytorch-master\VOCdevkit\VOC2007\Annotations”目录下面,格式为.xml,依次标注所有图片。)

2.2 用pycharm训练数据集

①环境配置。配置python解释器、下载安装好所需的包和模块。

所需导入的包:

如果提示no module name PIL或者是no module name cv2等,说明这个库没安装。可以打开命令行安装:pip install +包名,缺哪个就下载哪个

import datetime
import os
import numpy as np
import torch
import cv2
from PIL import Image
......

②将“yolov4-pytorch-master\model_data\voc_classes.txt”中的内容修改为自己的类别,比如老虎和狗,那么voc_classes.txt的内容为tiger和dog,多个类别依次往下写。

③依次运行voc_annotation.py-->train.py-->predict.py。

3.实验结果

3.1 结果

将需要预测的图片保存在“yolov4-pytorch-master\img”下,在PyCharm中运行predict.py文件,输入文件地址,格式为:./img/dog.jpg。即可得到如下图所示的结果图。

Input image filename:./img/dog.jpg

3.2 分析

不同网络的LOSS不同,LOSS只是一个参考指标,用于查看网络是否收敛,而非评价网络好坏,LOSS的值不重要,重要的是是否在变小,预测是否有效果。

如果一定要从0开始,那么训练的时候请注意几点:

  • 不载入预训练权重。
  • 不要进行冻结训练,注释冻结模型的代码。

4.特别说明

4.1 可能存在的问题

下载cv2的时候出现错误,主要原因是没有激活环境,要激活对应的conda环境进行安装才可以正常使用

可以通过修改train.py中的189行代码来改变训练数据集的迭代次数,如果数据集过小,训练次数应该不得少于300次。

下载很慢,加镜像源。如下载安装cv2,可在anaconda prompt中输入以下代码,可以使用以下镜像源加快下载速度。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

4.2 技术、设备问题

在运行代码的过程中,使用的是机房的电脑和自己的笔记本电脑,机房的电脑上好多包、库和模块都没有,不仅要重新配置环境,还要下载很多东西。下崩溃了。自己的电脑配置不够,所以还是用机房的了。

4.3 参考文献

[1]苏盈盈,何亚平,喻骏,等.基于改进YOLOv4的轻量化目标检测方法[J/OL].中南民族大学学报(自然科学版),1-8[2024-04-27].https://doi.org/10.20056/j.cnki.ZNMDZK.20240311.

[2]晓红,李静,董诗琪,等.基于改进轻量级SE-Yolov4的热轧钢表面缺陷检测方法[J].湖南科技大学学报(自然科学版),2024,39(01):80-86.DOI:10.13582/j.cnki.1672-9102.2024.01.010.

  • 20
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值