首页 PaddleX 帖子详情
目标检测---02---目标检测数据准备
收藏
快速回复
PaddleX 文章入门 1700 2
目标检测---02---目标检测数据准备
收藏
快速回复
PaddleX 文章入门 1700 2

准备好数据集并进行了数据集划分之后。需要对数据集进行预处理和数据增强策略(数据增强可根据实际需求添加),然后定义dataset加载划分好的数据集并建立索引。
一、数据预处理及增强

from paddlex import transforms as T

train_transforms = T.Compose([
    T.MixupImage(mixup_epoch=-1), 
    T.RandomDistort(),
    T.RandomExpand(im_padding_value=[123.675, 116.28, 103.53]), 
    T.RandomCrop(),
    T.RandomDistort(),  # 以一定的概率对图像进行随机像素内容变换,可包括亮度、对比度、饱和度、色相角度、通道顺序调整等
    T.RandomHorizontalFlip(), 
    T.BatchRandomResize(
        target_sizes=[192, 224, 256, 288, 320, 352, 384, 416, 448, 480, 512],
        interp='RANDOM'), 
    T.Normalize(
            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])

eval_transforms = T.Compose([
    T.Resize(
        target_size=320, interp='CUBIC'), 
    T.Normalize(
            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])

二、定义dataset加载图像分类数据集
定义数据集,pdx.datasets.VOCDetection表示读取VOC格式的分类数据集:

import paddlex as pdx
train_dataset = pdx.datasets.VOCDetection(
    data_dir='work/my',                    # 数据集目录
    file_list='work/my/train_list.txt',    # 训练集文件路径
    label_list='work/my/labels.txt',       # 数据标签
    transforms=train_transforms,           # 训练集的数据增强策略
    shuffle=True)                          # 打乱数据集的顺序
eval_dataset = pdx.datasets.VOCDetection(
    data_dir='work/my',
    file_list='work/my/val_list.txt',
    label_list='work/my/labels.txt',
    transforms=eval_transforms)

三、数据预处理及增强API说明

具体内容参考:https://gitee.com/yuyangup/PaddleX/blob/develop/docs/apis/transforms/transforms.md
0
收藏
回复
全部评论(2)
时间顺序
余志良
#2 回复于2021-08

很不错

0
回复
李长安
#3 回复于2021-12

优秀

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户