gtsam::pose2 初始化
时间: 2024-10-11 13:13:09 浏览: 28
GTSAM (Google Robotics Tools for Sensor Fusion and Mapping)是一个用于处理多种传感器数据并提供高效的优化框架的开源库。其中,`gtsam::Pose2`是GTSAM中的二维姿态类,它代表了平移和旋转组成的二维空间位置。
初始化`gtsam::Pose2`有几种常见的方式:
1. **使用坐标直接构造**:
```cpp
gtsam::Point2 translation(1.0, 2.0); // 坐标值
gtsam::Rot2 rotation(gtsam::math::rad(1.57)); // 角度值,通常用弧度表示
gtsam::Pose2 pose(translation, rotation);
```
2. **从其他 Pose 或者值对象转换**:
```cpp
gtsam::Pose2 priorPose; // 已知的 Pose2 对象
gtsam::Pose2 initialPose(priorPose); // 深拷贝初始值
// 或者从其他表示形式,例如从其他库的数据结构转化过来
Eigen::Matrix<double, 2, 1> homogeneousCoord = ...; // 八元组表示
gtsam::Pose2 poseFromHomogeneous(homogeneousCoord(0), homogeneousCoord(1), homogeneousCoord(2));
```
3. **使用默认值**:
```cpp
gtsam::Pose2 defaultPose;
```
阅读全文