一种快速按时序播放多个目标轨迹点的回放方法

文档序号:10624796阅读:296来源:国知局
一种快速按时序播放多个目标轨迹点的回放方法
【专利摘要】本发明公开了一种快速按时序播放多个目标轨迹点的回放方法,其将多个目标轨迹点组成的大量数据,按照播放时长,计算所需分隔的数量,再遍历以轨迹点填充分隔区,形成按时序排列的分隔数据区;最后启动计时器,播放轨迹。本发明可以减少对整个轨迹点数据的多次反复的遍历,减少重复排序工作,缩短轨迹回放的处理时间,提高画面响应速度,做到多目标同步显示。
【专利说明】
一种快速按时序播放多个目标轨迹点的回放方法
技术领域
[0001 ] 本发明属于计算机视觉技术,具体涉及目标轨迹的回放技术。
【背景技术】
[0002]轨迹是很重要的历史数据。通过对轨迹的查询,可以知道在某段时间里目标去了哪里,然而对轨迹的查询是很耗时间的。
[0003]对于人机界面来说,用户的长时间等待是不允许的。轨迹的原始文件是多目标轨迹点无序的,对于这些大量无序的轨迹点,一般地方法去筛选排序按时间分隔是需要占用很长的时间,显示效果不佳,有时多目标不能同步,或有较长的时间延时,超出了用户等待可以忍受的范围。

【发明内容】

[0004]针对现有轨迹回放及查询技术耗时长、且无法实现多目标同步的问题,本发明的目的在于提供一种快速按时序播放多个目标轨迹点的回放方法。
[0005]为了达到上述目的,本发明采用如下的技术方案:
[0006]—种快速按时序播放多个目标轨迹点的回放方法,所述方法将多个目标轨迹点组成的大量数据,按照播放时长,计算所需分隔的数量,再遍历以轨迹点填充分隔区,形成按时序排列的分隔数据区;最后启动计时器,播放轨迹。
[0007]在本发明的优选实例中,所述回放方法包括如下步骤:
[0008](101)设置时间和FTP路径;
[0009](102)与目标FTP连接;
[0010](103)通过FTP下载所需的轨迹点二进制文件;
[0011](104)转化二进制轨迹点文件;
[0012](105)筛选轨迹点,去除连续相同位置轨迹点;
[0013](106)获取所有轨迹点的最小时间和最大时间,以及轨迹点需要分成多少间隔N ;
[0014](107)计算最大时间和最小时间的时间间隔,以及每个轨迹间隔的时长;
[0015](108)循环每个间隔,判断是否是最后一个轨迹间隔,如果不是转(109),如果是转(121);
[0016](109)计算当前轨迹间隔的最大时间;
[0017](110)循环目标轨迹Map容器,是否到最后一个目标号轨迹,如果是转(111),否则转(112);
[0018](111)将间隔临时VECTOR容器放入间隔vector容器,转(108);
[0019](112)判断该目标号之前是否处理标记过,如果不是转(113),否则转(119);
[0020](113)将该目标号轨迹LIST容器起始指针指向开始处;
[0021](114)判断List容器起始指针指向的轨迹点时间是否大于当前轨迹间隔的最大时间,如果是转(110),如果不是转(115);
[0022](115)循环该目标号轨迹点LIST容器,是否到该目标号轨迹点LIST容器底部,如果是转(121),否则转(116);
[0023](116)判断当前轨迹点的时间是否大于该轨迹间隔的最大时间,如果是转(117),否则转(118-1);
[0024](117)将该目标号标记,并将该轨迹点标记;
[0025](118)将临时LIST容器放入到间隔临时VECTOR容器中,清空临时LIST容器,转(110);
[0026](118-1)将该轨迹点放入临时List容器,(转116);
[0027](119)将该目标号轨迹list容器起始指针指向上次处理停留处;
[0028](120)删除该目标号处理标记,转(115);
[0029](121)开起计时器,准备回放;
[0030](122)循环所有间隔是否结束,如果结束转(129),否则转(123);
[0031](123)循环当前间隔轨迹容器里每个目标是否结束,如果结束,本次计时器处理结束,否则转(124);
[0032](124)循环该目标每个轨迹点是否结束,如果结束转(123),否则转(125);
[0033](125)判断是否为第一个轨迹点,如果是转(128),否则转(126);
[0034](126)判断当前点距离上一个是否超过限制距离,如果超过;否则转(127);
[0035](127)连接当前点和上个点;
[0036](128)画当前点,转(124);
[0037](129)结束。
[0038]本方法将多个目标轨迹点组成的大量数据进行优化分隔排序处理,可以减少对整个轨迹点数据的多次反复的遍历,减少重复排序工作,缩短轨迹回放的处理时间,提高画面响应速度,做到多目标同步显示。
【附图说明】
[0039]以下结合附图和【具体实施方式】来进一步说明本发明。
[0040]图1为本发明实例进行快速按时序播放多个目标轨迹点的c流程图。
【具体实施方式】
[0041]为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
[0042]本发明通过将多个目标轨迹点组成的大量数据进行优化分隔排序处理,以此来减少对整个轨迹点数据的多次反复的遍历,从而减少重复排序工作,缩短轨迹回放的处理时间,提尚画面响应速度,做到多目标同步显不。
[0043]具体的,本方案首先连接FTP,下载所需的轨迹二进制文件,然后转化二进制文件,筛选轨迹点;针对筛选后的数据按照播放时长,计算所需分隔的数量;遍历所以轨迹点填充分隔区,形成按时序排列的分隔数据区;启动计时器,播放轨迹。
[0044]假如有4个轨迹点分别为:I分I秒、I分3秒、I分6秒、I分10秒,要求10秒播放完(播放时长),4个轨迹点的做大时间间隔为10秒,最大时间间隔/分隔的数量(设为10),即每个间隔需要处理的时间,第一个分隔为轨迹点I分I秒,第二个分隔没有轨迹点,第三个分隔为轨迹点I分3秒,第四个分隔没有轨迹点…第10个间隔为轨迹点I分10秒。
[0045]其中将符合分隔所需时间的轨迹点填入分区数据区,由此形成按时间排序的排列的分隔数据区。
[0046]以通过一具体实例来进一步说明本方案:
[0047]本实例基于一个多个目标轨迹点放回系统来实现,该系统主要包括一处理器、寄存器、数据存储器以及其他所需的部件(如控制键、显示器等等),其中寄存器中设置有相应的多个目标轨迹点回放控制程序,该控制程序基于本发明方案形成;数据存储器用于存储待回放的由多个目标轨迹点组成的大量数据以及整个系统运行所产生的数据;处理器调用寄存器中相应的回放控制程序对数据存储器中存储的由多个目标轨迹点组成的大量数据进行多个目标轨迹点的快速按时序播放。其具体的控制过程如下(参见图1):
[0048](101)设置时间和FTP路径;
[0049](102)与目标FTP连接;
[0050](103)通过FTP下载所需的轨迹点二进制文件;
[0051](104)转化二进制轨迹点文件;
[0052](105)筛选轨迹点,去除连续相同位置轨迹点;
[0053](106)获取所有轨迹点的最小时间和最大时间,以及轨迹点需要分成多少间隔N ;
[0054](107)计算最大时间和最小时间的时间间隔,以及每个轨迹间隔的时长;
[0055](108)循环每个间隔,判断是否是最后一个轨迹间隔,如果不是转(109),如果是转(121);
[0056](109)计算当前轨迹间隔的最大时间;
[0057](110)循环目标轨迹Map容器,是否到最后一个目标号轨迹,如果是转(111),否则转(112);
[0058](111)将间隔临时VECTOR容器放入间隔vector容器,转(108);
[0059](112)判断该目标号之前是否处理标记过,如果不是转(113),否则转(119);
[0060](113)将该目标号轨迹LIST容器起始指针指向开始处;
[0061](114)判断List容器起始指针指向的轨迹点时间是否大于当前轨迹间隔的最大时间,如果是转(110),如果不是转(115);
[0062](115)循环该目标号轨迹点LIST容器,是否到该目标号轨迹点LIST容器底部,如果是转(121),否则转(116);
[0063](116)判断当前轨迹点的时间是否大于该轨迹间隔的最大时间,如果是转(117),否则转(118-1);
[0064](117)将该目标号标记,并将该轨迹点标记;
[0065](118)将临时LIST容器放入到间隔临时VECTOR容器中,清空临时LIST容器,转
(110);
[0066](118-1)将该轨迹点放入临时List容器,(转116);
[0067](119)将该目标号轨迹list容器起始指针指向上次处理停留处;
[0068](120)删除该目标号处理标记,转(115);
[0069](121)开起计时器,准备回放;
[0070](122)循环所有间隔是否结束,如果结束转(129),否则转(123);
[0071](123)循环当前间隔轨迹容器里每个目标是否结束,如果结束,本次计时器处理结束,否则转(124);
[0072](124)循环该目标每个轨迹点是否结束,如果结束转(123),否则转(125);
[0073](125)判断是否为第一个轨迹点,如果是转(128),否则转(126);
[0074](126)判断当前点距离上一个是否超过限制距离,如果超过(这里的限制距离是个常量,预先设定好,首先计算当前点和上个点两点之间的距离,然后和限制距离比较大小,由此来确定是否超过);否则转(127);
[0075](127)连接当前点和上个点;
[0076](128)画当前点,转(124);
[0077](129)结束。
[0078]通过实验证明,本实例方案与其它方法相比快了数倍,取得了很好的视觉效果和体验。
[0079]以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
【主权项】
1.一种快速按时序播放多个目标轨迹点的回放方法,其特征在于,所述方法将多个目标轨迹点组成的大量数据,按照播放时长,计算所需分隔的数量,再遍历以轨迹点填充分隔区,形成按时序排列的分隔数据区;最后启动计时器,播放轨迹。2.根据权利要求1所述的一种快速按时序播放多个目标轨迹点的回放方法,其特征在于,所述回放方法包括如下步骤: (101)设置时间和FTP路径; (102)与目标FTP连接; (103)通过FTP下载所需的轨迹点二进制文件; (104)转化二进制轨迹点文件; (105)筛选轨迹点,去除连续相同位置轨迹点; (106)获取所有轨迹点的最小时间和最大时间,以及轨迹点需要分成多少间隔N; (107)计算最大时间和最小时间的时间间隔,以及每个轨迹间隔的时长; (108)循环每个间隔,判断是否是最后一个轨迹间隔,如果不是转(109),如果是转(121); (109)计算当前轨迹间隔的最大时间; (110)循环目标轨迹Map容器,是否到最后一个目标号轨迹,如果是转(111),否则转(112); (111)将间隔临时VECTOR容器放入间隔vector容器,转(108); (112)判断该目标号之前是否处理标记过,如果不是转(113),否则转(119); (113)将该目标号轨迹LIST容器起始指针指向开始处; (114)判断List容器起始指针指向的轨迹点时间是否大于当前轨迹间隔的最大时间,如果是转(110),如果不是转(115); (115)循环该目标号轨迹点LIST容器,是否到该目标号轨迹点LIST容器底部,如果是转(121),否则转(116); (116)判断当前轨迹点的时间是否大于该轨迹间隔的最大时间,如果是转(117),否则转(118-1); (117)将该目标号标记,并将该轨迹点标记; (118)将临时LIST容器放入到间隔临时VECTOR容器中,清空临时LIST容器,转(110); (118-1)将该轨迹点放入临时List容器,(转116); (119)将该目标号轨迹list容器起始指针指向上次处理停留处; (120)删除该目标号处理标记,转(115); (121)开起计时器,准备回放; (122)循环所有间隔是否结束,如果结束转(129),否则转(123); (123)循环当前间隔轨迹容器里每个目标是否结束,如果结束,本次计时器处理结束,否则转(124); (124)循环该目标每个轨迹点是否结束,如果结束转(123),否则转(125); (125)判断是否为第一个轨迹点,如果是转(128),否则转(126); (126)判断当前点距离上一个是否超过限制距离,如果超过;否则转(127);(127)连接当前点和上个点;(128)画当前点,转(124);(129)结束。
【文档编号】G06F17/30GK105989023SQ201510050815
【公开日】2016年10月5日
【申请日】2015年1月30日
【发明人】时文东, 蔡亚平, 林逢春, 许晓辉, 王新刚
【申请人】国网吉林省电力有限公司延边供电公司, 上海申瑞电网控制系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1