【数据集处理一】固定间隔抽取图片/标注+重命名

数据集一万多张图从视频里来,连续图片相度过高,采用固定间隔选取,提炼出更适合用于目标检测的数据集(之后可以再加上其他场景下的图像对数据集进行扩充)

代码如下:


import os


from shutil import copy

path="D:/Research direction/data set/DL data/VOCdevkit 完整版/VOC2007/Annotations"
out="D:/Research direction/data set/DL data/VOCdevkit 提取版/VOC2007/Annotations"

#获取文件列表
allfilelist=os.listdir(path)  #获取子文件夹名
allfilelist.sort(key=lambda x: int(x[4:]))   #第四个字符以后的字符串转化为数字并进行排序
#print(allfilelist)
#print(len(allfilelist))
index = 1
for file in allfilelist:
    filepath = os.path.join(path, file)
    img_names = os.listdir(filepath)  #获取子文件夹中的文件名
    img_names.sort(key=lambda x: int(x[:-4]))  #倒数第五个字符以前的字符串转化为数字并进行排序
    #print(img_names)
    # 打印文件夹下的数量
    #print(len(img_names))
    #从第一个开始,每隔五个取一个
    img_names=img_names[0::5]
    #print(img_names)
    # 循环读取文件,批操作文件名重命名
    for item in img_names:
            if item.endswith('.xml'):  # 文件格式
                src_path = os.path.join(os.path.abspath(filepath), item)
                dst_path = os.path.join(os.path.abspath(out), '' + str(index) + '.bmp')
                copy(src_path, dst_path)
                index = index + 1

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱学习的大志

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值