一种分析非法加油点的方法、装置以及可读存储介质与流程

文档序号:30351782发布日期:2022-06-08 12:56阅读:85来源:国知局
一种分析非法加油点的方法、装置以及可读存储介质与流程

1.本发明涉及加油点分析领域,尤其涉及一种分析非法加油点的方法、装置以及可读存储介质。


背景技术:

2.现有技术对加油点进行分析,是通过对加油状态进行分析,如果距离加油点阈值范围内不存在符合国家标准的加油站,则对该车辆进行跟踪分析,判断该车辆加油后的消耗数据是否满足氮氧化物、pm等排放量设定标准,如不满足则判定该加油点为非法加油点。
3.现有技术的这种通过将油品各项消耗数据和设定标准对比,来判断加油点是否是符合国家标准的加油站的方法,虽然能比较准确地判断出加油站的类型,但是也存在一些不足之处:
4.1)实时分析过程中,油箱液位的瞬时变化可能会造成对结果的误判。
5.2)油品消耗数据的分析指标较多,包括单位里程中燃料的消耗量的增加标准、满足发动机指定的额定功率标准、满足反应剂消耗量标准、满足氮氧化物的排放量标准和满足pm排放量标准,如此多的分析指标必然会导致数据分析效率的低下。
6.3)跟踪分析时效性不确定,具体体现在,当车辆在非法加油点加完油后,油品消耗数据是否会立马发生变化,变化幅度是否较大,这些不确定性也会对结果造成误判。
7.4)可能存在未注册的小作坊价格低廉但油品消耗满足设定标准,同样会导致现有技术对结果造成误判。


技术实现要素:

8.本发明要解决的技术问题在于,针对现有技术的上述准确性以及效率均不高的缺陷,提供一种分析非法加油点的方法、装置以及可读存储介质。
9.本发明解决其技术问题所采用的技术方案是:构造一种分析非法加油点的方法,所述方法包括,顺序执行如下步骤:
10.识别加油点:针对每一个车辆,顺序遍历车辆在过去一段监控时间内的轨迹,识别出车辆处于静止状态的位置点作为目标位置点,获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,并根据油箱液位变化量判断目标位置点是否为疑似加油点;
11.分析非法加油点:针对每一疑似加油点,调用已备案的合法加油站数据,判断以该疑似加油点为基准的预设范围内是否存在合法的加油站,若不存在,则认为该疑似加油点为疑似非法加油点;
12.确认非法加油点:对全部的疑似非法加油点进行聚类分析找到所有的簇,并将每一簇内的任一疑似非法加油点确定为非法加油点。
13.优选地,所述方法还包括,在执行所述识别加油点的步骤之前,执行如下数据预处理步骤:
14.获取每一车辆在过去一段监控时间内的轨迹上的各个位置点的上报数据,每一所
述上报数据包括上报时间、位置点的经纬度、定位状态、油箱液位、速度和点熄火状态;
15.根据定位状态以及经纬度的数据符号对上报数据进行清洗和过滤,去掉无意义的上报数据。
16.优选地,所述的对上报数据进行清洗和过滤,包括:将各个位置点的上报数据按照上报时间的先后排序,滤除定位状态为基站定位和wifi定位的上报数据,仅保留定位状态为卫星定位的上报数据,将经纬度是负数或全零的上报数据筛除。
17.优选地,所述的顺序遍历车辆在过去一段监控时间内的轨迹,识别出车辆处于静止状态的位置点作为目标位置点,具体包括:
18.分析轨迹中各个位置点的速度和点熄火状态,如果位置点对应的速度低于速度阈值且点熄火状态为熄火,则判断该位置点为目标位置点。
19.优选地,所述的获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,并根据油箱液位变化量判断目标位置点是否为疑似加油点,包括:
20.利用一阶差分获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,如果油箱液位变化量超过设定阈值,则判定目标位置点为疑似加油点。
21.优选地,所述的对全部的疑似非法加油点进行聚类分析找到所有的簇,包括:
22.选取一个疑似非法加油点进行标记并将其作为目标点进行如下聚类分析:如果以该目标点为圆心的预设半径范围内的其他疑似非法加油点的数量大于等于数量阈值,则判定以该目标点为圆心的预设半径范围内的所有疑似非法加油点形成一个簇,并将首次形成该簇时簇内除该目标点以外的每个疑似非法加油点以及之后新加入该簇内的每个疑似非法加油点的预设半径范围内的其他疑似非法加油点加入到该簇内,对该簇内的所有疑似非法加油点进行标记;
23.选取下一个未被标记的疑似非法加油点进行标记并将其作为新的目标点进行相同的聚类分析,直至所有的疑似非法加油点均被标记。
24.本发明另一方面还构造了一种分析非法加油点的装置,所述装置包括:
25.识别加油点模块,用于针对每一个车辆,顺序遍历车辆在过去一段监控时间内的轨迹,识别出车辆处于静止状态的位置点作为目标位置点,获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,并根据油箱液位变化量判断目标位置点是否为疑似加油点;
26.分析非法加油点模块,用于针对每一疑似加油点,调用已备案的合法加油站数据,判断以该疑似加油点为基准的预设范围内是否存在合法的加油站,若不存在,则认为该疑似加油点为疑似非法加油点;
27.确认非法加油点模块,用于对全部的疑似非法加油点逐个进行聚类分析,如果分析发现形成一个簇,则将该簇内的任一疑似非法加油点确定为非法加油点。
28.优选地,所述识别加油点模块具体用于:将各个位置点的上报数据按照上报时间的先后排序,分析轨迹中各个位置点的速度和点熄火状态,如果位置点对应的速度低于速度阈值且点熄火状态为熄火,则判断该位置点为目标位置点;以及,利用一阶差分获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,如果油箱液位变化量超过设定阈值,则判定目标位置点为疑似加油点;
29.所述确认非法加油点模块具体用于:选取一个疑似非法加油点进行标记并将其作
为目标点进行如下聚类分析:如果以该目标点为圆心的预设半径范围内的其他疑似非法加油点的数量大于等于数量阈值,则判定以该目标点为圆心的预设半径范围内的所有疑似非法加油点形成一个簇,并将首次形成该簇时簇内除该目标点以外的每个疑似非法加油点以及之后新加入该簇内的每个疑似非法加油点的预设半径范围内的其他疑似非法加油点加入到该簇内,对该簇内的所有疑似非法加油点进行标记;选取下一个未被标记的疑似非法加油点进行标记并将其作为新的目标点进行相同的聚类分析,直至所有的疑似非法加油点均被标记;将每一簇内的任一疑似非法加油点确定为非法加油点。
30.本发明另一方面还构造了一种分析非法加油点的装置,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如前任一项所述的方法的步骤。
31.本发明另一方面还构造了一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如前任一项所述的方法的步骤。
32.本发明的分析非法加油点的方法、装置以及可读存储介质,具有以下有益效果:本发明先通过遍历车辆轨迹,识别出车辆处于静止状态的位置点,并获取该位置点的油箱液位变化量,根据油箱液位变化量判断目标位置点是否为疑似加油点;然后针对每一疑似加油点,调用已备案的合法加油站数据,判断疑似加油点为疑似非法加油点;最后,对全部的疑似非法加油点进行聚类分析找到所有的簇,并将每一簇内的任一疑似非法加油点确定为非法加油点,如此,本发明准确性得到保障,而且无需像现有技术那样分析多个指标,分析效率高。
附图说明
33.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图:
34.图1是本发明实施例一的分析非法加油点的方法的流程图;
35.图2是本发明实施例一的一种较佳实施方式的流程图;
36.图3是聚类分析的原理图;
37.图4是本发明实施例二的一种较佳实施装置的结构示意图。
具体实施方式
38.为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的典型实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
39.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
40.本说明书中使用的“第一”、“第二”等包含序数的术语可用于说明各种构成要素,但是这些构成要素不受这些术语的限定。使用这些术语的目的仅在于将一个构成要素区别
于其他构成要素。例如,在不脱离本发明的权利范围的前提下,第一构成要素可被命名为第二构成要素,类似地,第二构成要素也可以被命名为第一构成要素。
41.本发明总的思路是:首先,针对每一个车辆,顺序遍历车辆在过去一段监控时间内的轨迹,识别出车辆处于静止状态的位置点作为目标位置点,获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,并根据油箱液位变化量判断目标位置点是否为疑似加油点;其次,针对每一疑似加油点,调用已备案的合法加油站数据,判断以该疑似加油点为基准的预设范围内是否存在合法的加油站,若不存在,则认为该疑似加油点为疑似非法加油点;最后,对全部的疑似非法加油点进行聚类分析找到所有的簇,并将每一簇内的任一疑似非法加油点确定为非法加油点。
42.为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本技术技术方案的详细的说明,而不是对本技术技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
43.实施例一
44.本实施例的方法可以是由服务端执行,所有车辆的上报数据会统一在之前上报到服务端中,服务端执行如下方法来分析非法加油点。当然可以为服务端设计具体的软件平台给用户访问,管理员可通过各种终端访问软件平台来实现交互控制,比如管理员通过终端打开网页或者打开app的方式登录软件平台,登录后可以选择要分析的监控时间段,设置相关的参数,比如后文将提及的各种阈值、聚类半径等。可以理解的是,服务端可以是单个的服务器或者一个服务器群组。所述服务器群可以是集中式的或分布式的。当然,还可以是单独配置存储端来存储车辆的上报数据,存储端可以是单个的存储器或者一个存储器群组。服务器可从存储器调取数据执行本发明的方法。
45.参考图1,本实施例的分析非法加油点的方法包括,顺序执行如下步骤:
46.s100、数据预处理:获取每一车辆在过去一段监控时间内的轨迹上的各个位置点的上报数据,根据定位状态以及经纬度的数据符号对上报数据进行清洗和过滤,去掉无意义的上报数据。
47.具体地,每一所述上报数据包括上报时间、位置点的经纬度、定位状态、油箱液位、速度和点熄火状态。油箱液位的数据实际上是一个比例值,代表油量占比。点熄火状态包括熄火状态和点火状态。定位状态包括卫星定位、基站定位和wifi定位数据。
48.该步骤中获取每一车辆在过去一段监控时间内的轨迹上的各个位置点的上报数据,具体是获取上报时间在过去一段监控时间内的上报数据。可以理解的是,过去一段监控时间可以根据需要设定,一般在产品开发时会设置一个默认值,当然,管理员也可以自行设置过去一段监控时间的具体开始和结束时刻,则在该步骤进行数据预处理时,服务端会调取上报时间在管理员设定的开始和结束时刻之间的上报数据。
49.本发明的方法可以基于各种语言实现,本实施例优选采用python语言实现,车辆的上报数据预先存储在mysql数据库中。所以我们可以直接从数据库中调取出所有的车辆的数据,然后根据监控时间的开始和结束时刻再调取车辆的上报数据,再对调取出来的上报数据进行清洗和过滤。
50.其中,所述的对上报数据进行清洗和过滤,包括:针对每一个车辆的上报数据,按
照上报时间的先后排序;由于非定位数据无意义,基站定位和wifi 定位数据可能不太准,所以滤除定位状态为基站定位和wifi定位的上报数据,仅保留定位状态为卫星定位的上报数据;删除车辆误报的无效数据,例如将经纬度是负数或全零的上报数据筛除。
51.s101、识别加油点:针对每一个车辆,顺序遍历车辆在过去一段监控时间内的轨迹,识别出车辆处于静止状态的位置点作为目标位置点,获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,并根据油箱液位变化量判断目标位置点是否为疑似加油点;
52.需要说明的是,本发明在分析时,是以上报数据为基本分析对象,不同车辆的上报数据是独立的,因此即使不同车辆分析出来的目标位置点本质上是一个位置点,但依然是作为两个目标位置点处理。
53.具体地,参考图2,一个具体的实施方式中,本步骤具体包括如下步骤:
54.a1:针对每一个车辆,顺序遍历车辆在过去一段监控时间内的轨迹,分析轨迹中各个位置点的速度和点熄火状态;
55.a2:如果位置点对应的速度低于速度阈值且点熄火状态为熄火,则判断车辆处于静止状态,该位置点为目标位置点。
56.速度阈值是一个趋于零的数值。
57.a3:利用一阶差分获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,如果油箱液位变化量超过设定阈值,则判定目标位置点为疑似加油点。
58.前面提到,各个位置点的上报数据是按照上报时间的先后排序的,因此我们可以利用一阶差分获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量。所谓一阶差分就是将后一个数据减去前一个数据,第一个数据位前面没有数据,则直接减0。
59.设定阈值建议设定为20%。
60.s102、分析非法加油点:针对每一疑似加油点,调用已备案的合法加油站数据,判断以该疑似加油点为基准的预设范围内是否存在合法的加油站,若不存在,则认为该疑似加油点为疑似非法加油点;
61.其中,所述预设范围,是以疑似加油点的经纬度为圆心、设定的误差值为半径的圆圈,比如误差值建议取2千米。
62.具体地,已备案的合法加油站数据可以从百度poi获取,百度poi记录了全国所有已备案且符合国家标准的加油站信息,所以参考图2,一个具体的实施方式中,步骤a4中,调用百度poi判断距离疑似加油点预设范围内是否存在合法的加油站,如果存在,则认为是正常的加油行为导致的油箱液位变化,反之则认为该疑似加油点为疑似非法加油点。
63.s103、确认非法加油点:对全部的疑似非法加油点进行聚类分析找到所有的簇,并将每一簇内的任一疑似非法加油点确定为非法加油点。
64.具体地,参考图2,一个具体的实施方式中,本步骤具体包括如下步骤:
65.a5:选取一个疑似非法加油点进行标记并将其作为目标点进行如下聚类分析:如果以该目标点为圆心的预设半径范围内的其他疑似非法加油点的数量大于等于数量阈值,则判定以该目标点为圆心的预设半径范围内的所有疑似非法加油点形成一个簇,目标点即为该簇的核心点,在找到簇之后,再对该簇里面的所有点进行扩散,扩散具体是:一方面,将首次形成该簇时簇内除该目标点以外的每个疑似非法加油点的预设半径范围内的其他疑
似非法加油点加入到该簇内,另一方面,对之后新加入该簇内的每个疑似非法加油点的预设半径范围内的其他疑似非法加油点也加入到该簇内,最后将该簇内的所有疑似非法加油点进行标记。
66.可以理解的是,对疑似非法加油点进行标记的目的,为了在后续步骤a6 中选择新的目标点时,不再考虑已经被标记的点。
67.dbscan算法是基于密度的聚类算法,能够把具有足够高密度的区域划分为簇。dbscan需要两个参数,半径eps(即上述提到的预设半径)和包含最少点数minpts(即上述提到的数量阈值),即如果以当前点为圆心,eps为半径的圆内点的数量大于等于minpts,则当前点和附近的minpts个点形成一个簇。由于dbscan采用了欧氏距离进行计算,所以在聚类分析时,需要将疑似非法加油点的经纬度转换为平面直角坐标系上的点,再利用dbscan进行聚类,如果存在某些疑似非法加油点能通过该聚类算法行成一个簇,说明该预设半径区域存在疑似非法加油点,反之则属于误判。
68.a6:选取下一个未被标记的疑似非法加油点进行标记并将其作为新的目标点进行相同的聚类分析,直至所有的疑似非法加油点均被标记。
69.a7:将每一簇内的任一疑似非法加油点确定为非法加油点。
70.参考图3,假设a1、a2、a3、a4是a车辆数据分析出来的疑似非法加油点;b1、b2是b车辆数据分析出来的疑似非法加油点,聚类分析的minpts=2。则需要对a1、a2、a3、a4、b1、b2、b3逐个进行聚类分析。先对a1进行聚类分析,对应的分析范围是a1为圆心的圈q-a1,因a1、a2、b1三个点在圈q-a1 内,达到大于等于minpts的要求,因此认为a1、a2、b1三个点形成一个簇,将首次形成该簇时簇内除a1点以外的每个疑似非法加油点即a2、b1的预设半径范围内的其他疑似非法加油点加入到该簇内,即再分别找一下a2为圆心的圈q-a2和b1为圆心的圈q-b1,发现圈q-a2并无新的点,圈q-b1内找到新的点b2,于是将b2加入簇内,然后再将新加入该簇内的每个疑似非法加油点即b2的预设半径范围内的其他疑似非法加油点加入到该簇内,发现圈q-b2 并无新的点,于是,最终形成的簇是a1、a2、b1、b2。则将a1、a2、b1、b2 全部标记为已访问。再对下一个没有标记已访问的点a3进行聚类分析,发现圈q-a3的点没有成簇,将a3标记为已访问,再对下一个没有标记已访问的点 a4进行聚类分析,发现圈q-a4的点没有成簇,将a4标记为已访问,至此全部的点都被标记为已访问,所以接下来就对之前找到的每一个簇,从簇内随机挑选一个疑似非法加油点确定为非法加油点,也就是说簇的数量即对应非法加油点的数量。比如说本次我们只找到a1、a2、b1、b2这一个簇,因此,可以随意从a1、a2、b1、b2中挑选一个点作为非法加油点。
71.基于以上方法,本实施例通过聚类分析提高对非法加油点分析的准确性,而且本发明无需像现有技术那样分析多个指标,分析效率高。
72.实施例二
73.参考图4,基于同一方构思,本实施例公开了一种分析非法加油点的装置,所述装置包括:数据预处理模块200、识别加油点模块201、分析非法加油点模块202、确认非法加油点模块203。
74.数据预处理模块200,用于获取每一车辆在过去一段监控时间内的轨迹上的各个位置点的上报数据,根据定位状态以及经纬度的数据符号对上报数据进行清洗和过滤,去掉无意义的上报数据。更多内容详见上述实施例一的步骤 s100部分。
75.识别加油点模块201,用于针对每一个车辆,顺序遍历车辆在过去一段监控时间内的轨迹,识别出车辆处于静止状态的位置点作为目标位置点,获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,并根据油箱液位变化量判断目标位置点是否为疑似加油点。
76.具体地,识别加油点模块201将各个位置点的上报数据按照上报时间的先后排序,分析轨迹中各个位置点的速度和点熄火状态,如果位置点对应的速度低于速度阈值且点熄火状态为熄火,则判断该位置点为目标位置点;以及,利用一阶差分获取车辆在所述目标位置点处相对前一个位置点的油箱液位变化量,如果油箱液位变化量超过设定阈值,则判定目标位置点为疑似加油点。更多内容详见上述实施例一的步骤s101部分。
77.分析非法加油点模块202,用于针对每一疑似加油点,调用已备案的合法加油站数据,判断以该疑似加油点为基准的预设范围内是否存在合法的加油站,若不存在,则认为该疑似加油点为疑似非法加油点。更多内容详见上述实施例一的步骤s102部分。
78.确认非法加油点模块203,用于对全部的疑似非法加油点逐个进行聚类分析,如果分析发现形成一个簇,则将该簇内的任一疑似非法加油点确定为非法加油点。
79.具体地,确认非法加油点模块203具体用于:选取一个疑似非法加油点进行标记并将其作为目标点进行如下聚类分析:如果以该目标点为圆心的预设半径范围内的其他疑似非法加油点的数量大于等于数量阈值,则判定以该目标点为圆心的预设半径范围内的所有疑似非法加油点形成一个簇,并将首次形成该簇时簇内除该目标点以外的每个疑似非法加油点以及之后新加入该簇内的每个疑似非法加油点的预设半径范围内的其他疑似非法加油点加入到该簇内,对该簇内的所有疑似非法加油点进行标记;选取下一个未被标记的疑似非法加油点进行标记并将其作为新的目标点进行相同的聚类分析,直至所有的疑似非法加油点均被标记;最后,将每一簇内的任一疑似非法加油点确定为非法加油点。更多内容详见上述实施例一的步骤s103部分。
80.本发明实施例所述装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
81.上述描述涉及各种模块。这些模块通常包括硬件和/或硬件与软件的组合,这些模块还可以包括包含指令的计算机可读介质,当处理器执行这些指令时,就可以执行本发明的各种功能性特点。相应地,除非明确要求,本发明的范围不受实施例中明确提到的模块中的特定硬件和/或软件特性的限制。作为非限制性例子,本发明在实施例中可以由一种或多种处理器执行软件指令。需要指出的是,上文对各种模块的描述中,分割成这些模块,是为了说明清楚。然而,在实际实施中,各种模块的界限可以是模糊的。例如,本文中的任意或所有功能性模块可以共享各种硬件和/或软件元件。又例如,本文中的任何和/或所有功能模块可以由共有的处理器执行软件指令来全部或部分实施。另外,由一个或多个处理器执行的各种软件子模块可以在各种软件模块间共享。相应地,除非明确要求,本发明的范围不受各种硬件和/或软件元件间强制性界限的限制。
82.实施例三
83.基于同一发明构思,本发明实施例还提供了一种分析非法加油点的装置,包括处理器和存储器,所述存储器存储有计算机程序,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如上实施例所述方法的步骤,具体实现过程可参阅上述方法实施
例的描述,此处不再赘述。
84.实施例四
85.基于同一发明构思,本发明实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如上实施例所述方法的步骤,具体实现过程可参阅上述方法实施例的描述,此处不再赘述。
86.综上所述,本发明的分析非法加油点的方法、装置以及可读存储介质,具有以下有益效果:本发明先通过遍历车辆轨迹,识别出车辆处于静止状态的位置点,并获取该位置点的油箱液位变化量,根据油箱液位变化量判断目标位置点是否为疑似加油点;然后针对每一疑似加油点,调用已备案的合法加油站数据,判断疑似加油点为疑似非法加油点;最后,对全部的疑似非法加油点进行聚类分析找到所有的簇,并将每一簇内的任一疑似非法加油点确定为非法加油点,如此,本发明准确性得到保障,而且无需像现有技术那样分析多个指标,分析效率高。
87.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1