FCOS(pytorch)检测算法安装+训练自己的数据集(ubuntu16.04)

本文详细介绍了FCOS目标检测算法的离线安装流程、模型训练步骤及测试方法。FCOS是一种无锚框的一阶段目标检测算法,适用于VOC和COCO数据集。文中提供了从环境配置到模型推理的全面指导。
部署运行你感兴趣的模型镜像

FCOS

FCOS:Fully Convolutional One-Stage Object Detection是2019年I的一种无锚的目标检测算法。
官方github地址:https://github.com/tianzhi0549/FCOS
FCOS的安装照着官方readme即可安装,下面简单记录一下我的安装过程。

离线安装

安装前须知:需要检查依赖项是否具备,否则可能导致安装不成功。

在这里插入图片描述
我的环境以满足直接安装
1、下载离线安装包**FCOS-master.zip,并解压为FCOS-master。
2、进入路径FCOS-master:

sudo python setup.py build develop --no-deps

然后完成安装,安装成功后会打印Installing fcos script to /usr/local/bin和Installed …/FCOS-master
3、快速跑一个demo测试下:
下载官方的一个模型FCOS_imprv_R_50_FPN_1x.pth,执行:

python demo/fcos_demo.py

若正确输出检测图像则说明安装成功,若出错显示缺少一些包则根据提示安装即可。

训练模型

模型训练步骤也是按照官方文档来就可以了,下面记录下我自己的步骤:
1、准备数据集(可参考https://github.com/tianzhi0549/FCOS/issues/54#issuecomment-497558687
FCOS自带支持voc类型的检测数据和coco类型的检测数据。
准备好自己的数据集后在/fcos_core/config/paths_catalog.py里面设置自己的数据集。在/fcos_core/config/defaults.py里面_C.MODEL.FCOS.NUM_CLASSESS = 81设置自己的数据类别数量。在/fcos_core/data/datasets/voc.py中设置自己的数据类别名。
然后在自己要训练的模型的yam文件里面设置使用的数据集:
如:/configs/fcos/fcos_imprv_R_50_FPN_1x.yaml
(这里面还可以设置包括图像大小,迭代次数等参数)
2、开始训练
在这里插入图片描述
若需要指定具体的GPU可通过:
export CUDA_VISIVLE_DEVICES="1" 来指定使用具体的1号卡训练
训练命令:

python -m torch.distributed.launch \
    --nproc_per_node=2 \
    --master_port=$((RANDOM + 10000)) \
    tools/train_net.py \
    --config-file configs/fcos/fcos_imprv_R_50_FPN_1x.yaml \
    DATALOADER.NUM_WORKERS 2 \
    OUTPUT_DIR out/fcos_imprv_R_50_FPN_1x

模型推理测试

测试命令:

python tools/test_net.py \
    --config-file configs/fcos/fcos_imprv_R_50_FPN_1x.yaml \
    MODEL.WEIGHT FCOS_imprv_R_50_FPN_1x.pth \
    TEST.IMS_PER_BATCH 4  

在这里插入图片描述

补充

1、针对自己的数据要去注意的目标大小分布,去设置fpn每一层对应的目标大小,在fcos_core/modeling/rpn/fcos/loss.py的object_sizes_of_interest那里。
2、fcos默认的推理的输入图像是较大的,所以速度会比较慢。

您可能感兴趣的与本文相关的镜像

PyTorch 2.7

PyTorch 2.7

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值