VOC数据集含有20个类别,根据不同的任务和场景,我们可能用不到所有的数据集,此时我们可以从所有的数据集中提取出我们想要的类别。
提取过程:
首先我们需要根据xml文件中的类别信息来判断是否是需要的类别,然后提取出相应的xml文件,其次我们根据xml文件的名字确定图片的名称,然后将对应图片提取出来。
所有的操作的路径,注意修改为自己的路径,代码如下:
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
import os
import xml.etree.ElementTree as ET
import shutil
#根据自己的情况修改相应的路径
ann_filepath = 'Annotations/'
img_filepath = 'JPEGImages/'
img_savepath = 'test/JPEGImages/'
ann_savepath = 'test/Annotations/'
if not os.path.exists(img_savepath):
os.mkdir(img_savepath)
if not os.path.exists(ann_savepath):
os.mkdir(ann_savepath)
#这是VOC数据集中所有类别
# classes = ['aeroplane', 'bicycle', 'bird', 'boat', 'bottle',
# 'bus', 'car', 'cat', 'chair', 'cow', 'diningtable',
# 'dog', 'horse', 'mo
VOC数据集指定类别提取方法

本文介绍了如何从VOC数据集中批量提取所需的特定类别。通过解析XML文件中的类别信息,筛选出需要的XML文件,并根据文件名匹配对应的图片进行提取。文中还提供了相关路径的注意事项以及YOLOv4训练自定义数据集和批量测试保存图片的参考资料。
订阅专栏 解锁全文
878

被折叠的 条评论
为什么被折叠?



