本发明涉及海上防控技术领域,具体涉及一种判定船舶越界的方法及装置。
背景技术:
电子围栏是一种先进的周界防盗报警系统,它由电子围栏主机和前端探测围栏组成。其设置在海域上时,可对过往的船舶进行实时监控,一旦监测到有船舶越界时会触发报警。
在监控船舶闯入电子围栏发出报警的过程中,上报的船舶的卫星位置数据会存在一定的间隔时间。由于卫星位置数据上报的频率比较低,存在同一条船舶两个间隔的位置数据都在电子围栏外,但实际上该船舶在此时间段内已经闯入并闯出电子围栏的情况,即船舶存在越界行为。在此种情况下,并不能及时地触发报警,给监控工作带来不便。
需要注意的是,本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
技术实现要素:
本发明实施例提供一种判定船舶越界的方法,以解决现有技术中由于卫星位置数据上报的频率较低而存在无法捕捉船舶是否越过电子围栏的问题。
第一方面,本发明实施例提供一种判定船舶越界的方法,所述方法包括:
获取船舶的第一船舶坐标点和第二船舶坐标点,以及采用多个围栏坐标点标记的电子围栏区域;所述第一船舶坐标点和所述第二船舶坐标点包括航行方向和航行速度;
根据所述第一船舶坐标点和所述第二船舶坐标点的连线确定所述船舶的航向线,并判断所述航向线是否与所述电子围栏区域相交;
若所述航向线与所述电子围栏区域不相交,则确定所述船舶未越过所述电子围栏区域。
作为本发明第一方面的优选方式,所述方法还包括:
若所述航向线与所述电子围栏区域相交,则分别沿所述第一船舶坐标点的航行方向和所述第二船舶坐标点的航行方向作延长线并得到交点;
判断所述第一船舶坐标点的延长线和所述第二船舶坐标点的延长线是否与所述电子围栏区域相交;
若所述第一船舶坐标点的延长线或所述第二船舶坐标点的延长线与所述电子围栏区域相交,则确定所述船舶越过所述电子围栏区域。
作为本发明第一方面的优选方式,所述方法还包括:
若所述第一船舶坐标点的延长线或所述第二船舶坐标点的延长线与所述电子围栏区域不相交,则分别计算所述第一船舶坐标点与所述交点的第一距离,以及所述第二船舶坐标点与所述交点的第二距离;
获取所述船舶在所述第一船舶坐标点和所述第二船舶坐标点的时间差内的预计航行距离;
判断所述预计航行距离是否小于等于所述第一距离和所述第二距离之和;
若是,则确定所述船舶越过所述电子围栏区域;否则,确定所述船舶未越过所述电子围栏区域。
作为本发明第一方面的优选方式,所述获取所述船舶在所述第一船舶坐标点和所述第二船舶坐标点的时间差内的预计航行距离包括:
获取所述第一船舶坐标点和所述第二船舶坐标点的时间差;
根据所述第一船舶坐标点的航行速度和所述第二船舶坐标点的航行速度,获取所述船舶的平均航行速度;
根据所述时间差和所述平均航行速度,获取所述船舶在所述时间差内的预计航行距离。
第二方面,本发明实施例提供一种判定船舶越界的装置,所述装置包括:
坐标获取单元,用于获取船舶的第一船舶坐标点和第二船舶坐标点,以及采用多个围栏坐标点标记的电子围栏区域;所述第一船舶坐标点和所述第二船舶坐标点包括航行方向和航行速度;
第一判断单元,用于根据所述第一船舶坐标点和所述第二船舶坐标点的连线确定所述船舶的航向线,并判断所述航向线是否与所述电子围栏区域相交;
第一确定单元,用于当所述航向线与所述电子围栏区域不相交时,确定所述船舶未越过所述电子围栏区域。
作为本发明第二方面的优选方式,所述装置还包括:
延长线获取单元,用于当所述航向线与所述电子围栏区域相交时,分别沿所述第一船舶坐标点的航行方向和所述第二船舶坐标点的航行方向作延长线并得到交点;
第二判断单元,用于判断所述第一船舶坐标点的延长线和所述第二船舶坐标点的延长线是否与所述电子围栏区域相交;
第二确定单元,用于当所述第一船舶坐标点的延长线或所述第二船舶坐标点的延长线与所述电子围栏区域相交时,确定所述船舶越过所述电子围栏区域。
作为本发明第二方面的优选方式,所述装置还包括:
距离获取单元,用于当所述第一船舶坐标点的延长线或所述第二船舶坐标点的延长线与所述电子围栏区域不相交时,分别计算所述第一船舶坐标点与所述交点的第一距离,以及所述第二船舶坐标点与所述交点的第二距离;
预计距离获取单元,用于获取所述船舶在所述第一船舶坐标点和所述第二船舶坐标点的时间差内的预计航行距离;
第三判断单元,用于判断所述预计航行距离是否小于等于所述第一距离和所述第二距离之和;
第三确定单元,用于当所述预计航行距离是否小于等于所述第一距离和所述第二距离之和时,确定所述船舶越过所述电子围栏区域;否则,确定所述船舶未越过所述电子围栏区域。
作为本发明第二方面的优选方式,所述预计距离获取单元具体用于:
获取所述第一船舶坐标点和所述第二船舶坐标点的时间差;
根据所述第一船舶坐标点的航行速度和所述第二船舶坐标点的航行速度,获取所述船舶的平均航行速度;
根据所述时间差和所述平均航行速度,获取所述船舶在所述时间差内的预计航行距离。
第三方面,本发明实施例提供一种计算设备,包括处理器和存储器,其中所述存储器内存储有执行指令,所述处理器读取所述存储器内的执行指令用于执行如上述判定船舶越界的方法所述的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,包含计算机执行指令,所述计算机执行指令被用于执行如上述判定船舶越界的方法所述的步骤。
本发明实施例提供的判定船舶越界的方法及装置,在卫星位置数据上报的频率比较低的情况下,先使用射线法将船舶的两个坐标点连线,判断两个点是否在电子围栏形成的多边形区域内,当该连线均在多边形区域外时,则可确定船舶未经过该多边形区域;当该连线与多边形区域存在交点时,则需要进一步判断船舶是否经过该多边形区域,从而解决了现有技术中由于卫星位置数据上报的频率较低而存在无法捕捉船舶是否越过电子围栏的问题,能够及时地发现船舶是否存在越界行为,给监控工作带来较大方便。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种判定船舶越界的方法的流程示意图;
图2为图1中所示方法中电子围栏区域以及第一船舶坐标点的延长线和第二船舶坐标点的延长线相交的示意图;
图3为本发明实施例提供的一种判定船舶越界的方法的另一流程示意图;
图4为本发明实施例提供的一种判定船舶越界的装置的结构示意图;
图5为本发明实施例提供的一种计算设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
参照图1所示,本发明实施例公开了一种判定船舶越界的方法,所述方法主要包括如下步骤:
101、获取船舶的第一船舶坐标点和第二船舶坐标点,以及采用多个围栏坐标点标记的电子围栏区域;第一船舶坐标点和第二船舶坐标点包括航行方向和航行速度;
102、根据第一船舶坐标点和第二船舶坐标点的连线确定船舶的航向线,并判断航向线是否与电子围栏区域相交;
103、若航向线与电子围栏区域不相交,则确定船舶未越过电子围栏区域。
在监控船舶闯入电子围栏报警的过程中,由于卫星位置数据上报的频率比较低,存在同一条船舶在两个间隔的位置坐标点都在电子围栏外,但实际上船舶在此时间内已经闯入并闯出过该电子围栏。针对这类无法捕捉船舶是否闯入电子围栏的问题,应构建对应的算法来判定船舶是否闯过电子围栏形成的多边形区域内。
步骤101中,预先在地图上对电子围栏形成的多边形区域进行标记,该多边形区域用多个围栏坐标点vi来标记,该坐标点采用平面直角坐标系来表示,多边形区域采用下式表示:
z=[v1,v2,……vn],其中vi=(x,y),i=1~n。
示例性地,参照图2所示,图中的多个坐标点v1、v2、v3、v4和v5形成一个五边形,该五边形区域即为电子围栏区域。
船舶在一定间隔时间内的两个坐标点,即第一船舶坐标点pt1和第二船舶坐标点pt2,通过卫星定位系统获得,该坐标点采用球面经纬度坐标系来表示。其中,第一船舶坐标点和第二船舶坐标点的参数中除了经度和纬度位置信息外,还需要包括航行方向和航行速度。
此外,上述的间隔时间是由卫星定位系统预先设置的。
步骤102中,采用射线法,作第一船舶坐标点和第二船舶坐标点的连线,根据该连线来确定船舶的航向线。进一步判断该航向线是否与电子围栏区域相交,即判断该航向线是否与多边形区域存在交点。
步骤103中,当判断出该航向线与电子围栏区域不相交,即该航向线与多边形区域不存在交点,那么此时可以直接确定船舶从pt1点到pt2点的过程中没有驶入过多边形区域,即未越过电子围栏区域。
进一步地,当判断出该航向线与所述电子围栏区域相交时,在步骤103之后,该方法还包括如下步骤:
104、若航向线与电子围栏区域相交,则分别沿第一船舶坐标点的航行方向和第二船舶坐标点的航行方向作延长线并得到交点;
105、判断第一船舶坐标点的延长线和第二船舶坐标点的延长线是否与电子围栏区域相交;
106、若第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域相交,则确定船舶越过电子围栏区域。
步骤104中,若航向线与电子围栏区域相交时,则说明船舶有可能驶入过电子围栏形成的多边形区域中,需要进行进一步的判断。
由于第一船舶坐标点pt1和第二船舶坐标点pt2均是采用球面经纬度坐标系表示的,需要先将其转换成平面直角坐标系下表示的坐标。
进行坐标系转换时,需要将坐标点中的经度lon和纬度lat对应换算为x坐标值和y坐标值,参照下式所示:
x=n×cosb0×log(tan(pi/4+b/2)×pow((1-e×sin(lat×pi/180))/(1+e×sin(lat×pi/180)),e/2));
y=n×cosb0×(lon×pi/180);
其中,pi为圆周率,取3.1415926;
b0=30×pi/180;
b=lat×pi/180;
e=0.000045420816532046692727888569;
e2=0.00004481472364144682862615441664;
n=(6399593.6258039771)/(1+(e2×cosb0)2)。
通过上式将第一船舶坐标点pt1和第二船舶坐标点pt2的坐标转换成平面直角坐标系下表示的坐标后,第一船舶坐标点pt1=(x1,y1,d1,v1),第二船舶坐标点pt2=(x2,y2,d2,v2),其中d1和d2表示船舶此时的航行方向,取值范围为0~360°,定义正北方向为0°,而v1和v2表示船舶此时的航行速度。
沿第一船舶坐标点的航行方向d1作延长线,沿第二船舶坐标点的航行方向d2作延长线,两个延长线相交于一点,得到一个交点t(xt,yt)。
步骤105中,该步骤中进一步判断第一船舶坐标点的延长线和第二船舶坐标点的延长线中的任意一条是否与电子围栏区域形成的多边形区域相交,通过是否相交来判断船舶进入多边形区域的可能性。
步骤106中,当第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域形成的多边形区域相交时,说明船舶驶入过电子围栏形成的多边形区域中的可能性极大,可以确定船舶越过电子围栏区域。
进一步地,当判断出第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域不相交时,在步骤106之后,该方法还包括如下步骤:
107、若第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域不相交,则分别计算第一船舶坐标点与交点的第一距离,以及第二船舶坐标点与交点的第二距离;
108、获取船舶在第一船舶坐标点和第二船舶坐标点的时间差内的预计航行距离;
109、判断预计航行距离是否小于等于第一距离和第二距离之和;
110、若是,则确定船舶越过电子围栏区域;否则,确定船舶未越过电子围栏区域。
步骤107中,若第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域不相交时,无法确定船舶驶入过电子围栏形成的多边形区域中的可能性较大,因此需要进行进一步的判断。
利用欧式距离计算方法,分别计算第一船舶坐标点与交点的第一距离st1,以及第二船舶坐标点与交点的第二距离st2。
其中,
步骤108中,从卫星导航系统处获取其上报船舶的卫星位置数据的时刻,即上报第一船舶坐标点时的时刻t1和上报第二船舶坐标点时的时刻t2,然后计算时间差δt=t2-t1。
根据该时间差,进一步计算船舶在该时间差内的预计航行距离s。
具体地,在一种可能的实现方式中,步骤108可按照如下步骤进行:
1081、获取第一船舶坐标点和第二船舶坐标点的时间差。
该步骤中,获取卫星导航系统处上报第一船舶坐标点时的时刻t1和上报第二船舶坐标点时的时刻t2,然后计算时间差δt=t2-t1。
1082、根据第一船舶坐标点的航行速度和第二船舶坐标点的航行速度,获取船舶的平均航行速度。
该步骤中,先根据第一船舶坐标点的航行速度和第二船舶坐标点的航行速度,计算船舶在该间隔时间内的平均航行速度
1083、根据时间差和平均航行速度,获取船舶在时间差内的预计航行距离。
该步骤中,根据上述步骤中得到的时间差和平均航行速度,计算船舶在该时间差内的预计航行距离s=δt·vavg。
步骤109中,先计算第一距离和第二距离的和d=s1t+st2,然后将其与预计航行距离s进行比较,如果预计航行距离s小于等于第一距离和第二距离的和d,则可以判断船舶进入电子围栏形成的多边形区域的可能性较大。
步骤110中,若预计航行距离小于等于第一距离和第二距离的和,则判断船舶进入电子围栏形成的多边形区域的可能性较大,确定该船舶越过电子围栏区域。若预计航行距离大于第一距离和第二距离的和,则判断船舶进入电子围栏形成的多边形区域的可能性较小,确定该船舶未越过电子围栏区域。
综上所述,本发明实施例提供的判定船舶越界的方法,在卫星位置数据上报的频率比较低的情况下,先使用射线法将船舶的两个坐标点连线,判断两个点是否在电子围栏形成的多边形区域内,当该连线均在多边形区域外时,则可确定船舶未经过该多边形区域;当该连线与多边形区域存在交点时,则需要进一步判断船舶是否经过该多边形区域,从而解决了现有技术中由于卫星位置数据上报的频率较低而存在无法捕捉船舶是否越过电子围栏的问题,能够及时地发现船舶是否存在越界行为,给监控工作带来较大方便。
参照图3所示,图3示出了一种判定船舶越界的方法的具体流程。通过以上过程,使用射线法将两个船舶坐标点进行连线,判断两个坐标点是否在电子围栏形成的多边形区域内。当结果在多边形区域外时,再将两个船舶坐标点作延长线,得到交点后,进行坐标转换工作,计算两个坐标点到交点的距离之和与在时间差内的预计航行距离做比较,估计该时间差内船舶是否经过该多边形区域。
需要说明的是,对于上述方法的实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明所必须的。
参照图4所示,基于同一发明构思,本发明实施例提供一种判定船舶越界的装置,该装置主要包括:
坐标获取单元401,用于获取船舶的第一船舶坐标点和第二船舶坐标点,以及采用多个围栏坐标点标记的电子围栏区域;第一船舶坐标点和第二船舶坐标点包括航行方向和航行速度;
第一判断单元402,用于根据第一船舶坐标点和第二船舶坐标点的连线确定船舶的航向线,并判断航向线是否与电子围栏区域相交;
第一确定单元403,用于当航向线与电子围栏区域不相交时,确定船舶未越过电子围栏区域。
优选地,所述装置还包括:
延长线获取单元404,用于当航向线与电子围栏区域相交时,分别沿第一船舶坐标点的航行方向和第二船舶坐标点的航行方向作延长线并得到交点;
第二判断单元405,用于判断第一船舶坐标点的延长线和第二船舶坐标点的延长线是否与电子围栏区域相交;
第二确定单元406,用于当第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域相交时,确定船舶越过电子围栏区域。
优选地,所述装置还包括:
距离获取单元407,用于当第一船舶坐标点的延长线或第二船舶坐标点的延长线与电子围栏区域不相交时,分别计算第一船舶坐标点与交点的第一距离,以及第二船舶坐标点与交点的第二距离;
预计距离获取单元408,用于获取船舶在第一船舶坐标点和第二船舶坐标点的时间差内的预计航行距离;
第三判断单元409,用于判断预计航行距离是否小于等于第一距离和第二距离之和;
第三确定单元410,用于当预计航行距离是否小于等于第一距离和第二距离之和时,确定船舶越过电子围栏区域;否则,确定船舶未越过电子围栏区域。
优选地,所述预计距离获取单元408具体用于:
获取第一船舶坐标点和第二船舶坐标点的时间差;
根据第一船舶坐标点的航行速度和第二船舶坐标点的航行速度,获取船舶的平均航行速度;
根据时间差和平均航行速度,获取船舶在时间差内的预计航行距离。
综上所述,本发明实施例提供的判定船舶越界的装置,在卫星位置数据上报的频率比较低的情况下,先使用射线法将船舶的两个坐标点连线,判断两个点是否在电子围栏形成的多边形区域内,当该连线均在多边形区域外时,则可确定船舶未经过该多边形区域;当该连线与多边形区域存在交点时,则需要进一步判断船舶是否经过该多边形区域,从而解决了现有技术中由于卫星位置数据上报的频率较低而存在无法捕捉船舶是否越过电子围栏的问题,能够及时地发现船舶是否存在越界行为,给监控工作带来较大方便。
应当理解,以上一种判定船舶越界的装置包括的单元仅为根据该装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例提供的一种判定船舶越界的装置所实现的功能与上述实施例提供的一种判定船舶越界的方法一一对应,对于该装置所实现的更为详细的处理流程,在上述方法实施例一中已做详细描述,此处不再详细描述。
参照图5所示,基于同一发明构思,本发明实施例提供一种计算设备,该计算设备主要包括处理器51和存储器52,其中存储器52内存储有执行指令。该处理器51读取存储器52内的执行指令用于执行上述判定船舶越界的方法任一个实施例中所述的步骤。或者,该处理器51读取存储器52内的执行指令用于实现上述判定船舶越界的装置任一个实施例中各单元的功能。
图5为本发明实施例提供的计算设备的一种结构示意图,如图5所示,该计算设备包括处理器51、存储器52和收发器53;其中,处理器51、存储器52和收发器53通过总线54相互连接。
存储器52用于存储程序;具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器52可以包括易失性存储器(volatilememory),例如随机存取存储器(random-accessmemory,简称ram);存储器52也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flashmemory),硬盘(harddiskdrive,简称hdd)或固态硬盘(solid-statedrive,简称ssd);存储器52还可以包括上述种类的存储器的组合。
存储器52存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
总线54可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器51可以是中央处理器(centralprocessingunit,简称cpu),网络处理器(networkprocessor,简称np)或者cpu和np的组合。还可以是硬件芯片。上述硬件芯片可以是专用集成电路(application-specificintegratedcircuit,简称asic),可编程逻辑器件(programmablelogicdevice,简称pld)或其组合。上述pld可以是复杂可编程逻辑器件(complexprogrammablelogicdevice,简称cpld),现场可编程逻辑门阵列(fieldprogrammablegatearray,简称fpga),通用阵列逻辑(genericarraylogic,简称gal)或其任意组合。
本发明实施例还提供一种计算机可读存储介质,包含计算机执行指令,所述计算机执行指令被用于执行上述判定船舶越界的方法任一个实施例中所述的步骤。或者,所述计算机执行指令被用于执行上述判定船舶越界的装置实施例中各单元的功能。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。