SuperAPI AI 工具集

rerun-blueprint

数据与分析

查看项目

更新于 10-16 00:20

技能介绍

用途:为 Rerun 录制或数据集设计查看器布局(blueprint),决定录制内容如何呈现。导入方式为 import rerun.blueprint as rrb。

主要能力:先枚举每个 (entity_path, archetype) 对,原型决定视图类型,实体路径决定作用范围;数据集可用 dataset.schema().component_columns() 打印,本地录制可用 RrdReader 流式读取。原型到视图的映射包括:Points2D、Image、Boxes2D 等对应 Spatial2DView;Points3D、Mesh3D、Transform3D 等对应 Spatial3DView;Scalars、SeriesLines 对应 TimeSeriesView;TextLog、BarChart 对应相应视图;Tensor、DepthImage 对应 TensorView;GeoPoints 对应 MapView;GraphNodes 对应 GraphView;表格数据对应 DataframeView。

使用方式:按共享路径前缀分组实体,一个空间视图只用一个空间坐标系,多个 Scalars 合并为一个 TimeSeriesView。用 Grid、Horizontal、Vertical、Tabs 容器组织视图,务必显式设置 origin 和 name,否则 origin 默认为 / 会把整棵树塞进一个视图。contents 默认 "$origin/**",可用 include/exclude 规则限定范围。命名坐标系需通过 spatial_information=rrb.SpatialInformation(target_frame="<frame>") 指定。迭代时用 ViewerClient.spawn(headless=True, port=9879) 启动无头查看器,加载录制后反复发送蓝图并截图,每次发送加截图即一次迭代。蓝图与数据按 store 身份(application id 与 recording id)绑定,需从 rrd 读取这两个值,否则蓝图不会生效。

限制:rrb 视图与 ViewerClient(rerun.experimental)不稳定,构造参数被拒时用 help() 查询。DataframeView 缺少 query 会显示 Unknown timeline;视图空白可能是导入未完成或游标在数据之前。