traintest函数


def traintest(dirpath, pklname, newpklname):
    os.chdir(dirpath)
    train = load('train.json')
    test = load('test.json')
    annotations = load(pklname)
    split = dict()
    split['xsub_train'] = [x['vid_name'] for x in train]
    split['xsub_val'] = [x['vid_name'] for x in test]
    dump(dict(split=split, annotations=annotations), newpklname)
 
 
if __name__ == '__main__':
 
    dirpath = './data/Weizmann'
    pklname = 'train.pkl'
    newpklname = 'Wei_xsub_stgn++.pkl'
    # writeJson('./data/Weizmann/test', 'test.json')   
    traintest(dirpath, pklname, newpklname)
    # writeList('./data/Weizmann.list', 'Weizmann.list') 

def traintest(dirpath, pklname, newpklname):
    os.chdir(dirpath)  # 切换当前工作目录到 dirpath
    train = load('train.json')  # 加载 train.json 文件
    test = load('test.json')  # 加载 test.json 文件
    annotations = load(pklname)  # 加载 pklname 对应的文件
    split = dict()  # 创建一个空的字典 split
    split['xsub_train'] = [x['vid_name'] for x in train]  # 将 train 中每个元素的 'vid_name' 字段作为 'xsub_train' 的值
    split['xsub_val'] = [x['vid_name'] for x in test]  # 将 test 中每个元素的 'vid_name' 字段作为 'xsub_val' 的值
    dump(dict(split=split, annotations=annotations), newpklname)  # 将 split 和 annotations 保存为新的 pkl 文件,文件名为 newpklname

以上代码定义了一个名为 traintest 的函数,该函数接受三个参数:dirpath 表示目录路径,pklname 表示要加载的文件名,newpklname 表示要保存的新文件名。

函数中首先通过 os.chdir(dirpath) 把当前工作目录切换到 dirpath 所指定的目录。

然后,使用 load 函数加载 train.json 和 test.json 文件,并将结果分别赋值给 train 和 test 变量。

接下来,使用 load(pklname) 加载 pklname 对应的文件,并将结果保存在 annotations 变量中。

然后,创建一个空字典 split

接着,将 train 中每个元素的 'vid_name' 字段的值作为键 'xsub_train' 的值,将 test 中每个元素的 'vid_name' 字段的值作为键 'xsub_val' 的值,分别存入 split 字典中。

最后,使用 dump 函数将 split 和 annotations 以字典的形式保存为新的 pkl 文件,文件名为 newpklname

参考:

pyskl训练自己的数据集_decord videoreader 转numpy-CSDN博客

基于pyskl的poseC3D训练自己的数据集-CSDN博客

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值