主要内容

pcregistercorr

使用相位相关注册两个点云

描述

例子

tform= pcregistercorr(移动固定的网格化gridStep计算注册移动点云的刚性变换,移动,到定点云,固定的使用相位相关算法。

该函数首先将两个点云转换为2-D占用电网进行注册X-y飞机有中心的起源(0,0,0)。使用该网格单元的占用率Z.- 网格内的点的符合值。

[tformrmse] = pcregistercorr(___此外,返回注册点云之间的欧氏距离的均方根误差。

[___顶峰] = pcregistercorr(___另外返回两个占用网格之间的相位差的峰值相关值。

[___] = pcregistercorr(___名称,值除了前面语法中的输入参数外,还使用一个或多个名称-值参数指定选项。例如,“窗口”,假的设置窗户名称-值参数错误的

例子

全部折叠

从一个Velodyne包捕获(PCAP)文件读取数据到工作空间。

Veloreader = Velodynefilereader(“lidarData_ConstructionRoad.pcap”“HDL32E”);

从激光雷达数据帧中读取一个固定点云和一个移动点云。

Framenumber = 1;Skipframe = 5;固定= ReadFrame(Veloreader,Framenumber);移动= ReadFrame(Veloreader,Framenumber + Skipframe);

找到移动点云和固定点云的地面平面。以米为单位设定最大距离。

maxdistance = 0.4;参考矢量= [0 0 1];groundmoving = pcfitplane(移动,maxdistance,参考矢量);indardfixed = pcfitplane(固定,maxdistance,参考矢量);

变换点云,使它们的地面平面平行于X-y飞机。

tformMoving = Ircormaration(地面,参考矢量);Tformfixed = Irclancrotation(接地,参考矢量);移动= pctransform(移动,tformmoving);多个校正= pctransform(固定,tformfixed);

将移动点云注册到固定点云。将占用电网尺寸设置为100×100米,每个网格单元的大小为0.5×0.5米。

gridsize = 100;gridstep = 0.5;tform = pcregistercorr(移动,多种多样的,gridsize,gridstep);

使用估计的刚性转换转换移动点云。

combinedTform = rigid3d (tform。T * tformMoving。T * tformFixed.T);movingReg = pctransform(移动,combinedTform);

可视化注册。

图形子图(121)PCShowpair(移动,固定)标题(之前注册的) view(2) subplot(122) pcshowpair(movingReg,fixed)'注册后')查看(2)

输入参数

全部折叠

移动点云,指定为pointCloud目的。

固定点云,指定为apointCloud目的。

面积占用网格的大小,指定为世界单位的标量值。占用网格的宽度和高度都等于这个值。中心在原点(0,0,0)处。

每个网格单元的大小,以世界单位的标量值指定。

名称-值对的观点

例子:'zlim',[0 3]设置Z.-轴下限为0.的上限3.

Z.-AXIS限制来计算网格单元的占用,指定为表单的向量[zminZmax.),zminZmax.是数字标量。函数用a来缩放点Z.设在值zminZmax.到范围内的概率[0,1]。价值少于zmin被分配了占用价值0.。值大于Zmax.被分配了占用价值1

指定是否使用加窗来抑制频域的频谱泄漏效应是合乎逻辑的。当您设置窗户真正的,该函数使用Blackman窗口来提高注册结果的稳定性。如果将在占用网格中对齐的公共功能沿边缘定向,则设置窗户错误的可以提供卓越的注册结果。

输出参数

全部折叠

刚性转换,返回为arigid3d.目的。刚性变换将移动点云注册到固定点云。这rigid3d.对象描述了刚性3-D变换。

根均方误差,作为对齐点云之间的欧几里德距离返回。

两个占用网格之间相位差的峰值相关值,返回为标量值。峰值小于0.03注册结果不理想。

提示

  • 相位相关法最好用于点云的配准,当变换可以通过平移来描述X-y飞机和旋转周围Z.-轴。例如,具有水平安装的激光雷达的地面车辆在平坦的表面上移动。

  • 相位相关算法预计动作仅沿着X-y平面,如接地平面。如果运动不是在X-y飞机,你可以使用normalRotation转换点云的功能。例如,在车辆运动中,您可以通过使用的是诸如坑洼和速度凸起的车辆悬架或表面特征的影响normalRotation功能。

  • 增加占用网格的大小增加了该功能的计算需求。您可以通过修改占用网格的大小来通过修改来控制占用网格的大小网格化gridStep参数。

  • 如果您获得了糟糕的注册结果和顶峰相关值小于0.03,试着设置窗户参数错误的

参考文献

Dimitrievski, Martin, David Van Hamme, Peter Veelaert, Wilfried Philips。“自动驾驶汽车里程测量的占用地图的鲁棒匹配。“在第11届计算机视觉、成像与计算机图形学理论与应用联席会议论文集626-33。罗马,意大利:ScitePress - 科技出版物,2016年。

介绍了R2020b