德国交通标志训练集的数据预处理

 

网址:http://benchmark.ini.rub.de

下载好的数据集文件是.ppm格式。

需要将其转成.png格式。

每个文件夹下有.csv文件(Comma-Separated Values,标记)

里面有ROI区域的坐标,我们需要根据这个ROI区域的坐标,来分割出ROI区域,并另存为后缀为.png的格式。

写了数据转换脚本是transform.py。

再看文件夹里面的图片

读取每张图像,把每张图像的ROI区域提取出来,再转换为png的格式。脚本rio.py

 

把train里面的数据按20%的比例划分为训练集和测试集

脚本train_valid_split.py

按照2:8分开训练

训练集包含39209张交通标志图片。如图可以看出,该数据集的数据分布很不均衡。

读取训练集的数据和标签

X_train, Y_train = read_additional_dataset_images(type='train')

读取验证集集的数据和标签

X_test, Y_test = read_additional_dataset_images(type='test')

读取测试集的数据和标签:

image_list ,expected_answ= read__test_images()

def read__test_images():
    #files = glob.glob('../GTSRB/dataset/test_bk/*/*.png')
    files = glob.glob('../GTSRB/Final_Test/Images_48x48/*.png')
    image_list = []
    expected_answ = []
    test_csv_data = pd.read_csv("../GTSRB/Final_Test/Images_48x48/GT-final_test.csv")
    test_csv_data_arr = np.array(test_csv_data)
    for index in range(test_csv_data_arr.shape[0]):
        row_data = np.array(test_csv_data)[index][0]
        row_data_list = row_data.split(";")
        sample_file_name = row_data_list[0]
        sample_label = row_data_list[-1]
        expected_answ.append(int(sample_label))
        #print(sample_file_name, sample_label)
        # 00000.ppm 16
        # 00001.ppm 1
        # 00002.ppm 38

        new_sample_file_name = sample_file_name.split(".")[0] + ".png"
               # 00000.png
                # 00001.png
                # 00002.png
                # 00003.png
        #expected_answ=expected_answ.append()
        output_image = cv2.imread('../GTSRB/Final_Test/Images_48x48/'+new_sample_file_name, 0)
        #print('../GTSRB/Final_Test/Images_48x48/'+new_sample_file_name)
        image_list.append(output_image)
    image_list = np.array(image_list)
    return image_list, expected_answ
 
  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值