rai-opensource/spatialmath-python
Create, manipulate and convert representations of position and orientation in 2D or 3D using Python
해결하는 문제
공간 수학은 로봇공학과 로봇 비전의 기초이며, 개발자가 2D 및 3D 공간 내 객체의 위치, 방향, 자세를 설명할 수 있게 해줍니다. 이 라이브러리는 수동으로 원시 행렬을 관리하지 않고도 이러한 복잡한 기하학적 변환을 표준화되고 타입 안전한 방식으로 처리할 수 있는 방법을 제공합니다.
작동 방식
이 라이브러리는 NumPy 배열을 수학적 군으로 추상화하는 고수준 클래스를 제공합니다. 다음을 구현합니다:
- 3D 공간:
SE3(자세),SO3(방향),UnitQuaternion(방향),Twist3(자세). - 2D 공간:
SE2(자세),SO2(방향),Twist2(자세).
이 클래스들은 조합(연산자 * 사용), 점 변환, 역행렬 연산을 위한 오버로드 연산자를 지원합니다. 또한 정규화, 오일러 각도와 롤-피치-요 각 사이의 변환, 행렬 지수와 로그 연산을 통한 리 대수 연결 기능도 제공합니다. 원시 데이터를 선호하는 사용자를 위해 NumPy 배열에 직접 작동하는 저수준 기본 함수 세트도 제공됩니다.
대상 사용자
로봇 비전 및 운동 제어 작업을 수행하는 로봇공학 연구자, 엔지니어, 학생들을 위한 것입니다.
주요 기능
- 타입 안전성: 2D 변환과 3D 회전 행렬을 혼동하는 오류를 방지합니다.
- 벡터화: 한 줄로 자세나 회전의 시퀀스를 생성하고 연산할 수 있습니다.
- 기호 지원: SymPy와 통합되어 회전 행렬에 기호 변수를 사용할 수 있습니다.
- 시각화: 변환과 궤적을 시각화하기 위한 내장된 플롯 및 애니메이션 도구(
trplot,tranimate)를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트