主要内容

Track-Level融合雷达和激光雷达数据的仿真软件万博1manbetx

自治系统需要精确估计的环境来支持决策、计划和控制。万博1manbetx高分辨率雷达和激光雷达等传感器经常用于自治系统协助评估的环境。通常这些传感器输出跟踪。输出跟踪检测和融合跟踪在一起以分散的方式提供许多好处,包括低误报率、更高的目标估计精度,低带宽需求和较低的计算成本。这个例子向您展示了如何从测量跟踪对象的雷达和激光雷达传感器以及如何融合在仿真软件中使用track-level融合方案®。万博1manbetx你处理的雷达测量使用高斯混合概率假设密度(GM-PHD)跟踪和激光雷达测量使用一个联合概率数据关联(JPDA)追踪。您进一步融合这些痕迹使用track-level融合方案。密切遵循的例子Track-Level雷达和激光雷达数据的融合MATLAB®的例子。

模型的概述

load_system (“TrackLevelFusionOfRadarAndLidarDataIn万博1manbetxSimulink”);set_param (“TrackLevelFusionOfRadarAndLidarDataIn万博1manbetxSimulink”,“SimulationCommand”,“更新”);open_system (“TrackLevelFusionOfRadarAndLidarDataIn万博1manbetxSimulink”);

模型有六个子系统,每一个实现一个算法的一部分。

  • 模拟场景和传感器

  • 雷达跟踪算法

  • 激光雷达跟踪算法

  • 跟踪级别融合

  • 性能分析

  • 可视化

模拟场景和传感器

这个例子中捕获的场景记录中描述的场景Track-Level雷达和激光雷达数据的融合MATLAB的例子。场景读者块读取预先录制的场景文件并生成演员和自我车辆位置数据万博1manbetxSimulink.Bus(万博1manbetx模型)对象。在这种情况下,自我车辆安装有四个二维雷达传感器。前后雷达传感器的视场45度。左边和右边雷达传感器有一个150度的视野。每个雷达方位分辨率为6度,2.5米的范围内。自我车辆还安装有一个3 d激光雷达传感器的视场360度方位和仰角40度。激光雷达方位分辨率0.2度和1.25度仰角海拔(32通道)。雷达检测发电机块生成雷达探测和激光雷达点云发生器块生成的点云。从所有四个雷达传感器检测被组合在一起检测连接块和数字时钟块是用来模拟时间。传感器配置和模拟传感器数据可视化在动画。 Notice that the radars have higher resolution than objects and therefore return multiple measurements per object. Also notice that the lidar interacts with the actors as well as the road surface to return multiple points.

雷达跟踪算法

雷达通常有更高的分辨率比对象并返回多个检测每个对象。传统的追踪器,如全球最近邻(GNN)和联合概率数据关联(JPDA)假定传感器返回最多每扫描一个检测每个对象。因此,高分辨率传感器的检测必须集群与传统追踪器在处理之前或必须使用扩展对象追踪处理。扩展对象追踪器不需要preclustering检测。一般来说,扩展对象追踪者提供更好的评估的对象,因为他们同时处理聚类和数据关联。

在本例中,您使用一个高斯混合概率假设密度(GM-PHD)扩展对象跟踪雷达跟踪。跟踪器块需要检测,预测时间,传感器配置作为输入和输出跟踪作为确认万博1manbetxSimulink.Bus(万博1manbetx模型)对象。从雷达检测预处理包括自我车辆INS信息雷达检测预处理MATLAB函数(万博1manbetx模型)块。读者块提供传感器配置的传感器配置跟踪。块是通过使用来实现的MATLAB系统(万博1manbetx模型)块。代码块中定义的HelperSourceConfigReader类。

这个可视化显示雷达跟踪在一个时间步。注意,雷达传感器报告多个检测每个对象和GM-PHD追踪二维矩形跟踪每个对象对应形式。

激光雷达跟踪算法

激光雷达传感器具有高分辨率的能力,每个传感器的扫描包含许多点,通常被称为点云。这个原始数据必须预处理提取对象。执行预处理使用RANSAC-based plane-fitting算法和边界框安装使用Euclidian-based距离聚类算法。关于该算法的更多信息,请参考使用激光雷达跟踪车辆:从点云来跟踪列表的例子。

实现使用一个边界框探测器的块MATLAB系统(万博1manbetx模型)块。代码块中定义的一个辅助类,HelperBoundingBoxDetectorBlk。块接受云位置和预测时间点作为输入和输出边界框检测相应的障碍和分类信息。使用传统的JPDA跟踪检测处理,配置了一个交互多模型(IMM)过滤器。IMM滤波器是使用helper函数实现的helperInitIMMUKFFilter,它被指定为过滤器的初始化函数块的参数。从激光雷达传感器检测预处理包括自我在激光雷达探测车辆INS信息预处理MATLAB函数(万博1manbetx模型)块。

计算计算检测能力的块可检测TrackIDs跟踪程序的输入和输出两列数组。第一列代表的TrackIDs追踪和第二列指定由传感器和限位框探测器探测概率。使用一块实现MATLAB函数(万博1manbetx模型)块。

这个可视化显示了激光雷达跟踪在一个时间步。边界框探测器块从点云,生成检测和JPDA跟踪三维立方体的形式跟踪每个对象对应。

Track-Level融合

使用进行航迹的跟踪融合算法实现熔化炉。块需要预测时间,矩形雷达跟踪和长方体激光雷达融合跟踪轨迹作为输入和输出。它使用传统进行航迹协会融合方案和GNN任务创建一个假设。跟踪连接块结合追踪来源和产生一个跟踪汽车。fuser源配置雷达和激光雷达设置使用SourceConfig变量通过PreLoadFcn回调。看到模型的回调(万博1manbetx模型)关于回调函数的更多信息。这个示例的状态融合算法实现的helperRadarLidarFusionFunction辅助功能和指定为“自定义融合函数”财产。

这个可视化显示跟踪融合在一个时间步。融合跟踪更接近实际的对象比单个传感器跟踪,这表明跟踪精度提高后传感器的融合跟踪估计。

性能分析

在本例中,您使用广义评估每个算法的性能最优的子模式分配(GOSPA)指标。GOSPA度量目标跟踪系统的性能评价与标量成本。

GOSPA度量可以用下面的方程计算

$ GOSPA = [\ sum_ {i = 0} ^ {m}(最低(d_ {b}, c)) ^ {p} + \压裂{c ^ {p}}{\α}(n - m)) ^ {1 / p} $

在哪里m美元是地面真理,的数量$ n (n # 62; = m)美元是估计的数量,美元加元截止距离阈值,美元d_ {b} $是距离跟踪和真理中指定一个距离函数计算了距离财产,$ p $是度量和订单吗\α美元定义的是α参数指标,从一块面具。

较低的价值度量表明更好的跟踪算法的性能。使用GOSPA指标自定义运动模式,在本例中,使用的设置距离财产自定义和定义之间的距离函数跟踪及其相关地面真理。这些距离函数中定义helperRadarDistancehelperLidarDistance辅助文件。地面实况的读者提供真实数据块在每个时间步。使用一块实现MATLAB系统(万博1manbetx模型)块和代码块中定义的HelperGroundTruthReader类。最后,雷达跟踪的GOSPA得分,激光雷达跟踪和跟踪融合算法组合在一起。

可视化

实现使用可视化的块MATLAB系统(万博1manbetx模型)块。代码块中定义的helper类helperLidarRadarTrackFusionDisplayBlock。块使用RunTimeObject参数块来显示他们的输出。看到在模拟块数据的访问(万博1manbetx模型)为进一步的信息关于如何访问块在模拟输出。

这个动画显示了整个运行时间每三个步骤。每三个跟踪系统(雷达、激光雷达和track-level融合)能够跟踪所有四个车辆在该方案中没有任何错误的跟踪确认。

使用范围块GOSPA度量是可视化。后面的数字代表时间轴和轴代表GOSPA得分。每个单元在轴代表时间十步的场景。track-level定位精度可以定量评估每个追踪GOSPA度量在每个时间步。一个较低的值表示更好的跟踪精度。没有错过的目标或假追踪,度量了定位误差产生的每辆车的状态估计。每个组件的GOSPA指标也可以选为单独一块输出和可视化。

注意,融合GOSPA度量估计低于单个传感器的指标,这表明跟踪精度提高后传感器的融合跟踪估计。

close_system (“TrackLevelFusionOfRadarAndLidarDataIn万博1manbetxSimulink”);

总结

在这个示例中,您了解了如何使用一个扩展的对象跟踪器跟踪雷达测量二维矩形模型,如何使用传统的JPDA跟踪器跟踪激光雷达测量三维长方体模型,以及如何建立一个track-level融合雷达和激光雷达传感器的融合跟踪算法仿真软件。万博1manbetx您还了解了如何使用广义最优跟踪算法的性能评估子模式分配指标。仿真结果表明,跟踪的融合跟踪雷达和激光雷达比跟踪每个传感器更准确。