批量修改标签和图片的名字

批量修改标签和图片的名字

在深度学习中,数据的清洗是非常重要的一个环节。今天,我想向大家分享一下如何批量处理图片和标签的名字和进行移动。
一般我们获取得到的数据集都有若干个文件夹,比如:这是正常和损坏的绝缘子串珠数据集
我们可以看到,两个文件夹里面的数据命名格式相仿:
在这里插入图片描述
在这里插入图片描述
所以我们需要对他们进行处理,使得两个文件夹中的图片的标签对应上。在下面我代码中,我们将会对其进行对应的改名和保存到同一个文件夹:

import shutil
import os

#输入原始图片和标签的地址
img_path = ''
label_path = ''
#输入目的图片和标签的地址
new_img_path = ''
new_label_path = ''

#保存原始的图片和标签名字(带后缀名)
img_list = os.listdir(img_path)
label_list = os.listdir(label_path)
#保存原始的图片和标签名字(不带后缀名)
img_name = []
label_name = []

#获得不带后缀名的图片名字
for img in img_list:
    a, b = img.split('.')
    img_name.append(a)
#获得不带后缀名的标签名字
for label in label_list:
    a, b = label.split('.')
    label_name.append(a)

i = 0
for img in img_name:
    for label in label_name:
        #找到对应的图片和标签
        if img == label:
            n = 6 - len(str(i))
            #原始地址
            img_src = os.path.join(img_path, img+ '.jpg')
            label_src = os.path.join(label_path, label+ '.xml')
            #目的地址
            img_dst = os.path.join(new_img_path, n*str(0)+str(i)+".jpg")
            label_dst = os.path.join(new_label_path, n*str(0)+str(i)+".xml")
            #改名并保存倒新的地址
            shutil.move(img_src, img_dst)
            shutil.move(label_src, label_dst)
            i = i + 1

在地址上填写你自己的地址就可以了。
下面我们看看操作结果:
在这里插入图片描述

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值