用PaddleDetection套件训练自己的数据集,PP-YOLO-SOD训练全流程

官方资料

PaddlePaddle框架官方文档:https://www.paddlepaddle.org.cn/
在这里插入图片描述

论文:PP-YOLOE: An evolved version of YOLO
PaddleDection套件:pp-yoloe-sod-高精度小目标检测模型
在这里插入图片描述
小目标检测模型说明:PP-YOLOE-SOD 小目标检测模型(PP-YOLOE Small Object Detection)
在这里插入图片描述

PP-YOLOE-SOD预训练权重:模型库
在这里插入图片描述

ppyoloe+ 训练全流程

环境配置与套件准备

pip install paddlepaddle-gpu==3.0.0b1 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/
# 进入套件
cd PaddleDetection-release-2.8.1

# 初始化
python setup.py install

# 安装依赖
pip install -r requirements.txt
pip install visualdl -i https://mirror.baidu.com/pypi/simple

直接运行以下命令安装 libgomp1

apt-get update && apt-get install -y libgomp1

数据集准备与VOC格式ppdet的要求

VOC格式数据集,训练集、验证集、测试集划分好,本别一个文件夹。
在这里插入图片描述
以训练集为例,需要含这四个:
在这里插入图片描述

  • 图片文件夹:JPEGImages
    在这里插入图片描述

  • 标签文件夹:Annotations
    在这里插入图片描述

  • 类别列表文件:label_list.txt
    在这里插入图片描述

  • 标签列表文件:train_list.txt
    在这里插入图片描述

标签列表txt文件生成脚本

import os

def generate_list_file(voc_root, output_list_path):
    """
    生成VOC数据集的列表文件,每行格式为:JPEGImages/图像名 Annotations/标注名
    
    参数:
    voc_root: VOC数据集根目录(包含JPEGImages和Annotations文件夹)
    output_list_path: 输出的列表文件路径(如train_list.txt)
    """
    # 检查输入目录是否存在
    jpeg_dir = os.path.join(voc_root, "JPEGImages")
    anno_dir = os.path.join(voc_root, "Annotations")
    if not os.path.exists(jpeg_dir):
        raise ValueError(f"JPEGImages目录不存在:{
     
     jpeg_dir}")
    if not os.path.exists(anno_dir):
        raise ValueError(f"Annotations目录不存在:{
     
     anno_dir}")
    
    # 获取所有图像文件(仅保留常见图像格式)
    image_extensions = ('.jpg', '.jpeg', '.png', '.bmp', '.JPG', '.JPEG', '.PNG', '.BMP')
    image_files = [f for f in os.listdir(jpeg_dir) if f.endswith(image_extensions)]
    
    if not image_files:
        print
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值