Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

PyPose

用于深度学习与李群优化的可微分机器人 PyTorch 库

许可证

Apache-2.0

概述

PyPose 是一个基于 PyTorch 的库,将深度学习与基于物理的优化在机器人领域连接起来。它提供了李群运算、卡尔曼滤波器(EKF、UKF)、位姿图优化、二阶优化器(高斯-牛顿、Levenberg-Marquardt)、IMU 预积分和 LQR 控制的可微分实现——全部与 PyTorch 的 autograd 集成,实现贯穿整个机器人技术栈的端到端梯度计算。

PyPose 通过在 PyTorch 中提供可微分的李群运算、状态估计滤波器和二阶优化器,将深度学习与基于物理的优化在机器人领域连接起来。它实现了贯穿整个机器人感知和控制管线的端到端基于梯度的学习。

为何重要

PyPose 通过使经典算法可微分并与现代深度学习兼容,填补了机器人软件中的关键空白。它使研究人员能够将基于物理方法的泛化能力与神经网络的灵活性相结合,用于 SLAM、控制和状态估计。

解决的问题

用于 SLAM、控制和状态估计的传统机器人算法不可微分,使其与深度学习训练管线不兼容。PyPose 将这些算法封装为可微分的 PyTorch 操作,实现贯穿整个机器人技术栈的基于梯度的学习。

要点

  • PyTorch 中的可微分李群运算(SO3、SE3、Sim3)
  • 状态估计:EKF、UKF、粒子滤波器、IMU 预积分
  • 二阶优化器:高斯-牛顿、Levenberg-Marquardt
  • pip 可安装,完整的 PyTorch autograd 集成

适用人群

  • 处于深度学习与经典方法交叉领域的机器人研究人员
  • 希望获得可微分管线的 SLAM 和视觉里程计研究人员
  • 需要在神经网络中使用基于物理先验的机器人学习从业者

局限

  • 需要熟悉 PyTorch 和李群理论
  • 对于超大规模 SLAM 的性能可能不如专用 C++ 实现
  • 库仍在成熟中——一些高级功能可能尚不完整

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。