【无标题】

多标签分类数据集制作

模仿fashion-product-images数据集,制作自己的多标签分类数据集

先来看看fashion-product-images数据集

数据集下有两个内容,放图片的文件夹和一个.csv文件(保存图片位置,类别标签)数据集图片
在这里插入图片描述

制作数据集的准备工作

我的数据集有两个属性,颜色和形状,颜色有Tc_Red和Tc_Lightwhite两个类别,形状有TS_Swollen和Ts_Thin两个类别。分别将图片放于对应属性文件夹下。注意,一张图片只能选择同一属性一种类别,例如图片01不能同时出现再Tc_Red和Tc_Lightwhite文件夹中。
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
每张图片和编号是一一对应的,这里截图仅用于测试代码,一个编号可能对应两个不同内容图片。

制作.csv文件

新建val.csv文件,运行下列代码,即可生成带有图片位置和标签的val.csv文件

import os
import csv

img_dic = {}
label2idx = {'TC_LightWhite': 0, 'TC_Red': 1, 'TS_Swollen': 2, 'TS_Thin': 3}

with open('val.csv', mode='w', newline='') as file_handle:
    writer = csv.writer(file_handle)
    writer.writerow(['image_path', 'color', 'shape'])
    
    for home, dirs, files in os.walk('/home/xxx/tx/datasets/muti-label/image/'):
        for filename in files:
            label = label2idx[home.split('/')[-1]]
            img_path = os.path.join("/home/xxx/tx/datasets/muti-label/image", filename)
            
            if filename not in img_dic:
                img_dic[filename] = [label]
            else:
                img_dic[filename].append(label)
                
    for filename, labels in img_dic.items():
        color = ''
        shape = ''
        for label in labels:
            if label in [0, 1]:
                color = label
            else:
                shape = label
        writer.writerow([os.path.join("/home/hyhz/tx/datasets/muti-label/shap", filename), color, shape])

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值