前言
点云数据作为一种丰富的三维空间信息表达方式,通常用于自动驾驶、机器人导航和三维建模等领域。然而,点云数据的直观性不如二维图像,这限制了它在一些需要快速视觉反馈的应用场景中的使用。本文将探讨如何将点云数据转换为二维图像,并介绍相关的技术和实践方法。
实现原理
1、获取感兴趣区域ROI进行映射。
选取X[-80,80],Y[-40,40]进行映射。
2、将点云映射到图片上。
新建一张(640,640)的图片,将点云映射到图片内。
代码实现
for point in cloud.points:
if abs(point[1]) < 40 or abs(point[0]) < 60:
x = (40-point[1]) * 640 / 80
y = (80-point[0]) * 640 / 160
# 绘制点
# 注意:cv2.circle的坐标是(x, y),颜色是BGR,半径是1
cv2.circle(image, (int(x), int(y)), radius=1, color=(255, 0, 0), thickness=-1)
结果可视化