【发布时间】:2018-05-19 10:20:21
【问题描述】:
我有一个应用程序,我成功地实时绘制来自 LiDAR 的 2D 激光距离数据,并运行 PCL 的欧几里得聚类算法以不同颜色绘制这些聚类点。但是,我想在每个检测到的集群旁边添加一个文本,并告诉它与传感器的距离。我确实有每个检测到的集群的质心点的坐标,但是当我尝试使用 addText 时:
bool pcl::visualization::PCLVisualizer::addText (const std::string & text, int xpos, int ypos,double r,double g,double b,const std::string & id = "")
text:要在窗口中打印的文本
xpos:在 x 中的位置
ypos:y 中的位置
r: 红色
g:绿色
b:蓝色
id:文本ID标签
似乎函数 addText() 将文本放在 PIXEL x 和 y 值上,而不是实际值(米)上。但是,PCL 的其他方法,例如“addPoint()”、addCircle() 等,确实是根据真实世界的测量结果放置数据。
有没有人有在 PCL 可视化器中将空间坐标转换为像素的经验,或者以其他方式成功绘制文本?
以下是我的应用程序的屏幕截图。簇以红色绘制,质心周围有一个白色圆圈。在左下角,我正在打印每个集群的距离。可以看出,它们只是堆叠在一起,而不是被添加到自己的白色圆圈之上。
感谢您的帮助
问候 Screenshot
【问题讨论】: