机器人持续学习基准LIBERO系列2——路径与基准基本信息

发布时间:2024年01月08日

-1.前置内容

0.相关路径

  • 安装好libero后,会在home文件夹下有一个.libero的文件夹(可以使用ctrl+h显示隐藏文件),进入后有config.yaml
  • 所有的路径都是在该文件中进行查找的
  • 共有五个路径:
    • assets:
    • bddl_files:
    • benchmark_root
    • datasets:
    • init_states:
      在这里插入图片描述
  • 直接将datasets的默认路径修改为其他路径(将数据集放在了移动硬盘里)

在这里插入图片描述

  • 查看路径
from libero.libero import get_libero_path
datasets_default_path = get_libero_path("datasets")
print("Default dataset root path: ", datasets_default_path)

运行结果:

Default dataset root path:  /media/jiangyvhang/WD_BLACK/dataset/libero
  • 修改路径:官方提供了函数来修改路径,但修改的是benchmark root的路径,其他几个的路径在其基础上跟着改变,感觉更适合大范围更改相关配置时候使用:
from libero.libero import set_libero_default_path
set_libero_default_path("修改后benchmark_root的路径")

1.基准测试相关信息查看

  • 导入基准模块
from libero.libero import benchmark
  • 实例化基准类

#可用基准名称及其对应类
benchmark_dict = benchmark.get_benchmark_dict()
#实例化对应类
benchmark_instance = benchmark_dict["libero_10"]()

  • 获取相关信息
#基准名称
print("基准名称:",benchmark_instance.name)
#任务数量
print("任务数量:",benchmark_instance.get_num_tasks())
#每一个任务的描述
task_names = benchmark_instance.get_task_names()
print("任务1描述:",task_names[1])
#获取指定第i个任务
i = 1
task = benchmark_instance.get_task(i)

#获取任务的bddl文件的路径
print("bddl文件名:",task.bddl_file)
print("bddl上级文件夹:",task.problem_folder)
print("上级文件夹所在目录:",get_libero_path("bddl_files"))
import os
print("完整的绝对路径:",os.path.join(get_libero_path("bddl_files"), task.problem_folder, task.bddl_file))

#获取任务的init文件的路径
print("init文件名:",task.init_states_file)
print("bddl上级文件夹:",task.problem_folder)
print("上级文件夹所在目录:",get_libero_path("init_states"))
import os
print("完整的绝对路径:",os.path.join(get_libero_path("init_states"), task.problem_folder, task.init_states_file))
#第i个任务的初始状态
init_states = benchmark_instance.get_task_init_states(i)
print("初始状态维度:",init_states.shape)

运行结果

在这里插入图片描述

文章来源:https://blog.csdn.net/weixin_53610475/article/details/135444868
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。