使用 Rerun SDK(适用于 C++、Python 和 Rust)记录图像、张量、点云和文本等数据。日志被传输到重新运行查看器以进行实时可视化或归档以供以后使用。
import rerun as rr # pip install rerun-sdkrr.init("rerun_example_app")
rr.connect() # Connect to a remote viewer # rr.spawn() # Spawn a child process with a viewer and connect # rr.save("recording.rrd") # Stream all logs to disk
# Associate subsequent data with 42 on the “frame” timeline rr.set_time_sequence("frame", 42))
# Log colored 3D points to the entity at
path/to/points
rr.log("path/to/points", rr.Points3D(positions, colors=colors)) …
Python 和 Rust 库都可以启动重新运行查看器,但要通过网络传输日志数据或加载我们的.rrd
数据文件,您还需要rerun
二进制文件。
pip install rerun-sdk
它可以通过或 来安装cargo install rerun-cli
。
您现在应该能够rerun --help
在任何终端中运行。
- 📚高级文档
- ⏃可记录类型
- ⚙️示例
- 🌊 C++ API 文档
- 🐍Python API 文档
- 🦀 Rust API 文档
⁉️ 故障排除
我们正在积极开发中。我们想要添加许多功能,并且 API 仍在不断发展。 期待突破性的改变!
目前我们正在努力解决的缺点:
- 数百万个点云速度很慢
- 记录许多微小的事情(例如标量)会产生很大的开销
- 您想要可视化的数据必须适合 RAM
- 请参阅https://www.rerun.io/docs/howto/limit-ram了解如何限制内存使用。
- 我们计划在未来某个时候拥有基于磁盘的数据存储。
Rerun 旨在帮助您理解复杂的流程,其中包括丰富的多模态数据,如 2D、3D、文本、时间序列、张量等。它用于许多行业,包括机器人、模拟、计算机视觉或任何涉及大量数据的行业随着时间的推移而演变的传感器或其他信号。
假设您正在建造一个真空清洁机器人,但它总是撞到墙壁。它为什么要这么做?您需要一些工具来调试它,但普通的调试器不会有帮助。同样,仅记录文本也没有多大帮助。机器人可能会记录“穿过门口”,但这并不能解释为什么它认为墙壁是门。
您需要的是一个视觉和时间调试器,它可以记录机器人在其小脑袋中所持有的世界的所有不同表示,例如:
- RGB 相机馈送
- 深度图像
- 激光雷达扫描
- 分割图像(机器人如何解释它所看到的内容)
- 公寓的 3D 地图
- 机器人已检测到(或认为已检测到)的所有对象,作为 3D 地图中的 3D 形状
- 对自己的预测充满信心
- ETC
您还希望了解所有这些数据流如何随着时间的推移而演变,以便您可以回过头来准确找出问题所在、时间和原因。
也许事实证明,来自太阳的眩光以错误的方式照射到其中一个传感器,从而混淆了分割网络,导致错误的对象检测。或者可能是激光雷达扫描代码中的错误。或者机器人可能认为它在公寓的其他地方,因为它的里程计被破坏了。或者它可能是其他上千件事之一。重新运行将帮助您找到答案!
但从机器人的角度看世界不仅仅是为了调试,它还能为您提供有关如何改进算法、设置新测试用例或收集数据集的想法。它还可以让您向同事、老板和客户解释机器人的大脑。等等。眼见为实,一张图像胜过一千个文字,多模态时间记录胜过一千张图像:)
当然,Rerun 的用途不仅仅限于机器人。任何时候您有任何形式的传感器,或者随着时间的推移而演变的 2D 或 3D 状态,Rerun 将是一个很棒的工具。
Rerun 采用开放核心模型。这个存储库中的所有内容都将保持开源和免费(就像啤酒和自由一样)。将来,Rerun 将提供构建在核心免费项目之上的商业产品。
Rerun 开源项目针对个人开发人员的需求。该商业产品针对构建和运行计算机视觉和机器人产品的团队的特定需求。
在您的研究中使用 Rerun 时,请引用它以承认它对您的工作的贡献。这可以通过在论文的软件或方法部分中引用重新运行来完成。
建议的引用格式:
@software{RerunSDK, title = {Rerun: A Visualization SDK for Multimodal Data}, author = {{Rerun Development Team}}, url = {https://www.rerun.io}, version = {insert version number}, date = {insert date of usage}, year = {2024}, publisher = {{Rerun Technologies AB}}, address = {Online}, note = {Available from https://www.rerun.io/ and https://github.com/rerun-io/rerun} }
请将“插入版本号”替换为您使用的 Rerun 版本,并将“插入使用日期”替换为您在研究中使用该工具的日期。这种引用格式有助于确保 Rerun 的开发团队的工作获得适当的认可,并促进其他研究人员发现该工具。
ARCHITECTURE.md
BUILD.md
rerun_py/README.md
- Python SDK 的构建说明CODE_OF_CONDUCT.md
CODE_STYLE.md
CONTRIBUTING.md
RELEASES.md
.whl
从GitHub 版本下载正确的版本- 运行
pip install rerun_sdk<…>.whl
(替换<…>
为实际文件名) - 测试一下:
rerun --version