主要内容

scancontextloopdetector

使用扫描上下文描述符检测循环封闭

描述

scancontextloopdetector使用全局扫描上下文描述符在点云数据中检测循环封闭。一种扫描上下文描述符将点云视图编码到2D描述符中。scancontextloopdetector用相应的视图标识符存储描述符,以将检测到的环闭合与视图相关联PCViewSet用于地图构建。

创建

描述

例子

Loopdetector= scancontextloopdetector()创建默认值scancontextloopdetector目的。使用addDescriptor对象函数将描述符添加到循环检测器中。使用检测环对象功能检测循环封闭。

特性

展开全部

此属性仅阅读。

查看标识符,指定为p- 独特积极整数的元素向量,其中p是添加到检测器中的描述符的数量。

此属性仅阅读。

扫描上下文描述符,指定为m-经过-n-经过-p大批。m是径向垃圾箱的数量和n是描述符中的方位角垃圾箱的数量。p是检测器中描述符的数量。

对象功能

addDescriptor 将描述符添加到循环闭合检测器
删除词 从环闭合检测器中删除描述符
检测环 检测循环封闭

例子

全部收缩

创建循环封闭检测器。

loopdetector = scancontextloopdetector;

创建一个Velodyne PCAP文件读取器。

veloreader = velodynefilereader('lidardata_constructionRoad.pcap',,,,'HDL32E');

读取点云,并从每个点云扫描中提取扫描上下文描述符。将描述符添加到检测器中。

为了viewID = 1:10 ptcloud = readframe(veloreader,viewId);描述符= scancontextdescriptor(ptcloud);AddDescriptor(LoopDetector,ViewID,Descriptor);结尾

在不排除任何最近添加的描述符的情况下,检查下一个点云是否可以分类为循环闭合检测。

ViewID = ViewID + 1;ptcloud = readframe(veloreader,viewID);描述符= scancontextdescriptor(ptcloud);[loopviewId,dists] = detectloop(loopdetector,描述符,'numexCludedDeScriptor',0)
loopViewID =UINT3210
dists =单身的0.0858

扩展功能

C/C ++代码生成
使用MATLAB®CODER™生成C和C ++代码。

版本历史记录

在R2021b中引入