首页 > 解决方案 > 从以极坐标表示的点创建 PCL 库 PointCloud 实例

问题描述

我有来自 2D 激光测距仪的数据,以 360 元素浮点数组的形式,每个元素代表一个角度的距离。例如,如果数组的第 10 个元素是值 2.5,这意味着在 10 度角处,到障碍物的距离是 2.5 米。

给定以极坐标(角度、距离)表示的这些点,创建PointCloud实例的最佳方法是什么?我看到 PointCloud 是一个模板类,所以它取决于它包含的PointT的类型。回顾这些类型,似乎它们都在笛卡尔坐标(x,y,z)中,有时在顶部添加了信息。但我找不到任何原生极坐标点类型。我错过了吗?是否期望从任何坐标到笛卡尔坐标的转换在库外完成?

将极坐标转换为笛卡尔坐标很简单,我只想知道在 PCL 库中是否有一种本机的、可能更有效的方法(可能将其保持在极坐标中,避免完全转换等)

谢谢!

标签: g++point-cloud-librarypoint-clouds

解决方案


据了解,在极坐标中没有本地表示点的方法。但是为什么不创建自己的 PointType?这是帮助文档:https ://pcl.readthedocs.io/projects/tutorials/en/latest/adding_custom_ptype.html#adding-custom-ptype


推荐阅读