json 转为txt

这段代码是一个Python函数,用于将LabelMe格式的JSON文件转换为YOLOv2所需的.txt格式,用于目标检测。它读取JSON中的形状和点信息,并按照指定的类别列表输出坐标。

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

import json
import os
import glob
import os.path as osp


def labelme2yolov2Seg(jsonfilePath="", resultDirPath="", classList=["buds"]):
    if (not os.path.exists(resultDirPath)):
        os.mkdir(resultDirPath)

    jsonfileList = glob.glob(osp.join(jsonfilePath, "*.json"))

    print(jsonfileList)

    for jsonfile in jsonfileList:
        with open(jsonfile, "r") as f:
            file_in = json.load(f)

            shapes = file_in["shapes"]

            with open(resultDirPath + "\\" + jsonfile.split("\\")[-1].replace(".json", ".txt"), "w") as file_handle:
                for shape in shapes:
                    file_handle.writelines(str(classList.index(shape["label"])) + " ")

                    for point in shape["points"]:
                        x = point[0] / file_in["imageWidth"]
            
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值