(杂1)从soda10m数据集中选择想要的部分数据集并生成新的json文件

该脚本读取一个包含period字段的JSON标注文件,从中选择Night时期的图片,将这些图片从原始数据集复制到新目录,并更新JSON文件以匹配新数据集。目标是为YoloV5或其他对象检测模型准备夜间条件的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import os
import json
import shutil

# 原始数据集目录和新数据集目录
dataset_dir = 'D:/PycharmProjects/yolov5-master/ABC/test'
output_dir = 'D:/PycharmProjects/yolov5-master/cde/test'

# 加载原始JSON标注文件
json_file = 'D:/PycharmProjects/yolov5-master/ABC/instance_test.json'
with open(json_file, 'r') as f:
    data = json.load(f)

# 创建新的JSON标注文件
new_data = {
    'categories': data['categories'],
    'annotations': [],
    'images': []
}

# 挑选符合条件的图片并复制到新文件夹
for image_info in data['images']:
    if image_info['period'] == 'Night':
        file_name = image_info['file_name']
        image_path = os.path.join(dataset_dir, file_name)
        output_path = os.path.join(output_dir, file_name)
        shutil.copyfile(image_path, output_path)

        # 更新新的JSON标注文件
        new_data['images'].append(image_info)

# 保存新的JSON标注文件
new_json_file = 'D:/PycharmProjects/yolov5-master/cde/path_to_new_annotation_file.json'
with open(new_json_file, 'w') as f:
    json.dump(new_data, f, indent=4)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值