一种多源AIS数据去重融合的方法与流程

文档序号:19010546发布日期:2019-10-30 00:20阅读:1143来源:国知局
一种多源AIS数据去重融合的方法与流程

本发明属于船舶信息领域,涉及一种多源ais数据去重融合的方法。



背景技术:

ais(automaticidentificationsystem,船舶自动识别系统)由岸基设施和船载设备共同组成,是一种基于无线通信和数字信息可视化的数字助航系统和设备。ais设备将船舶的标识信息、位置信息、运动参数和航行状态等与船舶航行安全有关的重要数据,通过海事vhf频段自动连续地发送给附近船舶和岸基,以实现对本区域船舶的识别和监视。在内河航道上,为了实现对整个航道船舶的监控,需要在多个地点部署ais接收系统,才可能获取整个航道上船舶的ais信号,不出现ais接收盲区。由于部署多个ais接收系统后,接收范围会存在重叠区域,同一艘船舶同一时刻发射的ais消息可能会被相邻的多个ais接收系统接收到,如果各个ais接收系统直接将接收到的ais数据发送至数据服务器或其应用系统,就会造成了ais消息的重复冗余。大量重复冗余的ais数据会增加存储、网络传输成本,甚至在应用这些ais数据时出现异常结果。因此需要对这些重复数据进行实时去重处理。特别是,当ais接收系统不包含gps时,所接收并转发的ais数据将不包括时间信息,对这样多个ais数据源的重复数据进行融合更为困难和必要。

现有文献“滤除相同ais消息的数据处理设备及方法”中公开了一种滤除相同ais消息的数据处理设备,包括信息i/o接口、信息处理模块和信息存储设备,信息处理模块与信息i/o接口和信息存储设备连接,信息处理模块包括相同ais消息滤除模块,信息i/o接口接收信息后转入信息处理模块,信息处理模块判断并通过相同ais消息滤除模块发现并废弃含相同ais消息的信息,将处理后的信息存入信息存储设备。但是该技术存在以下缺点:该技术将含ais消息的信息中的消息与信息缓冲队列中的ais消息进行数据比较,若不相同,则将信息存入信息存储设备或通过信息接口输出,并加入缓冲队列。由于内河航道船舶流量各时间段内都不相同,该方法难以准确设置缓冲队列长度。队列长度设置较小时,若船舶流量大,ais数据发送频繁时会导致部分ais数据未进行去重就已经从缓冲队列中删除;队列长度设置较大时,若船舶流量小,则又造成计算机内存空间的浪费。并且当缓冲队列满时,需要手动删除队列头部数据,再将最新的ais数据存入队列尾,不能实现数据自动删除。

因此,亟需一种能够降低对数据计算、存储、传输等处理成本的多源ais数据去重融合的方法。



技术实现要素:

有鉴于此,本发明的目的在于提供一种面向带状区域的多源ais数据去重融合的方法,解决多源不带gps的ais采集系统采集ais数据重复冗余问题,降低对数据计算、存储、传输等处理成本。

为达到上述目的,本发明提供如下技术方案:一种多源ais数据去重融合的方法,以ais接收系统接收的船舶ais数据为基础,数据中心根据各ais接收系统的id编号,将接收到的相邻ais接收系统的ais原始报文写入计算机缓存,设置相应的缓存数据自动过期时间,新的ais消息到达时与缓存中已存在的ais消息进行逐一对比,如果有相同报文则直接丢弃,反之则将该ais消息进行计算、存储等操作,同时将该ais消息写入缓存并设置数据自动过期时间。该方法具体包括以下步骤:

s1:对部署的每个ais接收系统以自然数进行顺序编号id,建立ais接收系统的编号id与ais接收系统的ip地址对应的字典;

s2:多个ais接收系统将采集的船舶ais信号,以原码或解码形式通过网络或合适的协议传输到数据处理中心,在数据处理中心实现对多源ais数据进行去重融合处理。

进一步,所述步骤s2中,ais原码是指ais接收机接收到的ais报文,ais解码是根据ais报文规范,软件编程对ais原码进行解析后获得的mmsi和经纬度等数据。

进一步,ais接收系统是具有ais报文解析功能的数据处理单元,或者是不具备ais报文解析能力的ais接收机。

进一步,如果ais接收系统具有ais报文解析功能,且传送ais解码,则根据ais接收系统的id编号,设置空间范围,相邻ais接收系统的接收范围不重叠,只对接收范围内的ais报文进行解析,并通过网络传输到数据处理中心进行存储。

进一步,如果ais接收系统不具有ais报文解析功能,则直接将ais原码通过网络传输到数据处理中心;数据处理中心根据编号id与ip地址的对应字典,最小id编号的数据只与编号为id+1的数据,最大id编号的数据只与编号为id-1的数据,其余id编号的数据分别只与id+1和id-1的编号的数据进行去重融合。

进一步,对数据进行去重融合的具体步骤为:

s1:数据处理中心将接收到的ais原码字符串与对应的id编号写入缓存,为ais原码字符串设置时间戳,当ais接收系统有gps模块时,时间戳为gps时间;当ais接收系统没有gps模块时,时间戳为数据中心计算设备的本机时间;同时为每条ais原码设置自动过期时间t秒,即数据在缓存中存储t秒钟后将自动过期删除,这样就不会出现部分ais数据延迟到达而没被去重比较的情况;

s2:当有一条新ais原码数据到达时,根据其id编号与缓存中id+1编号和id-1编号的数据进行遍历比较,此处是对ais原码字符串直接进行比较;如果存在相同字符串值,则说明该船舶这一时刻的ais消息已被记录,直接将新到达的ais原码数据丢弃;如果不存在,则说明新ais消息不是重复数据,此时执行步骤s1,并将该ais原码数据进行解码计算和存储等操作;经过此操作之后,可筛选滤除重复的ais消息。

进一步,所述步骤s2具体包括以下步骤:

s21:对于第一次到达数据中心的ais原码数据,将该ais原码数据写入数据中心的redis缓存,将该ais原始数据报文字符串设置为redis缓存的key值,为ais报文字符串添加接收时间戳作为redis缓存的value值;其中redis是一个支持网络、可基于内存亦可持久化的key-value缓存系统,并提供多种语言的api。

s22:ais接收系统将接收到的ais原码数据通过网络传输到数据中心,数据中心将每一条从ais接收系统传输过来的ais消息与redis缓存中相邻id编号数据的key值进行比较,如果缓存中存在与之相同的key值,则表明这条ais原码数据已经被记录或处理过,是一条重复的数据,无需进行后续操作,直接将这条新到达的ais原码数据丢弃;如果缓存中不存在与之相同的key值,则说明这条ais消息是第一次到达数据中心,不是重复数据,对其进行计算和存储等操作。

本发明的有益效果在于:本发明提供了对条状区域部署ais接收系统获取的ais数据不出现重复冗余的数据去重融合的方法,该方法减少了需要比较的ais数据源的个数,同时利用redis缓存读写速度快、可设置数据自动过期的特点,将每条传输到数据中心的ais消息与redis缓存中的ais消息进行比较,标记并丢弃重复冗余的ais消息,能有效降低对ais数据计算、存储、传输等处理成本,并达到了较高的数据实时性。不管是ais数据源含有utc时间还是不包含utc时间,均能有效地去重融合。

本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

附图说明

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:

图1为本发明所述多源ais数据去重融合方法的流程图;

图2为ais接收机的两种数据处理方式示意图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

请参阅图1~图2,本实施例以在长江航道上部署多个ais接收设备组成ais接收网络,对所接收的数据进行融合为例阐述实现方法。在航道部分航段部署多个ais接收设备,通过网络转换等方式可以将ais信息发送到数据中心进行去重融合、解码计算、数据可视化、入库存储等操作。

ais接收设备可以是ais接收机,ais船台,ais岸台等,它们可以是包含或不包含gps的。集成有gps模块的的ais接收设备在输出ais报文时将含有gps时间,该时间可以看做是船舶ais发出的时间;如果ais接收设备没有集成gps,则输出的ais报文中间将不含有时间信息。

如图2所示,ais接收设备有两种处理数据方式:

1、ais接收设备接收到的数据也先可通过计算设备,如计算机等,进行解码等操作后再转发到数据中心存储。

如果ais接收设备是通过计算设备进行解码后再转发到数据中心,则在计算设备上设置一个解码区域,确保相邻ais接收设备间的解码区域不重叠,这样数据中心收到的多源ais数据是不重复的。

2、ais接收设备接收到的ais信息可以直接通过网络转换模块将数据转发到数据中心进行解码、存储,具体包括以下步骤:

(1)如果ais接收设备是通过网络转换模块直接将ais发送到数据中心,则数据中心建立一个ais接收设备的序列号i,该序列号i按ais接收设备的实际部署正整数顺序编号,即,i=1,2,3,...。该序列号i与ais接收设备的ip地址间建立对应关系。按此编号后,最小编号i=1的ais接收设备只与编号为i=2的设备相邻,最大编号i的数据只与编号为i-1的ais设备相邻,其余编号i的ais设备只与i+1和i-1的编号的ais接收设备相邻。

(2)对于第一次到达数据中心的ais消息,将消息写入数据中心的redis缓存,将该ais原始报文字符串设置为redis缓存的key值,为ais报文字符串添加接收时间戳作为redis缓存的value值。考虑到同一条ais消息被多个基站捕获到的时间误差以及网络传输延迟,将ais消息的缓存数据自动过期时间设置为2秒,即缓存存储了2秒钟之内的所有不重复的ais数据,过期后将直接从缓存中删除,以防止缓存中数据过多而导致ais消息比较速度慢。redis缓存可实现自动扩容,不用担心缓存空间满后数据中心宕机。

(3)ais接收设备将接收到的ais报文消息通过网络传输到数据中心,数据中心将每一条从ais接收设备传输过来的ais消息与redis缓存中相邻id编号数据的key值进行比较,如果缓存中存在与之相同的key值,则表明这条ais数据已经被记录或处理过,是一条重复的数据,无需进行后续操作,直接将这条新到达的数据丢弃。如果缓存中不存在与之相同的key值,则说明这条ais消息是第一次到达数据中心,不是重复数据,对其进行计算、存储等操作。

经过上述步骤处理之后,重复冗余的ais消息被筛选滤除,不重复的ais消息被实时处理。

最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1