pysot中,将GOT-10K文件夹转化为GOT-10K.json

这段代码用于处理GOT-10K数据集,遍历每个视频序列,读取图片和groundtruth信息,生成包含视频目录、图片路径、初始矩形等信息的json文件。注意数据集根目录下不应有额外文件夹,否则可能引发错误。
摘要由CSDN通过智能技术生成

目录情况
目录
GOT-10K的目录我给删了一节(train)

原本下载好的目录是下面图片
在这里插入图片描述

import os
import json

# GOT-10K数据集根目录
dataset_root = "E:\pysot\\testing_dataset\\GOT-10K"

# 生成的GOT-10K.json文件路径
output_path = "E:\\bishe_system\\GOT-10K.json"

# 用于存储数据的字典
data = {}

# 遍历每个视频序列
for video_name in os.listdir(dataset_root):
    # 获取视频序列路径
    if '.' not in video_name:
        video_dir = dataset_root
        # 获取视频序列的groundtruth文件路径
        gt_path = os.path.join(video_dir, "groundtruth.txt")
        img_names=[]
        # 获取视频序列下所有的图片文件路径
        for file_name in os.listdir(os.path.join(video_dir,video_name)):
            # 判断是否为图片文件,可以根据具体需求修改
            if file_name.endswith('.jpg') or file_name.endswith('.png') or file_name.endswith('.jpeg'):
                img_names.append(video_name+"/"+file_name)

        # 如果存在groundtruth文件,则读取第一行作为初始位置
        if os.path.exists(gt_path):
            with open(gt_path, "r") as f:
                init_rect = [float(x) for x in f.readline().strip().split(",")]
        else:
            # 如果不存在groundtruth文件,则将初始位置设为None
            init_rect = None

        # 将数据存储为字典格式
        data[video_name] = {
            "video_dir": video_name,
            "img_names": img_names,
            "init_rect": init_rect,
            "gt_rect": [[0, 0, 0, 0]] * len(img_names) if init_rect is None else [init_rect] + [[0, 0, 0, 0]] * (len(img_names) - 1)
        }

# 将数据写入json文件
with open(output_path, "w") as f:
    json.dump(data, f)

注意GOT-10K里处理数据的文件夹外不能有其他的文件夹,否则在运行pysot中的test时将会报错。

{“GOT-10k_Train_000001”: {“video_dir”: “GOT-10k_Train_000001”, “img_names”: [“GOT-10k_Train_000001/00000001.jpg”, “GOT-10k_Train_000001/00000002.jpg”, “GOT-10k_Train_000001/00000003.jpg”, “GOT-10k_Train_000001/00000004.jpg”, “GOT-10k_Train_000001/00000005.jpg”, “GOT-10k_Train_000001/00000006.jpg”, “GOT-10k_Train_000001/00000007.jpg”, “GOT-10k_Train_000001/00000008.jpg”, “GOT-10k_Train_000001/00000009.jpg”, “GOT-10k_Train_000001/00000010.jpg”, “GOT-10k_Train_000001/00000011.jpg”, “GOT-10k_Train_000001/00000012.jpg”, “GOT-10k_Train_000001/00000013.jpg”, “GOT-10k_Train_000001/00000014.jpg”, “GOT-10k_Train_000001/00000015.jpg”, “GOT-10k_Train_000001/00000016.jpg”, “GOT-10k_Train_000001/00000017.jpg”, “GOT-10k_Train_000001/00000018.jpg”, “GOT-10k_Train_000001/00000019.jpg”, “GOT-10k_Train_000001/00000020.jpg”, “GOT-10k_Train_000001/00000021.jpg”, “GOT-10k_Train_000001/00000022.jpg”, “GOT-10k_Train_000001/00000023.jpg”, “GOT-10k_Train_000001/00000024.jpg”, “GOT-10k_Train_000001/00000025.jpg”, “GOT-10k_Train_000001/00000026.jpg”, “GOT-10k_Train_000001/00000027.jpg”, “GOT-10k_Train_000001/00000028.jpg”, “GOT-10k_Train_000001/00000029.jpg”, “GOT-10k_Train_000001/00000030.jpg”, “GOT-10k_Train_000001/00000031.jpg”, “GOT-10k_Train_000001/00000032.jpg”, “GOT-10k_Train_000001/00000033.jpg”, “GOT-10k_Train_000001/00000034.jpg”, “GOT-10k_Train_000001/00000035.jpg”, “GOT-10k_Train_000001/00000036.jpg”, “GOT-10k_Train_000001/00000037.jpg”, “GOT-10k_Train_000001/00000038.jpg”, “GOT-10k_Train_000001/00000039.jpg”, “GOT-10k_Train_000001/00000040.jpg”, “GOT-10k_Train_000001/00000041.jpg”, “GOT-10k_Train_000001/00000042.jpg”, “GOT-10k_Train_000001/00000043.jpg”, “GOT-10k_Train_000001/00000044.jpg”, “GOT-10k_Train_000001/00000045.jpg”, “GOT-10k_Train_000001/00000046.jpg”, “GOT-10k_Train_000001/00000047.jpg”, “GOT-10k_Train_000001/00000048.jpg”, “GOT-10k_Train_000001/00000049.jpg”, “GOT-10k_Train_000001/00000050.jpg”, “GOT-10k_Train_000001/00000051.jpg”, “GOT-10k_Train_000001/00000052.jpg”, “GOT-10k_Train_000001/00000053.jpg”, “GOT-10k_Train_000001/00000054.jpg”, “GOT-10k_Train_000001/00000055.jpg”, “GOT-10k_Train_000001/00000056.jpg”, “GOT-10k_Train_000001/00000057.jpg”, “GOT-10k_Train_000001/00000058.jpg”, “GOT-10k_Train_000001/00000059.jpg”, “GOT-10k_Train_000001/00000060.jpg”, “GOT-10k_Train_000001/00000061.jpg”, “GOT-10k_Train_000001/00000062.jpg”, “GOT-10k_Train_000001/00000063.jpg”, “GOT-10k_Train_000001/00000064.jpg”, “GOT-10k_Train_000001/00000065.jpg”, “GOT-10k_Train_000001/00000066.jpg”, “GOT-10k_Train_000001/00000067.jpg”, “GOT-10k_Train_000001/00000068.jpg”, “GOT-10k_Train_000001/00000069.jpg”, “GOT-10k_Train_000001/00000070.jpg”, “GOT-10k_Train_000001/00000071.jpg”, “GOT-10k_Train_000001/00000072.jpg”, “GOT-10k_Train_000001/00000073.jpg”, “GOT-10k_Train_000001/00000074.jpg”, “GOT-10k_Train_000001/00000075.jpg”, “GOT-10k_Train_000001/00000076.jpg”, “GOT-10k_Train_000001/00000077.jpg”, “GOT-10k_Train_000001/00000078.jpg”, “GOT-10k_Train_000001/00000079.jpg”, “GOT-10k_Train_000001/00000080.jpg”, “GOT-10k_Train_000001/00000081.jpg”, “GOT-10k_Train_000001/00000082.jpg”, “GOT-10k_Train_000001/00000083.jpg”, “GOT-10k_Train_000001/00000084.jpg”, “GOT-10k_Train_000001/00000085.jpg”, “GOT-10k_Train_000001/00000086.jpg”, “GOT-10k_Train_000001/00000087.jpg”, “GOT-10k_Train_000001/00000088.jpg”, “GOT-10k_Train_000001/00000089.jpg”, “GOT-10k_Train_000001/00000090.jpg”, “GOT-10k_Train_000001/00000091.jpg”, “GOT-10k_Train_000001/00000092.jpg”, “GOT-10k_Train_000001/00000093.jpg”, “GOT-10k_Train_000001/00000094.jpg”, “GOT-10k_Train_000001/00000095.jpg”, “GOT-10k_Train_000001/00000096.jpg”, “GOT-10k_Train_000001/00000097.jpg”, “GOT-10k_Train_000001/00000098.jpg”, “GOT-10k_Train_000001/00000099.jpg”, “GOT-10k_Train_000001/00000100.jpg”, “GOT-10k_Train_000001/00000101.jpg”, “GOT-10k_Train_000001/00000102.jpg”, “GOT-10k_Train_000001/00000103.jpg”, “GOT-10k_Train_000001/00000104.jpg”, “GOT-10k_Train_000001/00000105.jpg”, “GOT-10k_Train_000001/00000106.jpg”, “GOT-10k_Train_000001/00000107.jpg”, “GOT-10k_Train_000001/00000108.jpg”, “GOT-10k_Train_000001/00000109.jpg”, “GOT-10k_Train_000001/00000110.jpg”, “GOT-10k_Train_000001/00000111.jpg”, “GOT-10k_Train_000001/00000112.jpg”, “GOT-10k_Train_000001/00000113.jpg”, “GOT-10k_Train_000001/00000114.jpg”, “GOT-10k_Train_000001/00000115.jpg”, “GOT-10k_Train_000001/00000116.jpg”, “GOT-10k_Train_000001/00000117.jpg”, “GOT-10k_Train_000001/00000118.jpg”, “GOT-10k_Train_000001/00000119.jpg”, “GOT-10k_Train_000001/00000120.jpg”], “init_rect”: [596.0, 0.0, 776.0, 907.0], “gt_rect”: [[596.0, 0.0, 776.0, 907.0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]}, “GOT-10k_Train_000002”: {“video_dir”: “GOT-10k_Train_000002”, “img_names”: [“GOT-10k_Train_000002/00000001.jpg”, “GOT-10k_Train_000002/00000002.jpg”, “GOT-10k_Train_000002/00000003.jpg”, “GOT-10k_Train_000002/00000004.jpg”, “GOT-10k_Train_000002/00000005.jpg”, “GOT-10k_Train_000002/00000006.jpg”, “GOT-10k_Train_000002/00000007.jpg”, “GOT-10k_Train_000002/00000008.jpg”, “GOT-10k_Train_000002/00000009.jpg”, “GOT-10k_Train_000002/00000010.jpg”, “GOT-10k_Train_000002/00000011.jpg”, “GOT-10k_Train_000002/00000012.jpg”, “GOT-10k_Train_000002/00000013.jpg”, “GOT-10k_Train_000002/00000014.jpg”, “GOT-10k_Train_000002/00000015.jpg”, “GOT-10k_Train_000002/00000016.jpg”, “GOT-10k_Train_000002/00000017.jpg”, “GOT-10k_Train_000002/00000018.jpg”, “GOT-10k_Train_000002/00000019.jpg”, “GOT-10k_Train_000002/00000020.jpg”, “GOT-10k_Train_000002/00000021.jpg”, “GOT-10k_Train_000002/00000022.jpg”, “GOT-10k_Train_000002/00000023.jpg”, “GOT-10k_Train_000002/00000024.jpg”, “GOT-10k_Train_000002/00000025.jpg”, “GOT-10k_Train_000002/00000026.jpg”, “GOT-10k_Train_000002/00000027.jpg”, “GOT-10k_Train_000002/00000028.jpg”, “GOT-10k_Train_000002/00000029.jpg”, “GOT-10k_Train_000002/00000030.jpg”, “GOT-10k_Train_000002/00000031.jpg”, “GOT-10k_Train_000002/00000032.jpg”, “GOT-10k_Train_000002/00000033.jpg”, “GOT-10k_Train_000002/00000034.jpg”, “GOT-10k_Train_000002/00000035.jpg”, “GOT-10k_Train_000002/00000036.jpg”, “GOT-10k_Train_000002/00000037.jpg”, “GOT-10k_Train_000002/00000038.jpg”, “GOT-10k_Train_000002/00000039.jpg”, “GOT-10k_Train_000002/00000040.jpg”, “GOT-10k_Train_000002/00000041.jpg”, “GOT-10k_Train_000002/00000042.jpg”, “GOT-10k_Train_000002/00000043.jpg”, “GOT-10k_Train_000002/00000044.jpg”, “GOT-10k_Train_000002/00000045.jpg”, “GOT-10k_Train_000002/00000046.jpg”, “GOT-10k_Train_000002/00000047.jpg”, “GOT-10k_Train_000002/00000048.jpg”, “GOT-10k_Train_000002/00000049.jpg”, “GOT-10k_Train_000002/00000050.jpg”, “GOT-10k_Train_000002/00000051.jpg”, “GOT-10k_Train_000002/00000052.jpg”, “GOT-10k_Train_000002/00000053.jpg”, “GOT-10k_Train_000002/00000054.jpg”, “GOT-10k_Train_000002/00000055.jpg”, “GOT-10k_Train_000002/00000056.jpg”, “GOT-10k_Train_000002/00000057.jpg”, “GOT-10k_Train_000002/00000058.jpg”, “GOT-10k_Train_000002/00000059.jpg”, “GOT-10k_Train_000002/00000060.jpg”, “GOT-10k_Train_000002/00000061.jpg”, “GOT-10k_Train_000002/00000062.jpg”, “GOT-10k_Train_000002/00000063.jpg”, “GOT-10k_Train_000002/00000064.jpg”, “GOT-10k_Train_000002/00000065.jpg”, “GOT-10k_Train_000002/00000066.jpg”, “GOT-10k_Train_000002/00000067.jpg”, “GOT-10k_Train_000002/00000068.jpg”, “GOT-10k_Train_000002/00000069.jpg”, “GOT-10k_Train_000002/00000070.jpg”], “init_rect”: [596.0, 0.0, 776.0, 907.0], “gt_rect”: [[596.0, 0.0, 776.0, 907.0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]}}

以前两个数值为例,得出的就是这样的结果。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值