一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

对象跟踪方法和装置及存储执行该方法的程序的记录介质与流程

2022-06-29 22:54:36 来源:中国专利 TAG:


1.本公开涉及一种对象跟踪方法和装置以及存储用于执行该方法的程序的记录介质。


背景技术:

2.对象的光探测和测距(light detection and ranging,lidar)轨迹(track)的航向角从与利用lidar传感器获取的对象相关的点云(point cloud)生成,并可以利用过滤器或轨迹的绝对速度获得。
3.然而,航向角在特定情况下可能不准确。基于轨迹绝对速度计算的航向角在速度精度较低的情况下,例如在轨迹以低速移动或交通拥堵中的情况下可能不准确。


技术实现要素:

4.因此,本公开涉及一种基本消除因相关技术的局限和缺点造成的一个或多个问题的对象跟踪方法和装置以及存储执行该方法的程序的记录介质。
5.本公开提供一种能够利用精确航向角跟踪对象的对象跟踪方法和装置以及存储执行该方法的程序的记录介质。
6.然而,本公开要实现的目的不限于上述目的。本领域普通技术人员从以下描述中应该清楚地理解本文未提及的其它目的。
7.根据实施例的一种对象跟踪方法可以包括(a)利用从与对象相关的点云生成的用于跟踪对象的轨迹的在当前识别周期(t)中的速度来获得轨迹基于当前速度的航向角。该方法还可以包括(b)累积与关于基于当前速度的航向角的信息相关联的分数并将累积的分数并入到具有针对轨迹的各个航向角划分的区域的航向历史中。该方法可以进一步包括(c)利用航向历史获得轨迹的基于历史的航向角。该方法还可以包括(d)利用关于轨迹形状的信息对基于历史的航向角进行校正并将校正结果确定为当前识别周期(t)中的最终航向角。
8.例如,步骤(a)可以包括:获得当前识别周期(t)中的轨迹的绝对速度。步骤(a)还可以包括:当绝对速度大于或等于第一阈值速度时,利用作为绝对速度的分量的绝对纵向速度和绝对横向速度获得基于当前速度的航向角。步骤(a)可以进一步包括:当绝对速度小于第一阈值速度时,获得利用先前识别周期(t-1)中的轨迹的速度获得的基于先前速度的航向角和利用关于当前识别周期(t)中的轨迹的形状信息获得的基于形状的航向角之间的差。步骤(a)可以进一步包括:当差小于阈值差时,将基于形状的航向角确定为基于当前速度的航向角。步骤(a)可以进一步包括:当差大于或等于阈值差时,检查航向历史中的每个角度累积的分数之中的最高分数是否大于第一阈值分数。步骤(a)可以进一步包括:当最高分数大于第一阈值分数时,将基于先前速度的航向角确定为基于当前速度的航向角。步骤(a)还可以包括:当最高分数小于或等于第一阈值分数时,确定在航向历史中的区域之中具有最高分数的区域的角度为基于当前速度的航向角。
9.例如,绝对速度可以通过将轨迹的相对速度和生成点云的本车辆的速度相加而获得。基于当前速度的航向角可以利用反正切从绝对纵向速度和绝对横向速度获得。
10.例如,步骤(b)可以包括:获得绝对纵向速度和绝对横向速度之中具有较小标量值的速度与具有较大标量值的速度的速度比。步骤(b)还可以包括:检查速度比是否小于参考比。步骤(b)可以进一步包括:当速度比小于参考比时,将航向历史区域之中与基于当前速度的航向角相对应的目标区域的分数减小第一分数,将分数增大第二分数,并将分别与目标区域的左侧和右侧相邻的左区域和右区域中的每一个的分数增大第三分数。步骤(b)还可以包括:当速度比大于或等于参考比时,将目标区域的分数减小第四分数并将分数增大第五分数。
11.例如,能够在航向历史中累积的最小值和最大值中的每一个可以是固定值。
12.例如,可以在每个识别周期期间执行将信息并入航向历史中。
13.例如,当轨迹消失时,可以初始化航向历史中的区域的分数。
14.例如,步骤(c)可以包括:当最高分数小于或等于第二阈值分数时,检查绝对速度是否小于第二阈值速度。步骤(c)还可以包括:当绝对速度大于或等于第二阈值速度时,确定在步骤(a)中获得的基于当前速度的航向角为基于历史的航向角。步骤(c)可以进一步包括:当绝对速度小于第二阈值速度时,检查航向历史中已经在先前识别周期(t-1)中并入分数的区域和航向历史中已经在当前识别周期(t)中并入分数的区域之间的间隔距离是否大于阈值距离。步骤(c)可以进一步包括:当间隔距离大于阈值距离时,将航向历史中的区域之中具有最高分数的区域的角度确定为基于历史的航向角。步骤(c)可以进一步包括:当间隔距离小于或等于阈值距离时,确定在步骤(a)中获得的基于当前速度的航向角为基于历史的航向角。步骤(c)可以进一步包括:当最高分数大于第二阈值分数且间隔距离大于阈值距离时,确定在航向历史中的区域之中与最高分数相对应的区域的角度为基于历史的航向角。步骤(c)还可以包括:当最高分数大于第二阈值分数且间隔距离小于或等于阈值距离时,确定在步骤(a)中获得的基于当前速度的航向角为基于历史的航向角。
15.例如,航向历史可以包括多个区域,并且多个区域的数量可以如下。
[0016][0017]
此处,“n”表示多个区域的数量并且是2以上的正整数,并且“x
°”
表示多个区域中的每一个的角度范围。
[0018]
例如,与最高分数相对应的区域的角度可以是与最高分数相对应的区域的角度范围中的中间角度。
[0019]
例如,步骤(d)可以包括:检查关于轨迹的形状的信息以及通过比较包括在关于形状的信息中的多个候选航向角和基于历史的航向角来校正基于历史的航向角。
[0020]
例如,校正可以包括:从多个候选航向角之中选择与基于历史的航向角具有较小差的候选航向角。
[0021]
例如,校正可以进一步包括基于所选择的候选航向角的可靠度对候选航向角进行过滤。
[0022]
例如,过滤可以包括:检查可靠度是否大于阈值可靠度;当可靠度不大于阈值可靠度时,将基于历史的航向角确定为最终航向角;以及当可靠度大于阈值可靠度时,将选择的
候选航向角确定为最终航向角。
[0023]
根据另一实施例的一种对象跟踪装置可以包括轨迹生成单元,其被配置为从与对象相关的点云生成用于跟踪对象的轨迹。该装置还可以包括角度计算单元,其被配置为利用在当前识别周期(t)中的轨迹的速度来计算轨迹的基于当前速度的航向角。该装置可以进一步包括历史单元,其被配置为累积与关于基于当前速度的航向角的信息相关联的分数并将累积的分数并入到具有针对轨迹的各个航向角划分的区域的航向历史中。该装置可以进一步包括角度提取单元,其被配置为利用航向历史提取轨迹的基于历史的航向角。该装置还可以包括角度校正单元,其被配置为利用关于轨迹的形状的信息对基于历史的航向角进行校正并将校正结果输出为当前识别周期(t)中的最终航向角。
[0024]
根据再一实施例,其中记录了用于执行对象跟踪方法的程序的计算机可读记录介质可以存储用于实现利用从与对象相关的点云生成的、用于跟踪对象的轨迹的在当前识别周期(t)中的速度以获得轨迹的基于当前速度的航向角的功能的程序。该程序还可以实现累积与关于基于当前速度的航向角的信息相关联的分数并将累积的分数并入到具有针对轨迹的各个航向角划分的区域的航向历史中的功能。该程序可以进一步实现利用航向历史获得轨迹的基于历史的航向角的功能。该程序还可以实现利用关于轨迹的形状的信息对基于历史的航向角进行校正并将校正结果确定为当前识别周期(t)中的最终航向角的功能。
附图说明
[0025]
参照以下附图详细描述布置和实施例,其中相同的附图标记指代相同的元件,并且其中:
[0026]
图1是根据本公开的实施例的对象跟踪装置的示意框图;
[0027]
图2是根据本公开的实施例的对象跟踪方法的流程图;
[0028]
图3是图1中所示的对象跟踪单元的实施例的框图;
[0029]
图4是图2所示的步骤210的实施例的流程图;
[0030]
图5a和5b是用于说明图4所示的步骤210a的示图;
[0031]
图6是示出航向历史的示图;
[0032]
图7是图2所示的步骤220的实施例的流程图;
[0033]
图8是图2所示的步骤230的实施例的流程图;
[0034]
图9是图2所示的步骤240的实施例的流程图;
[0035]
图10是用于说明轨迹的候选航向角的示图;
[0036]
图11是用于说明根据轨迹的形状的轨迹的候选航向角的示图;以及
[0037]
图12是示出轨迹的候选航向角与基于历史的航向角之间的比较的示图。
具体实施方式
[0038]
现在参照附图更全面地描述本公开,在附图中示出了多种实施例。然而,这些示例可以以许多不同的形式体现并且不应被解释为限于本文阐述的实施例。相反,提供这些实施例是为了使本公开更加彻底和完整,并且更充分地将本公开的范围传达给本领域普通技术人员。
[0039]
应当理解的是,当一个元件被称为在另一个元件“上”或“下”时,它可以直接在该
元件上/下,或者也可以存在一个或多个中间元件。
[0040]
当一个元件被称为基于该元件“之上”或“之下”时,既包括“在该元件下”也包括“在该元件上”。
[0041]
另外,诸如“第一”、“第二”、“上/上部/之上”和“下/下部/之下”的关系术语仅用于区分一个主体或元件与另一主体或元件,而不必要求或涉及主体或元件之间的任何物理或逻辑关系或顺序。当本公开的组件、装置、元件等被描述为具有目的或执行操作、功能等时,该组件、装置或元件在本文中应被视为“被配置为”满足该目的或执行该操作或功能。本公开将对象跟踪装置的各个组件描述为单元,例如但不限于:预处理单元;聚类单元;形状分析单元;分段单元;对象跟踪单元;跟踪单元;跟踪和分类单元;以及对象检测单元。公开的单元中的每一个可以作为装置的一部分单独地体现为或包含有处理器和存储器,例如非暂时性计算机可读介质。
[0042]
在下文中,参照附图描述根据实施例的对象跟踪装置。
[0043]
图1是根据实施例的对象跟踪装置100的示意框图。
[0044]
对象跟踪装置100可以包括光检测和测距(lidar)传感器110、预处理(preprocessing)单元120、聚类(clustering)单元130、形状分析(shaple analysis)单元(或分段(segment)单元)140和对象跟踪单元(跟踪单元、跟踪和分类单元或对象检测单元)150。
[0045]
lidar传感器110获取与对象相关的点云。例如,lidar传感器110可以向对象发射具有905nm至1550nm波长的单个圆形激光脉冲,并且可以测量从存在于测量范围内的对象反射的激光脉冲返回所花费的时间。因此,lidar传感器110可以感测关于对象的信息,例如,lidar传感器110到对象的距离、对象的方向、对象的速度、对象的温度、对象的材料分布以及对象的浓度特性。此处,对象可以是例如存在于安装有lidar传感器110的车辆(以下称为“本车辆”)外部的另一车辆、人或障碍物。然而,该实施例不限于任何特定类型的对象。
[0046]
预处理单元120可以移除从本车辆的车体反射的相关数据。换言之,由于存在根据lidar传感器110的安装位置和视野被本车辆的车体遮挡的区域,因此预处理单元120可以利用参考坐标系移除从本车辆的车体反射的相关数据。
[0047]
根据实施例的对象跟踪装置100可以省略预处理单元120。
[0048]
聚类单元130根据预定标准将点云分组为有意义的单元,点云是由与通过lidar传感器110获取的对象相关的多个点组成的lidar数据。如果不省略预处理单元120,则聚类单元130可以对预处理单元120预处理后的lidar数据进行分组。例如,聚类单元130可以通过应用基于网格的聚类方法或基于密度的聚类方法对点云进行分组,以执行聚类来生成对象的轮廓。lidar传感器110的感测结果显示多个点,每个点仅具有关于位置(或坐标)的信息。因此,聚类单元130用于将lidar传感器110感测到的多个点分组为具有有意义的形状的单元并产生作为分组的结果的聚类。
[0049]
形状分析单元140可以分析作为聚类单元130的聚类结果的形状,并且可以将分析结果输出到对象跟踪单元150。
[0050]
对象跟踪单元150可以基于形状分析结果生成轨迹,可以计算轨迹的航向角,可以利用航向角跟踪对象是障碍物、车辆还是人,并可以进行识别。
[0051]
在下文中,参照附图描述根据实施例的利用lidar传感器110的对象跟踪方法。
[0052]
图2是根据实施例的对象跟踪方法200的流程图。图3是图1所示的对象跟踪单元150的实施例150a的框图。
[0053]
图3所示的对象跟踪单元150a可以包括轨迹生成单元151、角度计算单元153、历史单元155、角度提取单元157和角度校正单元159。
[0054]
尽管图2中所示的对象跟踪方法200被描述为由图3所示的对象跟踪单元150a执行,但实施例不限于此。换言之,根据另一实施例,图2所示的对象跟踪方法200可以由与图3所示的对象跟踪单元150a不同配置的对象跟踪单元来执行。图3所示的对象跟踪单元150a可以执行与图2所示的对象跟踪方法200不同配置的对象跟踪方法。此外,图3所示的对象跟踪单元150a还可以应用于与图1所示的对象跟踪装置100不同配置的对象跟踪装置。
[0055]
首先,图1所示的对象跟踪装置100确定在每个识别周期期间轨迹的最终航向角。换言之,在每个周期(或步骤)期间,lidar传感器110、预处理单元120、聚类单元130、形状分析单元140和对象跟踪单元150可以操作以获得对象的轨迹的航向角,并且可以利用该航向角跟踪对象。以这种方式,对象跟踪装置100可以在每个识别周期(...,t-1,t,t 1,...)期间确定轨迹的最终航向角。在下文中,为了便于说明,将“当前识别周期”记为“t”,将紧接在“当前识别周期”之前的“先前识别周期”记为“t-1”。
[0056]
根据实施例的对象跟踪方法和装置,可以在每个识别周期期间跟踪多个对象的各自轨迹。为此,图2所示的步骤210至240可以在每个轨迹上执行。
[0057]
首先,利用从与对象相关的点云生成的轨迹的当前识别周期t内的速度(以下称为“当前速度”)获得轨迹的航向角(以下称为“基于当前速度的航向角”)(步骤210)。
[0058]
例如,步骤210可以由图3所示的轨迹生成单元151和角度计算单元153执行。
[0059]
轨迹生成单元151可以从与对象相关的点云生成轨迹以跟踪对象。例如,轨迹生成单元151可以通过输入端子in接收形状分析单元140的分析结果,并且可以利用该分析结果生成用于跟踪对象的轨迹。
[0060]
角度计算单元153可以利用由轨迹生成单元151生成的轨迹的当前速度来计算轨迹的基于当前速度的航向角,并且可以将计算的基于当前速度的航向角输出到历史单元155。
[0061]
图4是图2所示的步骤210的实施例210a的流程图。图5a和5b是用于说明图4所示的步骤210a的示图。
[0062]
例如,图4所示的步骤210a可以由图3所示的角度计算单元153执行。
[0063]
首先,获得在当前识别周期t中的轨迹的绝对速度(步骤211)。例如,可以通过将轨迹的相对速度tcv与本车辆的速度svv相加来获得轨迹的绝对速度av,如利用下面的等式1所表示。
[0064]
[等式1]
[0065]
av=tcv svv
[0066]
此处,如上所述,本车辆是配备有lidar传感器110的车辆。
[0067]
在步骤211之后,检查绝对速度av是否大于或等于第一阈值速度vtl(步骤212)。此处,第一阈值速度vt1可以是针对每个轨迹不同地预先设置的值,或者可以是与轨迹无关地预先设置的固定值。本实施例不限于第一阈值速度vt1的任何特定值。
[0068]
如果绝对速度av大于或等于第一阈值速度vtl,如图5a所示,可以利用作为轨迹tr
的绝对速度av的分量的绝对纵向速度avv和绝对横向速度ahv获得基于当前速度的航向角cvh(步骤213)。例如,可以利用反正切(arctangent)从绝对纵向速度avv和绝对横向速度ahv获得基于当前速度的航向角cvh,但实施例不限于此。
[0069]
然而,如果绝对速度av小于第一阈值速度vtl,则获得基于先前速度的航向角和基于形状的航向角之间的差(步骤214)。此处,基于先前速度的航向角是利用先前识别周期t-1中的轨迹的速度获得的航向角。基于形状的航向角是利用关于当前识别周期t中的轨迹tr的形状的信息获得的航向角。
[0070]
在步骤214之后,检查基于先前速度的航向角和基于形状的航向角之间的差是否大于或等于阈值差td(步骤215)。此处,阈值差td可以是针对每个轨迹tr不同地预先设置的值或者可以是与轨迹tr无关地预先设置的固定值。本实施例不限于阈值差td的任何特定值。
[0071]
如果基于先前速度的航向角与基于形状的航向角之间的差小于阈值差td,则基于形状的航向角被确定为基于当前速度的航向角(步骤216)。例如,图5b所示的基于形状的航向角sh可以被确定为基于当前速度的航向角。
[0072]
然而,如果基于先前速度的航向角和基于形状的航向角之间的差大于或等于阈值差td,则检查在下面描述的航向历史中的针对每个航向角累积的分数之中的最高分数mxp是否大于第一阈值分数tp1(步骤217)。此处,第一阈值分数tp1可以是针对每个轨迹tr不同地预先设置的值或者可以是与轨迹tr无关地预先设置的固定值。本实施例不限于第一阈值分数tp1的任何特定值。
[0073]
在下文中,参照附图描述航向历史。
[0074]
图6是示出航向历史hh的示图。
[0075]
根据实施例,航向历史可以包括多个区域,该多个区域的数量利用下面的等式2计算。
[0076]
[等式2]
[0077][0078]
此处,“n”表示针对航向历史hh中包括的轨迹tr的各个航向角划分的区域的数量并且是2以上的正整数。此外,“x
°”
表示航向历史hh中包括的每个区域的角度范围。
[0079]
例如,当x
°
为30
°
时,如图6所示,航向历史hh中包括的区域的数量n可以是12。换言之,图6所示的航向历史hh可以包括第一到第十二区域1到12。在这种情况下,第一区域1的角度范围为-15
°
到 15
°
。第二区域2的角度范围为 15
°
至 45
°
。第三区域3的角度范围为 45
°
至 75
°
。第四区域4的角度范围为 75
°
至 105
°
。第五区域5的角度范围为 105
°
至 135
°
。第六区域6的角度范围为 135
°
至 165
°
。第七区域7的角度范围为 165
°
至-165
°
。第八区域8的角度范围为-165
°
至-135
°
。第九区域9的角度范围为-135
°
至-105
°
。第十区域10的角度范围为-105
°
至-75
°
。第十一区域11的角度范围是-75
°
到-45
°
。第十二区域12的角度范围为-45
°
至-15
°

[0080]
包括在图6所示的航向历史hh中的第一到第n区域中的每一个可以具有累积分数。下面参照图7描述针对多个区域中的每一个的累积分数的过程。
[0081]
在步骤217中使用的最高分数mxp是航向历史hh中包括的第一到第n区域的累积分
数之中的最高分数。在下文中,将航向历史hh中包括的第1到第n区域之中累积分数最高的区域称为“最高区域”。
[0082]
如果最高分数mxp小于或等于第一阈值分数tpl,则最高区域的角度tph被确定为基于当前速度的航向角,如图5b所示(步骤218)。在这种情况下,被确定为基于当前速度的航向角的最高区域的角度可以是落在最高区域的角度范围内的角度中的一个。
[0083]
根据实施例,被确定为基于当前速度的航向角的最高区域的角度可以是最高区域的角度范围内的中间角度。例如,当在包括在图6所示的航向历史hh中的第一至第十二区域1至12之中,第一区域1的累积分数是大于第二至第十二区域2至12的累积分数的最高分数时,第一区域1对应于最高区域。在这种情况下,作为最高区域的第一区域1的角度范围(-15
°
至 15
°
)中的中间角度为0
°
,并且0
°
被确定为基于当前速度的航向角。
[0084]
然而,当最高分数mxp大于第一阈值分数tpl时,图5b中所示的基于先前速度的航向角pvh可以被确定为基于当前速度的航向角(步骤219)。
[0085]
同时,再次参照图2,在步骤210之后,历史单元155可以累积与关于基于当前速度的航向角的信息相关联的分数并且可以将累积的分数并入到航向历史中(步骤220)。
[0086]
图7是图2所示的步骤220的实施例220a的流程图。图7所示的步骤220a可以由图3所示的历史单元155执行。
[0087]
在步骤210之后,获得绝对纵向速度和绝对横向速度之中具有较小标量值的速度与具有较大标量值的速度的速度比(步骤222)。速度比可以利用下面的等式3来表示。
[0088]
[等式3]
[0089][0090]
此处,“vr”表示速度比,“vma”表示绝对纵向速度和绝对横向速度之中具有较大标量值的速度。“vmi”表示绝对纵向速度和绝对横向速度之中具有较小标量值的速度。
[0091]
在步骤222之后,检查速度比vr是否小于参考比(步骤224)。此处,参考比可以是针对每个轨迹tr不同地预先设置的值,或者可以是与轨迹tr无关地预先设置的固定值。该实施例不限于参考比的任何特定值。
[0092]
根据步骤224中的检查结果,可以如下累积关于航向历史中的目标区域、左区域和右区域中的每一个的分数(步骤226和228)。此处,目标区域是航向历史hh中的第一到第n区域之中与在步骤210中获得的基于当前速度的航向角相对应的区域。左区域是第一至第n区域之中与目标区域相邻且在其左侧的区域。右区域是第一至第n区域之中与目标区域相邻且在其右侧的区域。例如,当在步骤210中获得的基于当前速度的航向角为40
°
时,在图6所示的第一至第十二区域1至12中,第二区域2为目标区域,第一区域1为左区域,第三区域3为右区域。
[0093]
如果速度比vr小于参考比,则目标区域的分数减小第一分数并增大第二分数,并且左区域和右区域中的每一个的分数增大第三分数(步骤226)。然而,如果速度比vr大于或等于参考比,则目标区域的分数减小第四分数并增大第五分数(步骤228)。
[0094]
例如,为了帮助理解步骤226和228,假设第一分数为0.5,第二分数为2,并且参考比、第三分数、第四分数和第五分数中的每一个为0.25。
[0095]
在这种情况下,目标区域的分数如下减小。
[0096]
如果速度比小于0.25(=参考比),则目标区域的分数减小0.5(=第一分数)。如果速度比大于或等于0.25(=参考比),则目标区域的分数减小0.25(=第四分数)。
[0097]
另外,目标区域的分数如下增大。
[0098]
如果速度比小于0.25(=参考比),则目标区域的分数增大2(=第二分数)并且左区域和右区域中的每一个的分数增加0.25(=第三分数)。如果速度比大于或等于0.25(=参考比),则目标区域的分数增大0.25(=第五分数)。
[0099]
为便于理解,假设第一至第五分数如上,例如,当当前识别周期t中第十步骤获得的基于当前速度的航向角为5
°
时,当先前识别周期t-1中第十步骤得到的基于先前速度的航向角也是5
°
时,以及当航向历史中的区域之中的第一区域是目标区域时,给第一区域、第十二区域和第二区域分配的分数可以如利用下面的等式4所表示的来计算。
[0100]
[等式4]
[0101]
a1=2分-(0.5分或0.25分) 2分
[0102]
a12=0.25分-(0.5分或0.25分) 0.25分
[0103]
a2=0.25分-(0.5分或0.25分) 0.25分
[0104]
此处,“a1”表示在第一区域中累积的分数,“a12”表示在第十二区域中累积的分数,“a2”表示在第二区域中累积的分数。
[0105]
如上所述,根据实施例,类似于伪高斯函数,当将分数分配给航向历史中包括的区域并在该区域中累积时,可以获得累积基于概率的高斯函数的效果。
[0106]
此外,根据实施例,可以在航向历史中累积的最小值和最大值中的每一个可以是固定值。例如,当航向历史中可累积的最小值为0时,航向历史中包括的第一至第n区域中的每一个中可累积的最小值不小于0。因此,最小值是累积分数的最小限值。此外,当航向历史中可累积的最大值为10时,航向历史中包括的第一至第n区域中的每一个中可累积的最大值不大于10。因此,最大值是累积分数的最大限值。
[0107]
此外,将信息并入航向历史的步骤220(或步骤220a)可以在每个识别周期(...,t-1,t,t 1,...)期间执行。
[0108]
对于多个轨迹中的每一个,可以存在图6所示的航向历史hh。考虑到这一点,当根据实施例的对象跟踪方法和装置所跟踪的对象消失并且与消失的对象相关的轨迹消失时,可以初始化与消失的轨迹相对应的航向历史中的区域的分数。换言之,可以删除与消失的轨迹相对应的航向历史。反之,当根据实施例的对象跟踪方法和装置待跟踪的新对象出现时,可以生成与新出现的对象相关的轨迹,并可以开始在航向历史的每个区域中累积分数。换言之,可以生成与新生成的轨迹相关的航向历史。
[0109]
再次参照图2,在步骤220之后,角度提取单元157利用航向历史hh提取轨迹的航向角(以下称为“基于历史的航向角”)并将提取的基于历史的航向角输出到角度校正单元159(步骤230)。
[0110]
图8是图2所示的步骤230的实施例230a的流程图。图8所示的步骤230a可以由角度提取单元157执行。
[0111]
在步骤220之后,检查在航向历史hh的第一到第n区域中累积的分数之中的最高分数mxp是否大于第二阈值分数tp2(步骤231)。此处,第二阈值分数tp2可以是针对每个轨迹不同地预先设置的值或者可以是与轨迹无关地预先设置的固定值。例如,第二阈值分数tp2
可以为4分,但实施例不限于第二阈值分数tp2的任何特定值。
[0112]
如果最高分数mxp小于或等于第二阈值分数tp2,则检查绝对速度是否小于第二阈值速度vt2(步骤233)。此处,第二阈值速度vt2可以是针对每个轨迹不同地预先设置的值或者可以是与轨迹无关地预先设置的固定值。例如,第二阈值速度vt2可以为1.5m/s,但实施例不限于第二阈值速度vt2的任何特定值。
[0113]
如果绝对速度大于或等于第二阈值速度vt2,则在步骤210中获得的基于当前速度的航向角被确定为基于历史的航向角(步骤239)。然而,如果绝对速度小于第二阈值速度vt2,则检查航向历史hh中在先前识别周期t-1中已并入分数的区域(以下称为“先前区域”)与航向历史hh中在当前识别周期t中已经并入分数的区域(以下称为“当前区域”)之间的间隔距离gp是否大于阈值距离tdi(步骤235)。此处,阈值距离tdi可以是针对每个轨迹不同地预先设置的值,或者可以是与轨迹无关地预先设置的固定值。
[0114]
此外,间隔距离gp可以对应于航向历史中的区域之中的先前识别周期t-1中的目标区域与当前识别周期t中的目标区域之间的间隔距离。例如,当航向历史hh中包括的第一至第n区域之中,先前识别周期t-1中的目标区域为第n区域并且当前识别周期t中的目标区域为第m区域时,间隔距离gp可以利用下面的等式5来表示。
[0115]
[等式5]
[0116]
gp=|m-n|
[0117]
此处,1≤n≤n,并且1≤m≤n。
[0118]
例如,当间隔距离gp如利用上面的等式5表示时,阈值距离tdi可以被确定为1。
[0119]
如果间隔距离gp大于阈值距离tdi,则具有最高分数的最高区域的角度被确定为基于历史的航向角(步骤237)。根据实施例,在步骤237中确定为基于历史的航向角的最高区域的角度可以是最高区域的角度范围内的中间角度。例如,当包括在图6所示的航向历史hh中的第一至第十二区域1至12之中,第一区域1的累积分数是大于第二至第十二区域2至12的累积分数的最高分数时,第一区域1对应于最高区域。在这种情况下,作为最高区域的第一区域1的角度范围(-15
°
到 15
°
)中的中间角度是0
°
,并且0
°
被确定为基于历史的航向角。
[0120]
然而,如果间隔距离gp小于或等于阈值距离tdi,则在步骤210中获得的基于当前速度的航向角可以被确定为基于历史的航向角(步骤239)。
[0121]
另一方面,当在步骤231中确定最高分数mxp大于第二阈值分数tp2时,过程进行到步骤235。换言之,当最高分数mxp大于第二阈值分数tp2且间隔距离gp大于阈值距离tdi时,执行上述步骤237。在步骤237中,将航向历史中的区域之中与最高分数相对应的最高区域的角度确定为基于历史的航向角。然而,当最高分数mxp大于第二阈值分数tp2且间隔距离gp小于或等于阈值距离tdi时,执行步骤239。在步骤239中,将在步骤210中获得的基于当前速度的航向角确定为基于历史的航向角。
[0122]
同时,再次参照图2,角度校正单元159利用关于轨迹的形状的信息校正基于历史的航向角,确定校正结果为当前识别周期t中的最终航向角,并通过输出端out输出最终航向角(步骤240)。
[0123]
图9是图2所示的步骤240的实施例240a的流程图。图10-12是帮助理解图9中所示的步骤240a的示图。具体地,图10是用于说明轨迹tr的候选航向角的示图。图11是用于说明
根据轨迹的形状的轨迹tr的候选航向角的示图。图12是示出轨迹tr的候选航向角d1和d2与基于历史的航向角402之间的比较的示图。
[0124]
图9所示的步骤240a可以由图3所示的角度校正单元159执行。
[0125]
在步骤230之后,检查关于轨迹的形状的信息(步骤241)。
[0126]
参照图10,一个轨迹tr可以具有对应于基于本车辆10的四个方向d1、d2、d3和d4中的一个的候选航向角。如图10所示,当没有形状信息时,一个轨迹tr具有四个候选航向角d1、d2、d3和d4。相反,当存在形状信息时,一个轨迹tr仅具有两个候选航向角。例如,参照图11,基于本车辆10,第一、第二和第四轨迹tr1、tr2和tr4中的每一个的形状是i形is并且第三轨迹tr3的形状是l形ls。在这种情况下,第二、第三和第四轨迹tr2、tr3和tr4中的每一个具有两个候选航向角d1和d2,第一轨迹tr1具有两个候选航向角d3和d4。
[0127]
在步骤241之后,将形状信息中包括的多个候选航向角与基于历史的航向角相互比较以校正基于历史的航向角(步骤243至249)。
[0128]
例如,在步骤241之后,可以从多个候选航向角之中选择与基于历史的航向角具有较小差的候选航向角(步骤243)。例如,如图12所示,当形状信息具有两个候选航向角d1和d2时,将基于历史的航向角402与两个候选航向角d1和d2相互比较。在图12所示的情况下,在两个第一候选航向角d1和第二候选航向角d2之中,第一候选航向角d1比第二候选航向角d2具有与基于历史航向角402小的差。因此,可以选择第一候选航向角d1。
[0129]
此外,在步骤243之后,基于所选择的候选航向角的可靠度对候选航向角进行过滤(例如,低通滤波)(步骤245至249)。此处,所选择的候选航向角的可靠度为步骤241中搜索到的形状信息的可靠度。
[0130]
根据实施例,检查可靠度是否大于阈值可靠度(步骤245)。例如,可以将0到1的权重(weight)分配给可靠度并且可以检查分配的权重以检查可靠度。
[0131]
如果可靠度大于阈值可靠度,则在步骤243中选择的候选航向角被确定为最终航向角(步骤247)。然而,如果可靠度不大于阈值可靠度,则基于历史的航向角被确定为最终航向角(步骤249)。
[0132]
同时,其中记录了用于执行根据实施例的对象跟踪方法的程序的计算机可读记录介质可以存储用于实现利用从与对象相关的点云生成的用于跟踪对象的轨迹的在当前识别周期t中的速度以获得轨迹的基于当前速度的航向角的功能的程序。该程序还可以实现累积与关于基于当前速度的航向角的信息相关联的分数并将累积的分数并入到具有针对轨迹的各个航向角划分的区域的航向历史中的功能。该程序可以进一步实现利用航向历史获得轨迹的基于历史的航向角的功能。该程序还可以实现利用关于轨迹的形状的信息对基于历史的航向角进行校正并将校正结果确定为当前识别周期t中的最终航向角的功能。
[0133]
另外,获得轨迹的基于当前速度的航向角的功能可以包括获得当前识别周期t中的轨迹的绝对速度的功能。获得轨迹的基于当前速度的航向角的功能还可以包括当绝对速度大于或等于第一阈值速度时,利用作为绝对速度的分量的绝对纵向速度和绝对横向速度获得基于当前速度的航向角的功能。获得轨迹的基于当前速度的航向角的功能可以进一步包括当绝对速度小于第一阈值速度时,获得利用先前识别周期t-1中的轨迹的速度获得的基于先前速度的航向角和利用关于当前识别周期t中的轨迹的形状的信息获得的基于形状的航向角之间的差的功能。获得轨迹的基于当前速度的航向角的功能可以进一步包括当差
小于阈值差时,将基于形状的航向角确定为基于当前速度的航向角的功能。获得轨迹的基于当前速度的航向角的功能可以进一步包括当差大于或等于阈值差时,检查航向历史中每个角度累积的分数之中的最高分数是否大于第一阈值分数的功能。获得轨迹的基于当前速度的航向角的功能可以进一步包括当最高分数大于第一阈值分数时,将基于先前速度的航向角确定为基于当前速度的航向角的功能。获得轨迹的基于当前速度的航向角的功能还可以包括当最高分数小于或等于第一阈值分数时,确定在航向历史中的区域之中具有最高分数的区域的角度为基于当前速度的航向角。
[0134]
另外,累积分数并将累积分数并入到航向历史中的功能(以下称为“累积并入功能”)可以包括获得绝对纵向速度和绝对横向速度之中具有较小标量值的速度与绝对纵向速度和绝对横向速度之中具有较大标量值的速度的速度比的功能。累积并入功能还可以包括检查速度比是否小于参考比的功能。累积并入功能可以进一步包括当速度比小于参考比时,将航向历史中的区域之中与基于当前速度的航向角相对应的目标区域的分数减小第一分数,将分数增大第二分数,并将分别与目标区域的左侧和右侧相邻的左区域和右区域中的每一个的分数增大第三分数的功能。累积并入功能还可以包括当速度比大于或等于参考比时,将目标区域的分数减小第四分数并将分数增大第五分数的功能。
[0135]
另外,获得基于历史的航向角的功能可以包括当最高分数小于或等于第二阈值分数时检查绝对速度是否小于第二阈值速度的功能。获得基于历史的航向角的功能还可以包括当绝对速度大于或等于第二阈值速度时,确定基于当前速度的航向角为基于历史的航向角的功能。获得基于历史的航向角的功能可以进一步包括当绝对速度小于第二阈值速度时检查航向历史中已经在先前识别周期t-1中并入分数的区域和航向历史中已经在当前识别周期t中并入分数的区域之间的间隔距离是否大于阈值距离的功能。获得基于历史的航向角的功能可以进一步包括当间隔距离大于阈值距离时,将航向历史中的区域之中具有最高分数的区域的角度确定为基于历史的航向角的功能。获得基于历史的航向角的功能可以进一步包括当间隔距离小于或等于阈值距离时,确定基于当前速度的航向角为基于历史的航向角的功能。获得基于历史的航向角的功能可以进一步包括当最高分数大于第二阈值分数且间隔距离大于阈值距离时,确定在航向历史中的区域之中与最高分数相对应的区域的角度为基于历史的航向角的功能。获得基于历史的航向角的功能还可以包括当最高分数大于第二阈值分数且间隔距离小于或等于阈值距离时,确定基于当前速度的航向角为基于历史的航向角的功能。
[0136]
另外,校正基于历史的航向角的功能可以包括检查关于轨迹的形状的信息的功能和比较形状信息中包括的多个候选航向角和基于历史的航向角以校正基于历史的航向角的功能。
[0137]
计算机可读记录介质包括其中存储可由计算机系统读取的数据的所有种类的记录装置。计算机可读记录介质的示例包括只读存储器(rom)、随机存取存储器(ram)、光盘rom(cd-rom)、磁带、软盘和光学数据存储器。
[0138]
计算机可读记录介质还可以分布在连接网络的计算机系统上,从而以分布式方式存储和执行计算机可读代码。此外,用于完成对象跟踪方法的功能程序、代码和代码段可以容易地由本公开所属领域的普通技术人员例如程序员来解释。
[0139]
从以上描述中显而易见,根据对象跟踪方法和装置以及存储执行根据上述实施例
的方法的程序的记录介质,利用关于轨迹的航向角的历史获得基于历史的航向角,并且利用形状信息校正基于历史的航向角。因此,根据对象跟踪方法和装置以及存储执行根据公开的实施例的方法的程序的记录介质,特别是在特定情况下,例如,在存在由于轨迹的低速运动或交通拥堵,速度被错误且突然计算从而导致基于速度提取的航向角产生错误的可能性的情况下,以及轨迹的速度超过预定水平的情况下,可以通过减少航向角的错误来准确且可靠地提取航向角并因而准确地跟踪对象,并且可以可靠地计算航向角。
[0140]
然而,通过本公开可实现的效果不限于上述效果。本领域普通技术人员从以上描述中应该清楚地理解本文未提及的其它效果。
[0141]
上述各种实施例可以在不脱离本公开的范围的情况下彼此组合,除非它们彼此不兼容。
[0142]
另外,对于任何各个实施例中未详细描述的任何元件或过程,除非另有说明,否则可以参考其它实施例中具有相同附图标记的元件或过程的描述。
[0143]
虽然已经参考本公开的具体实施例具体地示出和描述了本公开,但是提出这些实施例仅用于说明的目的而不限制本公开。对于本领域的普通技术人员来说显而易见的是,在不脱离本文阐述的实施例的本质特征的情况下,可以在形式和细节上进行各种改变。例如,可以修改和应用实施例中阐述的各个配置。此外,此类修改和应用中的差异应被解释为落入由所附权利要求书限定的本公开的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献