第2课笔记 数据获取与处理 0708

本文档详细记录了使用PaddleDetection处理COCO数据集的过程,包括数据下载、标注转换、训练集验证集划分,并展示了如何进行灰度图处理和图像增强。同时,还介绍了如何对自定义数据集进行VOC和COCO格式转换,以及模型训练和推理预测的步骤。
摘要由CSDN通过智能技术生成

数据集统计信息

#拉取PaddleDetection
!git clone https://github.com.cnpmjs.org/PaddlePaddle/PaddleDetection
#存入持久层中
!mv PaddleDetection/ work/
#导入所需要的依赖
!pip install -r work/PaddleDetection/requirements.txt

#导入转格式所需要的包
!pip install pycocotools
!pip install scikit-image

COCO标注

!unzip -oq /home/aistudio/data/data97273/annotations_trainval2017.zip -d ./

总的验证集

!unzip -oq /home/aistudio/data/data97273/val2017.zip -d ./

总的训练集

!unzip -oq /home/aistudio/data/data97273/train2017.zip -d ./
#创建解析好的图片与xml文件的目录
!mkdir -p VOCData/images/
!mkdir -p VOCData/Annotations/

!mkdir COCOData/

#处理目标检测的数据集
!python ProcessData.py

#没有这个文件时创建一个空的label的txt文件
!touch VOCData/label_list.txt

#移动到dataset文件夹
!mv VOCData work/PaddleDetection/dataset/

%cd work/PaddleDetection/
“”"
按VOC格式划分数据集,train : val = 0.85 : 0.15
生成标签label_list.txt
“”"
import os
import shutil
import skimage.io as io

from tqdm import tqdm
from random import shuffle

dataset = ‘dataset/VOCData/’
train_txt = os.path.join(dataset, ‘train_val.txt’)
val_txt = os.path.join(dataset, ‘val.txt’)
lbl_txt = os.path.join(dataset, ‘label_list.txt’)

classes = [
“person”
]

with open(lbl_txt, ‘w’) as f:
for l in classes:
f.write(l+’\n’)

xml_base = ‘Annotations’
img_base = ‘images’

xmls = [v for v in os.listdir(os.path.join(dataset, xml_base)) if v.endswith(’.xml’)]
shuffle(xmls)

split = int(0.85 * len(xmls)) #划分训练集与验证集

with open(train_txt, ‘w’) as f:
for x in tqdm(xmls[:split]):
m = x[:-4]+’.jpg’
xml_path = os.path.join(xml_base, x)
img_path = os.path.join(img_base, m)
f.write(’{} {}\n’.fo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值