360如何做网站,网站建设需要用到什么软件,网站建设语音,建设工程获奖查询网站在做图像配准时就听闻过一些点云的方法#xff0c;却没对其有太多的认识#xff0c;只是知道点云point cloud顾名思义就是一些离散点的集合。现在在无人驾驶中一些激光雷达的作用其实就是生成点云数据#xff0c;接下来介绍一下点云数据的含义和基础的使用方法。
虽然特斯拉…在做图像配准时就听闻过一些点云的方法却没对其有太多的认识只是知道点云point cloud顾名思义就是一些离散点的集合。现在在无人驾驶中一些激光雷达的作用其实就是生成点云数据接下来介绍一下点云数据的含义和基础的使用方法。
虽然特斯拉是坚定的纯视觉自动驾驶路线的支持者但其实更多的无人驾驶公司同时还会使用激光雷达LiDAR。经常见到无人驾驶的车顶会有一个旋转的圆柱体其实就是机械式激光雷达通过旋转镜面将激光反射到不同角度得到360度的数据 雷达有很多种激光雷达只是其实一种它的全称是light detection and ranging就是使用激光进行探测和测距。 先来讲测距的原理。
因为同时有发射器和接收器而光速是已知的所以很明显可以利用波束传播的时间来得到距离。那么怎么得到传播时间呢一个方法就大名鼎鼎的TOFtime of fly又叫做光束法。这种方法依靠物体的漫反射对脉冲宽度和接收器时间分辨率要求高所以总体效果一般。第二种方法是相位法phase difference这是一种相对的方法不是发射一束而是成周期地发射所以回波会产生相位差从而可以估计传播时间。
除了基于时间段测距还有基于几何的测距。三角测量法triangulation principle利用了三角形相似原理。
探测是基于测距的目的是得到物体的三维坐标。以什么坐标系
得到三维坐标及每个点对应的反射强度就构成了点云数据。接下来看一下真实的点云数据是什么样子。从阿波罗项目页可以下载到一些点云数据。这里百度提供了两种数据格式一种是.pcd一种是.bin文件。.pcd是PCL库官方指定的格式每一个.pcd文件都会有一个文件头就和Opencv中的Mat一样会有一个数据头去描述这个点云图的一些基础信息
# .PCD v0.7 - Point Cloud Data file format
VERSION 0.7 #指定PCD文件版本
FIELDS x y z intensity timestamp #指定一个点可以有的每一个维度和字段的名字
SIZE 4 4 4 1 8 #用字节数指定每一个维度的大小
TYPE F F F U F #一个字符指定每一个维度的类型F是浮点
COUNT 1 1 1 1 1 #每一个维度包含的元素数目一般都是1,但是描述子可能是128
WIDTH 101045 #无序点云的数目或者有序点云一行的数目
HEIGHT 1 #无序点云时设置为1,有序时表示一列的数目
VIEWPOINT 0 0 0 1 0 0 0 #视点信息被指定为三维平移 四元数默认值为0001000
POINTS 101045 #指定点云中点的总数
DATA binary_compressed #指定存储点云数据的数据类型ASCII或者Binbin更快速
按道理它就是一个文本但是直接以文本打开的话除了刚才讲到的文件头其余数据都是乱码python中使用utf-8和ISO-8859-1和rb都无法看到正常的点坐标。所以兜兜转转半天还是通过安装第三方库轻松解决。
import open3d as o3d
print(Load a ply point cloud, print it, and render it)
pcd o3d.io.read_point_cloud(20期.pcd)
print(pcd)
print(o3d.np.asarray(pcd.points))
o3d.visualization.draw_geometries([pcd])可以得到坐标及可视化结果
[[ -8.39819813 -5.66665173 -0.9710691 ] [ -8.13930702 -5.81639719 -0.9073652 ] [-22.42602539 -21.35739517 0.32076412] ... [ -6.15335035 -5.64766216 -1.15699255] [ -6.67443991 -5.32205296 -1.74743378] [ -6.31309557 -5.57189178 -1.63395274]] 也可以安装PCL似乎需要自己编译暂未实现。
Reference
1.https://www.zhihu.com/question/418827194/answer/1451606698
2.旋转https://baijiahao.baidu.com/s?id1695602953340739196wfrspiderforpc
3.readhttps://www.cnblogs.com/zyber/p/9578240.html
4.格式https://blog.csdn.net/weixin_46098577/article/details/111594733
5安装pclhttps://blog.csdn.net/McEason/article/details/105195285