基于Pytorch搭建的Yolov4目标检测

本文档详细介绍了使用Anoconda搭建Pytorch环境,配置Yolov4模型进行目标检测的全过程。首先,通过Anconda管理python和相关库,确保兼容性。接着,利用VOC数据集进行模型训练,包括数据集的预处理、训练参数设置及训练过程。在训练过程中,遇到并解决了python版本、库兼容性、CUDA安装等问题。训练完成后,进行了模型预测并展示了预测结果。实验总结了常见错误及解决办法。

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

目录

一.实验环境搭建

 

 二.Yolov4大致结构

 三.训练模型

 

四.实验总结


一.实验环境搭建

  1. 下载Anoconda管理相关环境,将pytorch环境搭建在Anoconda上,经过多次实验,由于python用的3.6版本,最终较为兼容的版本是torch1.4.0和torchvision0.5.0
  2. 安装Visual Studio再安装Cudnn和CUDA
  3. Pytorch环境中其他库的安装, qscipy==1.2.1  numpy==1.17.0   matplotlib==3.1.2opencv_python==4.1.2.30tqdm==4.60.0 Pillow==8.2.0  h5py==2.10.0

 

 二.Yolov4大致结构

 三.训练模型

  1. 数据集准备:利用VOC数据集进行训练

如图所示,Annotation中存放标签文件,JPEGImages存放图片文件。

2.利用github上yolo4相关仓库,打开对应文件夹

利用VScode编辑器打开文件夹如图所示:

 

3.处理数据集

如图所示,打开voc_annotation.py将annotation_mode设置为2,目的是获得训练用2007_train.txt以及2007_val.txt。此文件中的classes_path需要指向检测类别对应的文件,本实验用的VOC数据集,路径为根目录下model_data中voc_classes.txt文件,如果是训练自己建立的数据集,可以在model_data中建立一个新的txt文件并将classes_path指向其路径即可。

4.开始训练

打开train.py文件,如图所示:

此文件中的classes.path需要对应voc_annotation.py中的classes.path,再将预权重文件放入model_data中,设置好后开始训练,如图所示

 

训练多个Epoch后,权值文件会生成到根目录中的logs里。

5.训练结果预测

训练结果预测需要先打开根目录下的yolo.py文件设置相关路径,如图所示:

 将model_path和classes_path路径设置为对应logs中在上一步骤训练生成的权值文件和model_data中的txt文件。然后运行根目录下的predict.py文件,结果如下图所示:

输入图片路径结果如下图: 

 

 

 

 

四.实验总结

实验运行报错非常多,大致总结为以下几个原因:

  1. python版本和库中numpy版本不兼容,尝试互降版本兼容。
  2. Classes_path路径错误,导致训练报错。
  3. CUDA安装失败,原因为未提前安装Visual Studio
  4. Future未安装,安装即解决。
  5. 未载入预权值文件。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值