目标检测标签文件json格式转化为txt格式

import json
import os
import cv2


if __name__ == '__main__':
    json_file = "G:/other/bdd100k_det_20_labels_trainval/bdd100k/labels/det_20/det_val.json"  # json file path
    save_path = "G:/other/bdd100k_images_100k/bdd100k/labels/val"  # txt save path
    with open(json_file, 'r') as f:
        diction = json.load(f)
        for i in range(len(diction)):
            names = diction[i].get("name")  # image name
            img = cv2.imread('G:/other/bdd100k_images_100k/bdd100k/images/100k/val/' + names)
            height, width = img.shape[:2]
            labels = diction[i].get("labels")
            label_txt = os.path.join(save_path, names[:-4] + ".txt")  # txt name
            with open(label_txt, 'a') as file:
                for j in range(len(labels)):
                    boxes = labels[j].get("box2d")  # box
                    box_class = labels[j].get("category")  # class
                    if box_class == 'car':
                        x1 = boxes.get('x1')
                        y1 = boxes.get('y1')
                        x2 = boxes.get('x2')
                        y2 = boxes.get('y2')
                        x = round((x2 + x1) / width / 2, 4)
                        y = round((y2 + y1) / height / 2, 4)
                        w = round((x2 - x1) / width, 4)
                        h = round((y2 - y1) / height, 4)
                        file.write(str(0) + ' ' + str(x) + ' ' + str(y) + ' ' + str(w) + ' ' + str(h) + '\n')

json文件数据格式

 

txt标签数据格式

 

转化成功后label文件列表

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值