根据txt生成对用 json的方法

import json
import os

path='C:\\Users\\chenyu03\\Desktop\\test\\128_64\\'
name=os.listdir(path)
for nm in name:
    dirpath=os.path.join(path,nm)
    pic_name=os.listdir(dirpath)
    if pic_name:
        for i in pic_name:
            if not i.endswith('.json'):
                if i.endswith('.txt'):
                    with open(os.path.join(dirpath,i),'r') as f:
                        a=f.read().split(',')
                        new_dict={'rt': {'x': a[2], 'y': a[3]}, 'lt': {'x': a[0], 'y': a[1]}, 'rb': {'x': a[4], 'y': a[5]}, 'lb': {'x': a[6], 'y': a[7]}}

                    with open(os.path.join(dirpath,i[:-4]+'.json'),'w') as load_f:

                        load_dict = json.dump(new_dict,load_f)
                        print(load_dict)
                else:
                    print('此文件中没有txt档')

        else:
            print('空文件夹')


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我作为一个语言模型并不能执行文件操作和计算任务。可以向您解释一下这个问题的解决方法。 首先,根据gt.txt和dt.txt分别生成gt.json和dt.json需要将数据转换为COCO格式。这可以通过使用Python中的COCO API来实现。具体步骤如下: 1. 安装COCO API:可以通过运行以下命令在终端中安装COCO API: ``` !pip install pycocotools ``` 2. 读取gt.txt和dt.txt文件中的数据:可以使用Python中的`open`函数来读取文件中的数据。 3. 将读取的数据转换为COCO格式:可以使用COCO API中的`loadRes`和`loadAnns`函数将读取的数据转换为COCO格式。 4. 保存转换后的数据为gt.json和dt.json:可以使用COCO API中的`dump`函数将转换后的数据保存为JSON格式。 然后,计算COCO数据集的mAP需要使用COCO API中的`COCOeval`类。具体步骤如下: 1. 加载gt.json和dt.json文件:可以使用COCO API中的`COCO`类来加载gt.json和dt.json文件。 2. 初始化COCOeval类:可以使用COCO API中的`COCOeval`类来初始化评估器。 3. 设置评估参数:可以使用`COCOeval`类中的`params`属性来设置评估参数,例如设置IoU阈值等。 4. 运行评估:可以使用`COCOeval`类中的`evaluate`方法来运行评估。 5. 计算mAP:可以使用`COCOeval`类中的`compute`方法来计算mAP。 最后,给出gt.txt和dt.txt的实例: gt.txt: ``` 000001.jpg,0,10,20,30,40,car 000001.jpg,50,60,70,80,car 000002.jpg,10,20,30,40,person ``` dt.txt: ``` 000001.jpg,5,15,25,35,car,0.9 000001.jpg,55,65,75,85,car,0.8 000002.jpg,10,20,30,40,person,0.7 ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值