主要内容

多目标跟踪

创建和管理多个对象的跟踪

  • 多目标跟踪器块

库:
自动驾驶的工具箱

描述

多目标跟踪初始化块,证实了预测、纠正和删除移动对象的轨迹。多目标跟踪器的输入生成的检测报告驾驶雷达数据生成器视觉检测发电机块。多目标跟踪器接受来自多个传感器和分配他们的检测跟踪使用全局最近邻(GNN)标准。每个检测是分配给一个单独的轨道。如果发现不能分配给任何跟踪,多目标跟踪器创建一个新的轨道。

一个新的追踪从一开始试探性的状态。如果足够的检测是分配给一个试探性的轨道,它的状态改变确认。当跟踪确认,多目标跟踪器认为代表一个物理对象。如果检测不添加到跟踪在一个指定的数量的更新,删除。

多目标跟踪器还估计状态向量和状态向量的协方差矩阵为每个使用卡尔曼滤波跟踪。这些状态向量用于预测跟踪每一帧的位置和确定每个检测被分配给每个追踪的可能性。

港口

输入

全部展开

检测列表,指定为包含一个MATLAB仿真软件总线结构。金宝app看到组信号或消息到虚拟的公交车(金宝app模型)。结构形式:

描述 类型
NumDetections 数量的检测 整数
IsValidTime 假当该值更新请求之间的时间间隔块调用 布尔
检测 对象检测 数组对象检测结构。第一个NumDetections这些检测都是实际的检测。

对象检测结构的定义中检测输出端口的描述驾驶雷达数据生成器视觉检测发电机块。

请注意

包含一个对象检测结构时间字段。每个对象的时间标记检测的时间必须小于或等于当前块的调用。时间标记也必须大于之前的调用中指定的更新时间。

跟踪更新时间,指定为一个真正的标量。多目标跟踪器更新所有跟踪。更新时间必须与每个调用块增加。单位是秒。

请注意

包含一个对象检测结构时间字段。每个对象的时间标记检测的时间必须小于或等于当前块的调用。时间标记也必须大于前调用的更新时间。

依赖关系

要启用这个端口,设置预测时间源输入端口

成本矩阵,指定为一个实值Nt——- - - - - -Nd矩阵,Nt是现有的跟踪和数量吗Nd是当前检测的数量。

成本矩阵的行对应于现有的跟踪。列对应的检测。跟踪命令是他们的歌曲出现在列表中所有的歌曲之前调用的输出端口。

在第一个更新多目标跟踪器,或者如果跟踪没有以前的跟踪,成本分配矩阵的大小[0,Nd]。必须计算,这样成本更低的成本显示更高的可能性多目标跟踪器分配一个检测跟踪。为了防止某些检测被分配给特定的追踪,使用

依赖关系

要启用这个端口,选择使成本矩阵输入

可检测追踪id,指定为一个实值1的向量或2矩阵。探测跟踪传感器会检测跟踪。矩阵的第一列包含一个追踪id列表,传感器可检测报告。可选的第二列包含的探测概率跟踪。

不包括在铁轨的标识可检测追踪id被认为是无法觉察的。跟踪删除逻辑不计数的缺乏检测作为跟踪删除“错过了检测”的目的。

如果没有启用这个端口,追踪假定所有跟踪检测在每个块的调用。

依赖关系

要启用这个端口,端口设置选项卡上,选择使检测跟踪输入id

跟踪状态参数,指定为包含一个MATLAB仿真软件总线结构。金宝app结构形式:

描述
NumParameters 数量的非默认状态参数,指定为一个非负整数
参数 状态参数的数组结构

块使用的价值参数场的StateParameters字段生成的跟踪。您可以使用这些参数来定义的坐标系跟踪报告或其他可取的属性生成的痕迹。

例如,您可以使用以下结构来定义一个直角坐标系的原点位置(10 10 0)米,其速度是起源(2 2 0)米每秒的场景。

字段名 价值
框架 “矩形”
位置 (10 10 0)
速度 (2 2 0)

依赖关系

要启用这个端口,跟踪器配置选项卡中,选择随着时间的推移,更新跟踪状态参数参数。

输出

全部展开

跟踪确认,返回包含MATLAB作为仿真软件总线结构。金宝app看到创建Nonvirtual公交车(金宝app模型)

此表显示了结构字段。

描述
NumTracks 数量的跟踪
跟踪 轨道结构的阵列的长度设定的最大数量的跟踪参数。只有第一个NumTracks这些都是实际的跟踪。

这个表显示每个轨道结构的字段。

定义
TrackID 独特的跟踪标识用来区分多个轨道。
BranchID 独特的标识符用来区分多个轨道分支跟踪分支。
SourceIndex 独特的资料索引用来区分多个追踪环境中追踪来源。
UpdateTime 时间的跟踪更新。单位是秒。
年龄 跟踪更新的次数。
状态

状态向量的值更新时间。

StateCovariance

协方差矩阵不确定性。

ObjectClassID 整数值代表对象分类。的值0代表了一个未知的分类。非零分类仅适用于跟踪确认。
TrackLogic 确认和删除逻辑类型。这个值总是“历史”雷达传感器,指出基于历史逻辑。
TrackLogicState

当前状态的跟踪逻辑类型,返回1,K逻辑数组。K是最新的数量跟踪逻辑状态记录。数组中,1表示一个错误,0代表一个小姐。

IsConfirmed 确认状态。这个字段是真正的如果轨道被证实是一个真正的目标。
IsCoasted 滑行状态。这个字段是真正的如果没有新的更新跟踪检测。
IsSelfReported

表明如果跟踪报告的追踪。这个字段用于跟踪融合环境。它返回真正的默认情况下。

ObjectAttributes 额外的信息跟踪。

关于这些字段的更多细节,请参阅objectTrack

跟踪确认如果:

  • 至少检测被分配到在第一次N更新后跟踪初始化。指定的值N,可以使用M和N M-out-of-N确认参数。

  • 检测初始化跟踪了ObjectClassID大于零。

试探性的痕迹,返回包含MATLAB作为仿真软件总线结构。金宝app看到创建Nonvirtual公交车(金宝app模型)。初步证实了之前一个跟踪。

此表显示了结构字段。

描述
NumTracks 数量的跟踪
跟踪 轨道结构的阵列的长度设定的最大数量的跟踪参数。只有第一个NumTracks这些都是实际的跟踪。

这个表显示每个轨道结构的字段。

定义
TrackID 独特的跟踪标识用来区分多个轨道。
BranchID 独特的标识符用来区分多个轨道分支跟踪分支。
SourceIndex 独特的资料索引用来区分多个追踪环境中追踪来源。
UpdateTime 时间的跟踪更新。单位是秒。
年龄 跟踪更新的次数。
状态

状态向量的值更新时间。

StateCovariance

协方差矩阵不确定性。

ObjectClassID 整数值代表对象分类。的值0代表了一个未知的分类。非零分类仅适用于跟踪确认。
TrackLogic 确认和删除逻辑类型。这个值总是“历史”雷达传感器,指出基于历史逻辑。
TrackLogicState

当前状态的跟踪逻辑类型,返回1,K逻辑数组。K是最新的数量跟踪逻辑状态记录。数组中,1表示一个错误,0代表一个小姐。

IsConfirmed 确认状态。这个字段是真正的如果轨道被证实是一个真正的目标。
IsCoasted 滑行状态。这个字段是真正的如果没有新的更新跟踪检测。
IsSelfReported

表明如果跟踪报告的追踪。这个字段用于跟踪融合环境。它返回真正的默认情况下。

ObjectAttributes 额外的信息跟踪。

关于这些字段的更多细节,请参阅objectTrack

依赖关系

要启用这个端口,选择使初步跟踪输出

确认列表并初步跟踪相结合,作为一个包含MATLAB仿真软件总线结构返回。金宝app看到创建Nonvirtual公交车(金宝app模型)

此表显示了结构字段。

描述
NumTracks 数量的跟踪
跟踪 轨道结构的阵列的长度设定的最大数量的跟踪参数。只有第一个NumTracks这些都是实际的跟踪。

这个表显示每个轨道结构的字段。

定义
TrackID 独特的跟踪标识用来区分多个轨道。
BranchID 独特的标识符用来区分多个轨道分支跟踪分支。
SourceIndex 独特的资料索引用来区分多个追踪环境中追踪来源。
UpdateTime 时间的跟踪更新。单位是秒。
年龄 跟踪更新的次数。
状态

状态向量的值更新时间。

StateCovariance

协方差矩阵不确定性。

ObjectClassID 整数值代表对象分类。的值0代表了一个未知的分类。非零分类仅适用于跟踪确认。
TrackLogic 确认和删除逻辑类型。这个值总是“历史”雷达传感器,指出基于历史逻辑。
TrackLogicState

当前状态的跟踪逻辑类型,返回1,K逻辑数组。K是最新的数量跟踪逻辑状态记录。数组中,1表示一个错误,0代表一个小姐。

IsConfirmed 确认状态。这个字段是真正的如果轨道被证实是一个真正的目标。
IsCoasted 滑行状态。这个字段是真正的如果没有新的更新跟踪检测。
IsSelfReported

表明如果跟踪报告的追踪。这个字段用于跟踪融合环境。它返回真正的默认情况下。

ObjectAttributes 额外的信息跟踪。

关于这些字段的更多细节,请参阅objectTrack

依赖关系

要启用这个端口,选择使所有跟踪输出

参数

全部展开

跟踪管理

独特的跟踪标识符,指定为一个非负整数。这个参数用作SourceIndex输出,区分来自不同的追踪器的跟踪multiple-tracker系统。您必须指定这个属性是一个正整数使用跟踪跟踪熔化炉的输出作为输入。

例子:1

卡尔曼滤波器的初始化函数,指定为一个函数的名字。工具箱提供了一些初始化函数。一个初始化函数的一个例子,看到initcvekf

检测作业阈值,指定为一个积极的真正的标量。分配跟踪检测,检测的归一化距离跟踪赋值必须小于阈值。如果一些检测仍未赋值的跟踪你想分配给他们,然后增加阈值。如果一些检测被分配到正确的轨道,减少阈值。

确认参数跟踪创建,指定为一个双元素向量的正整数,(M, N)。跟踪确认,至少检测被分配到在第一次N更新后跟踪初始化。必须小于或等于N

  • 当设置N,考虑一下你想要追踪更新的次数才证实了轨道。例如,如果一个跟踪更新每0.05秒,你让0.5秒作出确认决定,集N= 10。

  • 当设置,考虑到概率的对象检测传感器。检测的概率取决于因素,如阻塞或杂物。你可以减少当未能得到证实或增加当太多的虚假检测被分配到的痕迹。

例子:(3、5)

历史记录删除阈值逻辑,指定为一个实值向量的正整数1×2[P R]。如果没有分配给任何确认跟踪检测P次在过去R跟踪更新,然后删除。

最大数量的跟踪块过程中,可以指定为一个正整数。

最大数量的传感器,块过程中,可以指定为一个正整数。这个值应大于或等于最高SensorIndex在使用的值检测输入端口。

按顺序处理,测量指定为终止忽视。每个检测都有相关联的一个时间戳,td跟踪器块都有它自己的时间戳,tt在每次调用更新。跟踪器块作为OOSM如果认为测量td<tt

当参数被指定为:

  • 终止——块停止运行时遇到任何乱序执行测量。

  • 忽视——块忽略任何乱序执行测量,并继续运行。

指定的参数跟踪状态参考系作为一个结构或一个结构数组。块传递这个参数的值StateParameters字段生成的跟踪。您可以使用这些参数来定义的坐标系跟踪报告或其他可取的属性生成的痕迹。

例如,您可以使用以下结构来定义一个直角坐标系的原点位置(10 10 0)米,其速度是起源(2 2 0)米每秒的场景。

字段名 价值
框架 “矩形”
位置 (10 10 0)
速度 (2 2 0)

你可以通过更新轨道状态参数状态参数通过选择输入端口随着时间的推移,更新跟踪状态参数参数。

数据类型:结构体

选择要启用该参数的输入端口通过跟踪状态参数状态参数输入端口。

输入和输出

源预测时间,指定为输入端口汽车。选择输入端口通过输入一个更新时间预测的时间输入端口。否则,由仿真软件仿真时钟管理决定了更新的时间。金宝app

例子:汽车

选中此复选框后,可以通过使用成本的输入矩阵成本矩阵输入端口。

选中此复选框来启用的可检测追踪id输入端口。

源输出总线名称,指定为汽车财产

  • 如果您选择汽车,阻止自动创建了一个总线名称。

  • 如果您选择财产,指定使用的总线名称指定一个输出总线名称参数。

依赖关系

要启用该参数,设置输出总线名称的来源参数财产

选中此复选框后,可以初步的输出跟踪使用试探性的跟踪输出端口。

选中此复选框后,可以使所有的输出跟踪使用所有的歌曲输出端口。

  • 解释执行——使用MATLAB模拟模型解释器。这个选项可以缩短启动时间。在解释执行模式,你可以调试的源代码。

  • 代码生成——模拟使用C / c++代码生成模型。第一次运行仿真,仿真软件生成C / c++代码块。金宝app后续模拟的C代码重用,只要不改变模型。这个选项需要额外的启动时间。

扩展功能

版本历史

介绍了R2017b