YOLOv4+tensorflow2.0训练自己的数据

本文介绍了如何在tensorflow2.0环境下配置YOLOv4的训练环境,包括从安装anaconda、创建tensorflow2.0-gpu虚拟环境、安装CUDA和cudnn到安装tensorflow GPU版。接着,文章详细讲解了如何下载权重文件并转换,以及在数据集上进行训练和测试,包括图片和视频的检测。最后,提供了数据集制作和配置文件修改的指导,以便使用自己的数据进行训练。

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

一、环境配置

1.1 实验源码

在YOLOv4原文给出了基于Darknet的实验源码【下载地址】(若链接不可用,请自行复制下面这个网址:https://github.com/AlexeyAB/darknet),该源码核心部分是利用**C++**写的,但是大部分学习目标检测的人都习惯使用python语言,因为python语言提供了大量的框架,更加的简便。因此,要读懂这份源码可能会有一些困难。
为了方便其他研究者,作者在上述源码下方给出了基于其他框架的代码链接,当然也包括了基于tensorflow实现的源码【下载地址】,本篇文章使用的是tensorflow框架中的第一份源码。
在这里插入图片描述
下载后直接解压就行,解压出来是下面这样的:
在这里插入图片描述

1.2 环境要求

在本文使用的源码中,作者明确指出了,改源码使用的是tensorflow2.0版本,所以在实验之前,需要保证自己电脑上装的是2.0版本的tensorflow,如果你的电脑上装的是1.0版本的,则需要提升tensorflow的版本,因为2.0版本和1.0版本在一些函数的调用上会有所不同,如果使用1.0版本的tensorflow来运行该代码,改错会改到让你怀疑人生。所以,还是乖乖的换2.0版本吧!!!
这里我使用的tensorflow版本是2.3.0,搭配的Keras版本是2.3.1
我使用的是anaconda来搭建环境,主要步骤如下:

1.2.1 安装anaconda

anaconda的安装步骤见另一篇文章:Anaconda 安装教程

1.2.2 在anaconda中创建tensorflow2.0-gpu虚拟环境

为了不影响其他搭建好的编译环境,这里选择重新创建一个虚拟环境,在anaconda中创建虚拟环境的方法见另一篇文章:anaconda中创建虚拟环境

1.2.3 安装CUDA和cudnn

由于模型比较大,需要使用GPU进行训练,使用GPU训练就需要安装CUDA和cudnn,具体的安装方法可以参考我的另一篇文章:CUDA和cudnn的安装

1.2.4 1.4 安装tensorflow GPU版

由于模型比较大,需要在gpu下运行,所以在装tensorflow的时候需要装gpu版本的,由于该源码要求使用tensorflow2.0版本,所以这里我装的是tensorflow-gpu2.3.0
第一步:打开命令提示符
第二步:激活tensorflow2.0-gpu环境(我装的虚拟环境取名为tensorflow2.0-gpu),输入命令:

activate tensorflow2.0-gpu

第三步:安装tensorflow-gpu,输入命令:

pip install  tensorflow-gpu==2.3.0

然后就是等待安装完成,可能需要一定的时间。
第四步:测试tensorflow-gpu是否安装成功,接着上一步,先输入命令打开python编译环境:

python 

再输入命令导入tensorflow模块,需要注意的是,虽然装的是tensorflow-gpu,但是我们在导入模块的时候仍然使用的是tensorflow:

import tensorflow as tf

若能成功导入模块,则说明安装成功,否则就需要查看在哪里出了错,重新安装了。
另外还可以输入以下命令来查看tensorflow的版本:

tf.__version__

二、环境测试

在训练自己的数据集之前,先测试一下能不能利用作者训练的好的权重进行而检测。

2.1 下载权重文件

测试之前需要准备YOLOv4权重文件,可以去百度云自行提取,提取密码:o6hd
将下载的权重文件yolov4.weights放到tensorflow-yolov4-tflite-master\data文件夹下
在这里插入图片描述

2.2 权重文件转换

在这一步需要将前面下载的权重文件yolov4.weights转换成在tensorflow环境下使用的文件类型,打开命令提示符,进入主目录(tensorflow-yolov4-tflite-master\):
在这里插入图片描述
输入下面的命令:

python save_model.py --weights ./data/yolov4.weights --output ./checkpoints/yolov4-416 --input_size 416 --model yolov4 

运行结束后,将会在tensorflow-yolov4-tflite-master\checkpoints文件夹下产生一个yolov4-416文件夹

评论 63
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值