Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

PyPose

結合深度學習與李群最佳化、用於可微分機器人學的 PyTorch 函式庫

授權條款

Apache-2.0

概述

PyPose 是一個以 PyTorch 為基礎的函式庫,為機器人學銜接深度學習與以物理為基礎的最佳化。它提供可微分的李群運算、卡爾曼濾波器(擴展卡爾曼濾波器(EKF)、UKF)、位姿圖最佳化、二階最佳化器(Gauss-Newton、Levenberg-Marquardt)、慣性量測單元(IMU)預積分與 LQR 控制,全部與 PyTorch 的 autograd 整合,可在整個機器人軟體堆疊中進行端對端的梯度計算。

PyPose 在 PyTorch 中提供可微分的李群運算、狀態估測濾波器與二階最佳化器,為機器人學銜接深度學習與以物理為基礎的最佳化。它讓以梯度為基礎的端對端學習能貫穿整個機器人感知與控制流程。

為何重要

PyPose 讓經典演算法變得可微分並與現代深度學習相容,填補了機器人軟體中的一個關鍵缺口。它讓研究人員能在 SLAM、控制與狀態估測中,結合以物理為基礎之方法的泛化能力與神經網路的彈性。

解決的問題

用於 SLAM、控制與狀態估測的傳統機器人演算法不可微分,因此與深度學習訓練流程不相容。PyPose 將這些演算法包裝成可微分的 PyTorch 運算,讓以梯度為基礎的學習能貫穿整個機器人軟體堆疊。

重點

  • PyTorch 中可微分的李群運算(SO3、SE3、Sim3)
  • 狀態估測:擴展卡爾曼濾波器(EKF)、UKF、粒子濾波器、慣性量測單元(IMU)預積分
  • 二階最佳化器:Gauss-Newton、Levenberg-Marquardt
  • 可透過 pip 安裝,並完整整合 PyTorch autograd

適用對象

  • 處於深度學習與經典方法交會處的機器人研究人員
  • 想要可微分流程的 SLAM 與視覺里程計研究人員
  • 需要在神經網路中加入物理先驗的機器人學習實務工作者

限制

  • 需要同時熟悉 PyTorch 與李群理論
  • 在超大規模 SLAM 上的效能可能比不上專用的 C++ 實作
  • 函式庫仍在成熟中:部分進階功能可能尚未完備

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。