一种导航雷达系统中全局目标跟踪的方法
技术领域
本发明涉及雷达目标跟踪技术领域,特别是一种导航雷达系统中全局目标跟踪的方法。
背景技术
VTS系统(船舶交通管理系统)中,导航雷达用于对水面目标进行跟踪,为系统持续提供目标动态信息。
航迹点迹关联是雷达目标跟踪的重要环节,关联的结果用于滤波处理,关联结果的准确性直接影响滤波结果的准确性,最终影响航向航速的准确性。由于雷达回波的特性,点迹产生的时间、位置、尺寸等参数具有不确定性,通常会在预定的位置周围晃动,因此航迹关联到点迹的过程具有很大的模糊性。在内河水域,船舶呈密集、低速的特点,船舶之间存在大量的追越、交叉、会遇等情景,导致雷达回波之间发生粘连,关联的模糊性问题尤为严重。
解决关联的模糊性问题最直接的方法,是对整个扫描区域内的目标全部进行跟踪处理,利用目标与目标之间互相争夺点迹的排他机制,避免点迹分配过程中产生的误分配,实现最优分配。因此,有必要设计一种程序框架,可以管理每个航迹周围的态势,并时刻更新维护该态势数据,简化密集目标点迹关联的逻辑复杂度,达到最优匹配每个点迹数据的目的。
同时对整个扫描区域内的目标都进行跟踪处理,需要较大的计算量,考虑到后续算法改进也会导致复杂度、计算量增加,因此需要设计一个高效的数据管理策略,能够支撑所有目标跟踪处理的计算量级,同时框架自身不造成过多的额外开销,给目标跟踪的计算保留充足的性能余量。
发明内容
本发明要解决的技术问题是针对上述现有技术的不足,而提供一种导航雷达系统中全局目标跟踪的方法,该导航雷达系统中全局目标跟踪的方法以拓扑网格为基础,结合线程池,形成全局目标跟踪框架,能达到较好的全局目标跟踪监控效果,从而解决了密集低速船舶经常处于交叉、会遇、追越情况下的雷达回波粘连现象,导致的点迹关联的误关联率较大的问题,以及利用全局跟踪实现最优化关联的同时带来的较大计算量的问题。
为解决上述技术问题,本发明采用的技术方案是:
一种导航雷达系统中全局目标跟踪的方法,包括如下步骤:
步骤1,划分拓扑网格:按照如下两条划分准则对整个雷达扫描范围划分拓扑网格。
划分准则一、每个拓扑格子的尺寸应该尽量小,以便计算量被充分地均摊。
划分准则二、单个航迹在单个扫描周期内的关联范围,应该被约束在其所在拓扑格子及其相邻的8个拓扑格子内。
划分后的每个拓扑格子均为扇形结构,具备相同的距离展宽和相同的方位展宽。
步骤2,雷达目标的跟踪过程抽象为任务:将雷达目标的跟踪过程抽象为“航迹更新”、“航迹建立”、“数据清理”三种处理过程,并将它们统一抽象为“任务”,便于并发执行;其中,“航迹更新”任务的输入为:拓扑格子内的所有航迹,即需要进行更新的航迹、该拓扑格子和周围相关拓扑格子内所有的航迹数据、该拓扑格子和周围所有拓扑格子内所有的点迹数据;输出为:更新后的航迹数据、更新后的点迹数据。
“航迹建立”任务的输入为:剩余的点迹数据;输出为:刚刚建航的初始航迹数据。
“数据清理”任务用于清理“航迹更新”任务和“航迹建立”任务执行结束后的残留数据,也即清理航迹更新处理后质量为零的航迹、所有点迹数据。
步骤3,建立线程池:使同一方位内的每个拓扑格子中,其包含的数据均被并发运算,以使数据处理的速度满足应有的实时性,确保当前扫描周期内的数据能在下个扫描周期到来前全部处理结束。
步骤4,建立扇区驱动机制:把步骤2抽象后的处理过程按照天线扫描的方位顺序依次分配到不同的扇区内进行,也即处理过程按照点迹更新、航迹更新、航迹新建、数据清理的顺序执行;由于大目标的点迹可能跨扇区,以及线程池工作模式下各处理之间需要保留时间间隙,不同的处理扇区之间设置时间间隔,确保每个拓扑格子都是按照“航迹更新”-“航迹建立”-“数据清理”的顺序执行。
步骤5,点迹填充:持续从检测模块接收最新点迹数据并存储填充至对应的拓扑网格、同时接收天线的扫掠方位;跟踪程序接收到的天线方位信息是持续变化的,随着天线的旋转实时更新,同时会附带扫掠过后检测出来的目标点迹。
步骤6,跨扇区判断:判断本次与上次的扫掠方位是否跨越扇区,如果未跨越,则重复执行步骤5;如果跨越,则根据扇区驱动机制在对应扇区的每个拓扑格子中启动航迹更新、航迹建立、数据清理,每个拓扑格子中的处理均是相互独立的,互不干扰。
步骤7,重复步骤5和步骤6,实现全局目标跟踪。
在步骤1中,整个雷达扫描范围划分为24个等方位扇区,故在步骤6中,一个扫描周期内,一共触发24次方位跨扇区事件,每一次跨扇区,均会触发在相应扇区中每个拓扑格子内启动航迹更新、航迹建立、数据清理。
步骤6中,航迹更新的具体处理过程为:首先建立一个“航迹更新”的任务对象,接着收集当前拓扑格子、相邻拓扑格子中的点迹、航迹数据并保存到建立的“航迹更新”任务对象中,最后将任务对象投入步骤3建立的线程池执行,执行过程包括航迹关联、滤波;执行结束后,用更新过的航迹、点迹覆盖原拓扑格子中的航迹、点迹数据;每个任务执行的数据相互独立、互不影响。
步骤6中,航迹建立的具体处理过程为:首先建立一个“航迹建立”的任务对象,接着收集当前拓扑格子内所有未被关联的点迹数据并保存到建立的“航迹建立”任务对象中,最后将任务对象投入步骤3建立的线程池执行;执行结束后,用建航后的点迹覆盖原拓扑格子中的点迹,刚建立的航迹以建航的点迹位置为初始位置,初始航速为零;在下个周期,这些新建的航迹将进行“航迹更新”处理。
步骤6中,数据清理的具体处理过程为:当拓扑格子内的点迹,被航迹更新过程处理过,剩余的点迹又经过了建航处理,那么该拓扑格子内的所有点迹就成了无用数据;建立一个“数据清理”任务,清除拓扑格子中的无用点迹数据;另外,经过“航迹更新”处理的航迹,有一部分目标转为丢失状态,即航迹的可信度降为零,此时也需要进行清理以便释放资源。
步骤1中,划分后的拓扑网格以分区块的方式组织整个扫描范围内的航迹、点迹数据,并通过自旋锁控制数据访问。
本发明采用上述方法后,实现了导航雷达对全局目标的跟踪监控,并且在跟踪监控过程中利用全局数据为最优化关联提供了数据和框架支持,达到了较好的跟踪监控效果,能够实现导航雷达系统中全局目标的持续起始、跟踪,并且在跟踪过程中综合考虑了航迹与点迹数据之间关联的特殊性,即存在跨格子关联的情况,可以保证整个雷达扫描范围内的所有目标实现最优关联处理,整套框架实现较高处理效率的前提下,能够有效提升雷达对于低速密集目标的跟踪性能。
附图说明
图1显示了本发明的流程图。
图2显示了扇区划分后的拓扑格子。
图3显示了扇区驱动机制示意图。
图4显示了航迹的“九宫格”处理示意图。
具体实施方式
下面结合附图和具体较佳实施方式对本发明作进一步详细的说明。
如图1所示,一种导航雷达系统中全局目标跟踪的方法,包括如下步骤。
步骤1,划分拓扑网格:按照如下两条划分准则对整个雷达扫描范围划分拓扑网格。
划分准则一、每个拓扑格子的尺寸应该尽量小,以便计算量被充分地均摊。
划分准则二、如图4所示,单个航迹在单个扫描周期内的关联范围,应该被约束在其所在拓扑格子及其相邻的8个拓扑格子内。
划分后的每个拓扑格子均为如图2所示的扇形结构,具备相同的距离展宽和相同的方位展宽。划分后的拓扑网格以分区块的方式组织整个扫描范围内的航迹、点迹数据,并通过自旋锁控制数据访问。整个雷达扫描范围优选划分为24个等方位扇区。
上述拓扑格子的划分充分考虑了单周期内航迹与点迹关联的范围,关联时仅需利用当前格子和邻近格子内的点迹数据,因此航迹的关联范围被局限在以当前格子为中心的9个格子内,从设计上杜绝了全概率关联计算量爆炸的可能性。
步骤2,雷达目标的跟踪过程抽象为任务。
将雷达目标的跟踪过程抽象为“航迹更新”、“航迹建立”、“数据清理”三种处理过程,并将它们统一抽象为“任务”,便于并发执行。
其中,“航迹更新”任务的输入为:拓扑格子内的所有航迹,即需要进行更新的航迹、该拓扑格子和周围相关拓扑格子内所有的航迹数据、该拓扑格子和周围所有拓扑格子内所有的点迹数据;输出为:更新后的航迹数据、更新(被关联)后的点迹数据。
“航迹建立”任务的输入为:剩余(未被关联)的点迹数据;输出为:刚刚建航的初始航迹数据。
“数据清理”任务用于清理“航迹更新”任务和“航迹建立”任务执行结束后的残留数据,也即清理航迹更新处理后质量为零的航迹、所有点迹数据(含被关联的、被建航的)。
步骤3,建立线程池:使同一方位(扇区)内的每个拓扑格子中,其包含的数据均被并发运算,以使数据处理的速度满足应有的实时性,确保当前扫描周期内的数据能在下个扫描周期到来前全部处理结束。
步骤4,建立扇区驱动机制:如图3所示,把步骤2抽象后的处理过程按照天线扫描的方位顺序依次分配到不同的扇区内进行,也即处理过程按照点迹更新、航迹更新、航迹新建、数据清理的顺序执行。图3中给出了两种优选执行顺序。
由于大目标的点迹可能跨扇区,以及线程池工作模式下各处理之间需要保留时间间隙,不同的处理扇区之间设置时间间隔(可配),确保每个拓扑格子都是按照“航迹更新”-“航迹建立”-“数据清理”的顺序执行。
步骤5,点迹填充:持续从检测模块接收最新点迹数据并存储填充至对应的拓扑网格、同时接收天线的扫掠方位;跟踪程序接收到的天线方位信息是持续变化的,随着天线的旋转实时更新,同时会附带扫掠过后检测出来的目标点迹。因此,点迹的填充动作不是由天线方位跨扇区而触发的,而是持续不断进行的。点迹填充过程与其他过程不同,由外部线程执行,而不是由内部线程池统一执行。
上述检测模块是“雷达点迹提取软件”的简称,为现有技术,其利用雷达经过杂波处理后的视频数据,提取其中目标在当前扫描周期内的点迹信息,点迹信息通常包括目标的位置、时间和大小等信息,但不含有目标的轨迹和航向等信息。点迹信息输入跟踪模块,由跟踪模块完成目标的关联、滤波(统称为跟踪),最终形成目标的位置、时间、大小、航速航向、航迹可信度等一系列信息。
步骤6,跨扇区判断:判断本次与上次的扫掠方位是否跨越扇区,如果未跨越,则重复执行步骤5;如果跨越,则根据扇区驱动机制在对应扇区的每个拓扑格子中启动航迹更新、航迹建立、数据清理,每个拓扑格子中的处理均是相互独立的,互不干扰。
一个扫描周期内,优选一共触发24次方位跨扇区事件,每一次跨扇区,均会触发在相应扇区中每个拓扑格子内启动航迹更新、航迹建立、数据清理。
本步骤6中,航迹更新的具体处理过程为:首先建立一个“航迹更新”的任务对象,接着收集当前拓扑格子、相邻拓扑格子中的点迹、航迹数据并保存到建立的“航迹更新”任务对象中,最后将任务对象投入步骤3建立的线程池执行,执行过程包括航迹关联、滤波;执行结束后,用更新过的航迹、点迹覆盖原拓扑格子中的航迹、点迹数据;每个任务执行的数据相互独立、互不影响。这些任务通过线程池并发执行实现了效率最大化,该机制为全局目标跟踪处理提供性能保障。
“航迹处理”任务的目的在于将当前拓扑格子内的每个航迹均进行关联处理,对于关联到点迹的航迹,还需进行滤波处理,是整套跟踪流程中最关键的任务。在此过程中,处于拓扑格子内的航迹可能与相邻的拓扑格子内的点迹关联,而相邻格子内的点迹也可能与相邻拓扑格子内的航迹相互关联。因此利用当前拓扑格子和周围相邻拓扑格子内的所有航迹、点迹数据,对当前拓扑格子内的每个航迹数据进行更新处理,从数据和算法上保证了实现航迹的最优关联、分配的基本条件。
本步骤6中,航迹建立的具体处理过程为:首先建立一个“航迹建立”的任务对象,接着收集当前拓扑格子内所有未被关联的点迹数据并保存到建立的“航迹建立”任务对象中,最后将任务对象投入步骤3建立的线程池执行;执行结束后,用建航后的点迹覆盖原拓扑格子中的点迹,刚建立的航迹以建航的点迹位置为初始位置,初始航速为零;在下个周期,这些新建的航迹将进行“航迹更新”处理。
“航迹建立”任务的目的是利用“航迹更新”处理后留下的未被关联的点迹,建立新的航迹。这一过程放在“航迹更新”之后,这是合理的,当雷达扫描第一圈时,由于没有既存的航迹,所以所有点迹均认为是剩余点迹,直接对所有点迹进行建航。
本步骤6中,数据清理的具体处理过程为:当拓扑格子内的点迹,被航迹更新过程处理过,剩余的点迹又经过了建航处理,那么该拓扑格子内的所有点迹就成了无用数据;建立一个“数据清理”任务,清除拓扑格子中的无用点迹数据;另外,经过“航迹更新”处理的航迹,有一部分目标转为丢失状态,即航迹的可信度降为零,此时也需要进行清理以便释放资源。
步骤7,重复步骤5和步骤6,实现全局目标跟踪。
综上所述,本发明是一种导航雷达系统中全局目标跟踪的方法,重点在于在跟踪过程中综合考虑了密集低速船舶经常处于交叉、会遇、追越情况下的雷达回波粘连现象,导致点迹关联的误关联率较大。同时又考虑到利用全局跟踪实现最优化关联的同时带来了较大计算量,设计以拓扑网格为基础的数据组织方法,结合线程池,形成全局目标跟踪框架,达到了较好的全局目标跟踪监控效果。
以上详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种等同变换,这些等同变换均属于本发明的保护范围。