Python-批量对于图像进行标签id重命名

根据得到的分类结果数据,对于给出的测试图像进行标签重命名:

测试集分类结果文件:stag_01_test.csv

测试图片文件夹:stag_01_test

##########图片重命名 Rename,设置标签##########
import os 
ROOT_DIR = os.path.abspath("./")
img_path = os.path.join(ROOT_DIR, "stag_01_test")
imglist = os.listdir(img_path)
print('img_path',img_path)

#########对于csv文件进行读取###############
import csv
t1 = open('stag_01_test.csv', 'r')
fileone = t1.readlines()
t1.close()
print(fileone[1])
print(fileone[1].strip().split(','))
print(fileone[1].strip().split(',')[0])
print(fileone[1].strip().split(',')[1])

###########标签解析##############
def result_(res):
    if res=='airplane':
                return 0
    elif res=='ship':
                return 1
    elif res=='bridge':
                return 2
    elif res=='oilcan':
                return 3
    elif res=='build':
                return 4
    else:
                return 5
i = 0
for img in imglist:
    if img.endswith('.jpg'):
        # print(i)
        src = os.path.join(os.path.abspath(img_path), img)  # original name
        print('src',src)
        #src /home/jovyan/work/data/gyx/Test_all/stag_01_test/0001.jpg
        img_n = img[:-4] 
        print(img_n) #0001
        filename=fileone[i+1].strip().split(',')#['0001.jpg', 'airplane']
        if filename[0]==img:
            id = int(result_(filename[1]))
        else:
            print('Wrong filename')
        dst = os.path.join(os.path.abspath(img_path),img_n +  '_%d'%(id) + '.jpg')  # original name + _1
        os.rename(src, dst)  # rename==>recover the original name
        i+=1

 原始图像文件:

加上标签的图像文件:

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值