YOLOX训练数据集(VOC)

1.环境配置

(1)安装依赖的环境

pip3 install -r requirements.txt

(2)通过setup.py安装一些库文件

python setup.py develop

(3)下载apex文件

下载apex:https://github.com/NVIDIA/apex

将下载的文件解压到项目根目录

YOLOX训练数据集(VOC)

cd apex-master
pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" .

(4)下载pycocotools

这个应该已经下载好了,这里就不介绍了~

2.测试tools/demo.py

环境搭建好后,下载官方的预训练模型(https://github.com/Megvii-BaseDetection/YOLOX)

预训练权重的下载链接在官方代码的描述中。

这里以yolox_s.pth文件,将权重文件放在根目录下进行测试,这里以控制台命令行形式测试(我也是新生,直接修改demo.py中的参数,然后直接运行,总是报错~)。

YOLOX训练数据集(VOC)

python tools/demo.py image -f exps/default/yolox_s.py -c ./yolox_s.pth --path assets/dog.jpg --conf 0.3 --nms 0.65 --tsize 640 --save_result --device gpu

如果显示如下,说明测试成功,此时环境没有问题,可以开始训练了。

YOLOX训练数据集(VOC)

YOLOX的代码中,会新建一个YOLOX_outputs文件夹,在其中的yolox_s/vis_res/,可以看到带有检测效果的图片。

YOLOX训练数据集(VOC)

效果图:

YOLOX训练数据集(VOC)

3.训练tools/train.py(以VOC2007为例)

VOC2007标准数据集结构:
├── Annotations 进行 detection 任务时的标签文件,xml 形式,文件名与图片名一一对应
├── ImageSets 包含三个子文件夹 Layout、Main、Segmentation,其中 Main 存放的是分类和检测的数据集分割文件
├── JPEGImages 存放 .jpg 格式的图片文件
├── SegmentationClass 存放按照 class 分割的图片
└── SegmentationObject 存放按照 object 分割的图片

├── Main
│   ├── train.txt 写着用于训练的图片名称, 共 2501 个
│   ├── val.txt 写着用于验证的图片名称,共 2510 个
│   ├── trainval.txt train与val的合集。共 5011 个
│   ├── test.txt 写着用于测试的图片名称,共 4952 个

培训准备

修改exps/example/yolox_voc/yolox_voc_s.py文件内容如下:

YOLOX训练数据集(VOC)

训练:

YOLOX训练数据集(VOC)

测试:

YOLOX训练数据集(VOC)

如果是自己做的数据集,还有一些地方需要修改,自行百度。

开始训练:

YOLOX训练数据集(VOC)

python tools/train.py -f exps/example/yolox_voc/yolox_voc_s.py -d 1 -b 2 --fp16 -o -c ./yolox_s.pth

-d          使用多少张显卡训练
-b          批次大小
-fp16     是否开启半精度训练
-c          权重文件

YOLOX训练数据集(VOC)

版权声明:本文为博主Study->Java原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/liuyafengliu/article/details/123223322

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2022年3月4日 上午10:24
下一篇 2022年3月4日 上午10:42

相关推荐