我正在尝试使用 mrpt slam 算法。我想调整原始的“icp slam 应用程序”以使用我的模拟中的激光雷达扫描。如果我理解正确,我应该使用 CObservation2DRangeScan 类来包含激光雷达观测。我的问题是我找不到如何设置扫描角度。我假设扫描必须在极坐标中,那么如果setScanRange
以米为单位设置范围,我该如何设置角度?我在类中找不到合适的成员函数,我可能遗漏了一些东西。
到目前为止的代码示例:
mrpt::obs::CObservation2DRangeScan::Ptr observation(new mrpt::obs::CObservation2DRangeScan);
observation->resizeScan(i32NUM_POINTS);
for(int32_t i = 0; i < i32NUM_POINTS; ++i)
{
observation->setScanRange(i, arrPoints[i].range);
//here I must set the scan angle
observation->setScanRangeValidity(i, true);
}
mrpt 版本:2.2.1
先感谢您
马西莫