CN111812689A - 基于gps轨迹的用户行为分析方法、装置、电子设备及介质 - Google Patents
基于gps轨迹的用户行为分析方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN111812689A CN111812689A CN202010720940.3A CN202010720940A CN111812689A CN 111812689 A CN111812689 A CN 111812689A CN 202010720940 A CN202010720940 A CN 202010720940A CN 111812689 A CN111812689 A CN 111812689A
- Authority
- CN
- China
- Prior art keywords
- gps positioning
- target position
- storage queue
- gps
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/393—Trajectory determination or predictive tracking, e.g. Kalman filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Abstract
本发明涉及大数据,揭露一种基于GPS轨迹的用户行为分析方法,包括:依次计算GPS定位点序列中对应的GPS定位点与目标位置点存储队列队头的GPS定位点之间的第一距离,当第一距离小于第一阈值时,将所述GPS定位点存储至目标位置点存储队列,当所述第一距离大于第一阈值,且目标位置点存储队列中的GPS定位点数量大于第二阈值时,将目标位置点存储队列中的GPS定位点对应的地理区域视为所述指定用户的停留区域。本发明还涉及区块链技术,用户历史GPS轨迹信息存储于区块链中。本发明可提高用户停留区域识别的准确性和识别效率。
Description
技术领域
本发明涉及大数据处理,尤其涉及一种基于GPS轨迹的用户行为分析方法、装置、电子设备及介质。
背景技术
随着GPS技术在移动设备上的普及,对目标对象的GPS轨迹的分析在生活各方面的应用越来越多,例如,通过GPS轨迹研究目标对象(例如,人、车辆、动物)的行为特性、活动规律、兴趣偏好,为基于位置的服务(例如,兴趣点标注)、城市规划(例如,路线优化)、环境保护(例如,候鸟栖息地监测)等提供支持。
而识别GPS轨迹中的停留区域是GPS轨迹分析中的一个重要课题,例如,通过分析用户的停留区域(某商场、旅游景点等),以对用户推荐基于位置的服务。当前通常通过聚类算法和多次遍历法来识别GPS轨迹中的停留区域,聚类算法复杂度较高,且只考虑了空间维度,未考虑时间维度,导致识别准确度不高;多次遍历法需多次遍历GPS轨迹信息(第一次遍历时计算相邻GPS定位点的距离和速度,第二次遍历删除高速GPS定位点,第三次遍历对GPS轨迹进行切分,得到疑似停留区域),再从疑似停留区域中找出目标停留区域并确定目标停留区域的坐标,识别效率较低。因此,亟需一种基于GPS轨迹的用户行为分析方法,以提高用户停留区域的识别准确性和识别效率。
发明内容
鉴于以上内容,有必要提供一种基于GPS轨迹的用户行为分析方法,旨在提高用户停留区域的识别准确性和识别效率。
本发明提供的基于GPS轨迹的用户行为分析方法,包括:
响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列;
创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头;
从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
可选的,所述基于所述第一距离确定所述指定用户的停留区域包括:
当所述第一距离小于第一阈值时,将所读取的所述GPS定位点存储至所述目标位置点存储队列,当所述第一距离大于第一阈值时,判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值;
当所述目标位置点存储队列中的GPS定位点的数量大于第二阈值时,将所述目标位置点存储队列中的GPS定位点对应的地理区域视为所述指定用户的停留区域。
可选的,所述方法在判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值之后还包括:
若所述目标位置点存储队列中的GPS定位点的数量小于第二阈值,则将所述目标位置点存储队列队头的GPS定位点删除,将所述目标位置点存储队列中剩余的GPS定位点向所述队头位置移动一位,得到新的队头GPS定位点,返回读取所述GPS定位点序列中的下一个GPS定位点。
可选的,所述计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间包括:
获取所述停留区域对应的目标位置点存储队列中的各个GPS定位点的位置坐标和时间戳,将所述各个GPS定位点的位置坐标的均值作为所述停留区域的坐标,将所述目标位置点存储队列队尾的GPS定位点与队头的GPS定位点的时间戳的差值作为所述指定用户在所述停留区域的停留时间。
可选的,所述方法在计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间后还包括:
判断所述GPS定位点序列中是否有未读取的GPS定位点;
若有,将所述目标位置点存储队列清空,将所述GPS定位点序列中与所述目标位置点存储队列队头的GPS定位点之间的第一距离大于第一阈值的GPS定位点存储至已清空的目标位置点存储队列的队头;
依次计算所述GPS定位点序列中未读取的GPS定位点与所述已清空的目标位置点存储队列的队头的GPS定位点之间的第二距离,基于所述第二距离确定所述指定用户的另一个停留区域,遍历完所述GPS定位点序列中的所有GPS定位点,得到所述指定用户的多个停留区域。
可选的,所述方法在得到所述指定用户的多个停留区域之后还包括:
分别计算所述多个停留区域中各个停留区域的坐标与所述指定用户对应的标准停留坐标集合中的每个标准停留坐标的差值绝对值,若所述差值绝对值大于第三阈值,则将对应的停留区域作为异常停留区域,并发出预警信息。
可选的,所述方法在得到所述指定用户的多个停留区域之后还包括:
若所述指定用户的停留区域的数量大于第四阈值,则向所述客户端发送预警信息。
为了解决上述问题,本发明还提供一种用户行为分析装置,所述装置包括:
获取模块,用于响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列;
创建模块,用于创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头;
读取模块,用于从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
计算模块,用于基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述基于GPS轨迹的用户行为分析方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有用户行为分析程序,所述用户行为分析程序可被一个或者多个处理器执行,以实现上述基于GPS轨迹的用户行为分析方法。
相较现有技术,本发明首先将指定用户的GPS定位点序列的第一个GPS定位点存储至目标位置点存储队列的队头,依次计算GPS定位点序列的GPS定位点与目标位置点存储队列队头的GPS定位点之间的第一距离,当所述第一距离小于第一阈值时,将所述GPS定位点存储至目标位置点存储队列,相较于现有技术中将相邻GPS定位点之间的距离与第一阈值进行比对,此步骤可识别出原地绕圈这类停留行为,识别准确度更高;然后,当所述第一距离大于第一阈值时,判断目标位置点存储队列中GPS定位点的数量是否大于第二阈值,当目标位置点存储队列中的GPS定位点数量大于第二阈值时,将目标位置点存储队列中的GPS定位点对应的地理区域视为指定用户的停留区域,此步骤的目的是剔除GPS定位点序列中临时停留的GPS定位点,识别真正的停留区域。本发明计算量小,算法简单,识别准确度高,故而本发明提高了用户停留区域的识别准确性和识别效率。
附图说明
图1为本发明一实施例提供的基于GPS轨迹的用户行为分析方法的流程示意图;
图2为本发明一实施例提供的用户行为分析装置的模块示意图;
图3为本发明一实施例提供的实现基于GPS轨迹的用户行为分析方法的电子设备的结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种基于GPS轨迹的用户行为分析方法。参照图1所示,为本发明一实施例提供的基于GPS轨迹的用户行为分析方法的流程示意图。该方法可以由一个电子设备执行,该电子设备可以由软件和/或硬件实现。
本实施例中,基于GPS轨迹的用户行为分析方法包括:
S1、响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列。
所述GPS轨迹信息包括各个GPS定位点的位置坐标(经纬度)、时间戳。
本实施例中,所述GPS轨迹信息是由GPS打点设备(例如,手持终端E手持、车载GPS)按照预设时间间隔(例如,1秒或10秒)打点生成的。需要强调的是,为进一步保证上述历史GPS轨迹信息的私密和安全性,上述历史GPS轨迹信息还可以存储于一区块链的节点中。
S2、创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头。
所述目标位置点存储队列满足先进先出的原则,第一个进入的元素(元素相当于本实施例中的GPS定位点)位于队头,最后一个进入的元素位于队尾,且删除元素时只能删除队头的元素,添加元素时只能在队尾添加元素。本实施例根据队列的上述特性,实现目标位置点存储队列的动态收缩和扩张。
S3、从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
S4、基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
本实施例中,所述基于所述第一距离确定所述指定用户的停留区域包括:
A1、当所述第一距离小于第一阈值时,将所读取的所述GPS定位点存储至所述目标位置点存储队列,当所述第一距离大于第一阈值时,判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值;
A2、当所述目标位置点存储队列中的GPS定位点的数量大于第二阈值时,将所述目标位置点存储队列中的GPS定位点对应的地理区域视为所述指定用户的停留区域。
本实施例中,根据GPS定位点的位置坐标来计算GPS定位点序列中的GPS定位点与目标位置点存储队列队头的GPS定位点之间的第一距离;并根据所述指定用户的出行方式设置第一阈值,以用户为步行出行、且GPS打点设备是按照每分钟打一个GPS定位点为例,将第一阈值设置为10米(正常情况下,一分钟可步行80米)。
例如,将指定用户的GPS定位点序列中的第1个GPS定位点存储至目标位置点存储队列的队头,若GPS定位点序列中的第2个GPS定位点与目标位置点存储队列的队头的GPS定位点之间的距离小于10米,可认为该指定用户当前处于停留状态,则将第2个GPS定位点存储至目标位置点存储队列中,再计算GPS定位点序列中的第3个GPS定位点与目标位置点存储队列队头的GPS定位点之间的距离,若距离仍小于10米,则将第3个GPS定位点也存储至目标位置点存储队列的队尾。
本实施例以目标位置点存储队列队头的GPS定位点作为标准GPS定位点,计算GPS定位点序列中的GPS定位点与标准GPS定位点之间的第一距离,根据所述第一距离来确定用户是否停留。传统停留区域识别时,通常将当前GPS定位点与前一个GPS定位点的位置坐标进行比对(即根据相邻两个GPS定位点之间的距离确定用户是否停留),相对于传统停留区域识别方法,本发明可识别出原地绕圈这类停留行为,例如,用户在逛商场时,依次浏览商场每层楼的各个门店时,以第一个GPS定位点(例如,电梯入口)为中心、8米为半径进行绕圈(浏览各门店及商品),若第2个GPS定位点与第3个GPS定位点之间的距离为12米,此时,采用传统方法进行停留区域识别时,会认为用户未停留。故而,本实施例所述的方案在识别停留区域时识别准确度更高。
当GPS定位点序列中某一个GPS定位点与目标位置点存储队列队头的GPS定位点的第一距离大于第一阈值时,需确认当前目标位置点存储队列中GPS定位点的数量。
例如,若所述指定用户的GPS定位点序列中第2个-第24个GPS定位点与目标位置点存储队列队头的GPS定位点(即GPS定位点序列中的第1个GPS定位点)之间的距离都小于10米,当计算得到GPS定位点序列中第25个GPS定位点与目标位置点存储队列队头的GPS定位点之间的距离大于10米时,认为所述指定用户在第24个GPS定位点与第25个GPS定位点之间未停留,此时目标位置点存储队列中已有24个GPS定位点,需要判断目标位置点存储队列中的GPS定位点的数量是否大于第二阈值,假如第二阈值为20(若目标位置点存储队列中的GPS定位点的数量大于第二阈值,说明目标位置点存储队列中的GPS定位点数量超过20,因每分钟打点一次,则说明停留时间大于20分钟时认为用户有停留),则认为目标位置点存储队列中的24个GPS定位点对应的地理区域为所述指定用户的停留区域。本实施例不仅考虑到了各个GPS定位点的空间位置,还考虑到时间关系对停留区域识别的影响,本实施例所述的方案在识别停留区域时识别准确度更高。
本实施例中,所述计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间包括:
获取所述停留区域对应的目标位置点存储队列中的各个GPS定位点的位置坐标和时间戳,将所述各个GPS定位点的位置坐标的均值作为所述停留区域的坐标,将所述目标位置点存储队列队尾的GPS定位点与队头的GPS定位点的时间戳的差值作为所述指定用户在所述停留区域的停留时间。
在本发明的另一个实施例中,所述用户行为分析方法在判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值之后还包括:
若所述目标位置点存储队列中的GPS定位点的数量小于第二阈值,则将所述目标位置点存储队列队头的GPS定位点删除,将所述目标位置点存储队列中剩余的GPS定位点向所述队头位置移动一位,得到新的队头GPS定位点,返回所述GPS定位点序列中的下一个GPS定位点。
例如,所述指定用户的GPS定位点序列中的第2-5个GPS定位点与目标位置点存储队列队头的GPS定位点(第1个GPS定位点)的距离都小于10米,而GPS定位点序列中的第6个GPS定位点与目标位置点存储队列队头的GPS定位点的距离大于10米,此时目标位置点存储队列中的GPS定位点的数量为5,小于第二阈值,表明所述指定用户只是临时停留(停留时间为5分钟),并不是真正意义上的停留,则将目标位置点存储队列中队头的GPS定位点删除,即将GPS定位点序列中的第1个GPS定位点从目标位置点存储队列的队头删除,目标位置点存储队列中剩余的GPS定位点向队头方向移动一位,第2个GPS定位点移动到队头位置,成为目标位置点存储队列新的队头,然后计算第6个GPS定位点与目标位置点存储队列的新队头的GPS定位点(即第2个GPS定位点)之间的距离,若距离小于10米,则将第6个GPS定位点添加至目标位置点存储队列的队尾。
本实施例中,所述方法在计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间后还包括:
B1、判断所述GPS定位点序列中是否有未读取的GPS定位点;
B2、若有,将所述目标位置点存储队列清空,将所述GPS定位点序列中与所述目标位置点存储队列队头的GPS定位点之间的第一距离大于第一阈值的GPS定位点存储至已清空的目标位置点存储队列的队头;
B3、依次计算所述GPS定位点序列中未读取的GPS定位点与所述已清空的目标位置点存储队列的队头的GPS定位点之间的第二距离,基于所述第二距离确定所述指定用户的另一个停留区域,遍历完所述GPS定位点序列中的所有GPS定位点,得到所述指定用户的多个停留区域。
确定一个停留区域后,判断GPS定位点序列中是否有未读取的GPS定位点,若有,则将当前目标位置点存储队列清空,将与所述目标位置点存储队列队头的GPS定位点之间的距离大于第一阈值的GPS定位点存储至已清空的目标位置点存储队列的队头,本实施例中,若GPS定位点序列中有200个GPS定位点,已输出的停留区域对应的GPS定位点为GPS定位点序列中的第1~24个GPS定位点,则将GPS定位点序列中的第25个GPS定位点存储至已清空的队列的队头,计算第26个GPS定位点与此时目标位置点存储队列队头的GPS定位点之间的距离,重复步骤S3-S5,直至遍历完所述GPS定位点序列中的GPS定位点,得到所述指定用户的多个停留区域。
本实施例中,所述用户行为分析方法在得到所述指定用户的多个停留区域之后还包括:
分别计算所述多个停留区域中各个停留区域的坐标与所述指定用户对应的标准停留坐标集合中的每个标准停留坐标的差值绝对值,若所述差值绝对值大于第三阈值,则将对应的停留区域作为异常停留区域,并发出预警信息。
此步骤可识别出指定用户(或车辆)的异常停留区域。例如,对于正常运营的货车,通过此步骤可及时识别到所述货车的异常运行情况(例如,因该货车出现故障,该货车在非上货区、非下货区停留时间过长),能够及时介入并协助解决相关异常。
本实施例中,所述用户行为分析方法在得到所述指定用户的多个停留区域之后还包括:
若所述指定用户的停留区域的数量大于第四阈值,则向所述客户端发送预警信息。
由上述实施例可知,本发明提出的基于GPS轨迹的用户行为分析方法,首先,将指定用户的GPS定位点序列的第一个GPS定位点存储至目标位置点存储队列的队头,依次计算GPS定位点序列的GPS定位点与目标位置点存储队列队头的GPS定位点之间的第一距离,当所述第一距离小于第一阈值时,将所述GPS定位点存储至目标位置点存储队列,相较于现有技术中将相邻GPS定位点之间的距离与第一阈值进行比对,此步骤可识别出原地绕圈这类停留行为,识别准确度更高;然后,当所述第一距离大于第一阈值时,判断目标位置点存储队列中GPS定位点的数量是否大于第二阈值,当目标位置点存储队列中的GPS定位点数量大于第二阈值时,将目标位置点存储队列中的GPS定位点对应的地理区域视为指定用户的停留区域,此步骤的目的是剔除GPS定位点序列中临时停留的GPS定位点,识别真正的停留区域。本发明计算量小,算法简单,识别准确度高,故而本发明提高了用户停留区域的识别准确性和识别效率。
如图2所示,为本发明一实施例提供的用户行为分析装置的模块示意图。
本发明所述用户行为分析装置100可以安装于电子设备中。根据实现的功能,所述用户行为分析装置100可以包括获取模块110、创建模块120、读取模块130及计算模块140。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
获取模块110,用于响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列。
所述GPS轨迹信息包括各个GPS定位点的位置坐标(经纬度)、时间戳。
本实施例中,所述GPS轨迹信息是由GPS打点设备(例如,手持终端E手持、车载GPS)按照预设时间间隔(例如,1秒或10秒)打点生成的。需要强调的是,为进一步保证上述历史GPS轨迹信息的私密和安全性,上述历史GPS轨迹信息还可以存储于一区块链的节点中。
创建模块120,用于创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头。
所述目标位置点存储队列满足先进先出的原则,第一个进入的元素(元素相当于本实施例中的GPS定位点)位于队头,最后一个进入的元素位于队尾,且删除元素时只能删除队头的元素,添加元素时只能在队尾添加元素。本实施例根据队列的上述特性,实现目标位置点存储队列的动态收缩和扩张。
读取模块130,用于从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
计算模块140,用于基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
本实施例中,所述基于所述第一距离确定所述指定用户的停留区域包括:
C1、当所述第一距离小于第一阈值时,将所读取的所述GPS定位点存储至所述目标位置点存储队列,当所述第一距离大于第一阈值时,判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值;
C2、当所述目标位置点存储队列中的GPS定位点的数量大于第二阈值时,将所述目标位置点存储队列中的GPS定位点对应的地理区域视为所述指定用户的停留区域。
本实施例中,根据GPS定位点的位置坐标来计算GPS定位点序列中的GPS定位点与目标位置点存储队列队头的GPS定位点之间的第一距离;并根据所述指定用户的出行方式设置第一阈值,以用户为步行出行、且GPS打点设备是按照每分钟打一个GPS定位点为例,将第一阈值设置为10米(正常情况下,一分钟可步行80米)。
例如,将指定用户的GPS定位点序列中的第1个GPS定位点存储至目标位置点存储队列的队头,若GPS定位点序列中的第2个GPS定位点与目标位置点存储队列的队头的GPS定位点之间的距离小于10米,可认为该指定用户当前处于停留状态,则将第2个GPS定位点存储至目标位置点存储队列中,再计算GPS定位点序列中的第3个GPS定位点与目标位置点存储队列队头的GPS定位点之间的距离,若距离仍小于10米,则将第3个GPS定位点也存储至目标位置点存储队列的队尾。
本实施例以目标位置点存储队列队头的GPS定位点作为标准GPS定位点,计算GPS定位点序列中的GPS定位点与标准GPS定位点之间的第一距离,根据所述第一距离来确定用户是否停留。传统停留区域识别时,通常将当前GPS定位点与前一个GPS定位点的位置坐标进行比对(即根据相邻两个GPS定位点之间的距离确定用户是否停留),相对于传统停留区域识别方法,本发明可识别出原地绕圈这类停留行为,例如,用户在逛商场时,依次浏览商场每层楼的各个门店时,以第一个GPS定位点(例如,电梯入口)为中心、8米为半径进行绕圈(浏览各门店及商品),若第2个GPS定位点与第3个GPS定位点之间的距离为12米,此时,采用传统方法进行停留区域识别时,会认为用户未停留。故而,本实施例所述的方案在识别停留区域时识别准确度更高。
当GPS定位点序列中某一个GPS定位点与目标位置点存储队列队头的GPS定位点的第一距离大于第一阈值时,需确认当前目标位置点存储队列中GPS定位点的数量。
例如,若所述指定用户的GPS定位点序列中第2个-第24个GPS定位点与目标位置点存储队列队头的GPS定位点(即GPS定位点序列中的第1个GPS定位点)之间的距离都小于10米,当计算得到GPS定位点序列中第25个GPS定位点与目标位置点存储队列队头的GPS定位点之间的距离大于10米时,认为所述指定用户在第24个GPS定位点与第25个GPS定位点之间未停留,此时目标位置点存储队列中已有24个GPS定位点,需要判断目标位置点存储队列中的GPS定位点的数量是否大于第二阈值,假如第二阈值为20(若目标位置点存储队列中的GPS定位点的数量大于第二阈值,说明目标位置点存储队列中的GPS定位点数量超过20,因每分钟打点一次,则说明停留时间大于20分钟时认为用户有停留),则认为目标位置点存储队列中的24个GPS定位点对应的地理区域为所述指定用户的停留区域。本实施例不仅考虑到了各个GPS定位点的空间位置,还考虑到时间关系对停留区域识别的影响,本实施例所述的方案在识别停留区域时识别准确度更高。
本实施例中,所述计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间包括:
获取所述停留区域对应的目标位置点存储队列中的各个GPS定位点的位置坐标和时间戳,将所述各个GPS定位点的位置坐标的均值作为所述停留区域的坐标,将所述目标位置点存储队列队尾的GPS定位点与队头的GPS定位点的时间戳的差值作为所述指定用户在所述停留区域的停留时间。
在本发明的另一个实施例中,所述计算模块140在判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值之后还用于:
若所述目标位置点存储队列中的GPS定位点的数量小于第二阈值,则将所述目标位置点存储队列队头的GPS定位点删除,将所述目标位置点存储队列中剩余的GPS定位点向所述队头位置移动一位,得到新的队头GPS定位点,返回读取所述GPS定位点序列中的下一个GPS定位点。
例如,所述指定用户的GPS定位点序列中的第2-5个GPS定位点与目标位置点存储队列队头的GPS定位点(第1个GPS定位点)的距离都小于10米,而GPS定位点序列中的第6个GPS定位点与目标位置点存储队列队头的GPS定位点的距离大于10米,此时目标位置点存储队列中的GPS定位点的数量为5,小于第二阈值,表明所述指定用户只是临时停留(停留时间为5分钟),并不是真正意义上的停留,则将目标位置点存储队列中队头的GPS定位点删除,即将GPS定位点序列中的第1个GPS定位点从目标位置点存储队列的队头删除,目标位置点存储队列中剩余的GPS定位点向队头方向移动一位,第2个GPS定位点移动到队头位置,成为目标位置点存储队列新的队头,然后计算第6个GPS定位点与目标位置点存储队列的新队头的GPS定位点(即第2个GPS定位点)之间的距离,若距离小于10米,则将第6个GPS定位点添加至目标位置点存储队列的队尾。
本实施例中,所述计算模块140在计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间后还用于:
D1、判断所述GPS定位点序列中是否有未读取的GPS定位点;
D2、若有,将所述目标位置点存储队列清空,将所述GPS定位点序列中与所述目标位置点存储队列队头的GPS定位点之间的第一距离大于第一阈值的GPS定位点存储至已清空的目标位置点存储队列的队头;
D3、依次计算所述GPS定位点序列中未读取的GPS定位点与所述已清空的目标位置点存储队列的队头的GPS定位点之间的第二距离,基于所述第二距离确定所述指定用户的另一个停留区域,遍历完所述GPS定位点序列中的所有GPS定位点,得到所述指定用户的多个停留区域。
确定一个停留区域后,判断GPS定位点序列中是否有未读取的GPS定位点,若有,则将当前目标位置点存储队列清空,将与所述目标位置点存储队列队头的GPS定位点之间的第一距离大于第一阈值的GPS定位点存储至已清空的目标位置点存储队列的队头,本实施例中,若GPS定位点序列中有200个GPS定位点,已输出的停留区域对应的GPS定位点为GPS定位点序列中的第1~24个GPS定位点,则将GPS定位点序列中的第25个GPS定位点存储至已清空的队列的队头,计算第26个GPS定位点与此时目标位置点存储队列队头的GPS定位点之间的距离,重复步骤S3-S5,直至遍历完所述GPS定位点序列中的GPS定位点,得到所述指定用户的多个停留区域。
本实施例中,所述计算模块140在得到所述指定用户的多个停留区域之后还用于:
分别计算所述多个停留区域中各个停留区域的坐标与所述指定用户对应的标准停留坐标集合中的每个标准停留坐标的差值绝对值,若所述差值绝对值大于第三阈值,则将对应的停留区域作为异常停留区域,并发出预警信息。
此步骤可识别出指定用户(或车辆)的异常停留区域。例如,对于正常运营的货车,通过此步骤可及时识别到所述货车的异常运行情况(例如,因该货车出现故障,该货车在非上货区、非下货区停留时间过长),能够及时介入并协助解决相关异常。
本实施例中,所述计算模块140在得到所述指定用户的多个停留区域之后还用于:
若所述指定用户的停留区域的数量大于第四阈值,则向所述客户端发送预警信息。
如图3所示,为本发明一实施例提供的基于GPS轨迹的用户行为分析方法的电子设备的结构示意图。
所述电子设备1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述电子设备1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
在本实施例中,电子设备1包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,该存储器11中存储有用户行为分析程序10,所述用户行为分析程序10可被所述处理器12执行。图1仅示出了具有组件11-13以及用户行为分析程序10的电子设备1,本领域技术人员可以理解的是,图1示出的结构并不构成对电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子设备1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子设备1的内部存储单元,例如该电子设备1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子设备1的操作系统和各类应用软件,例如存储本发明一实施例中的用户行为分析程序10的代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子设备1的总体操作,例如执行与其他设备进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行用户行为分析程序10等。
网络接口13可包括无线网络接口或有线网络接口,该网络接口13用于在所述电子设备1与客户端(图中未画出)之间建立通信连接。
可选的,所述电子设备1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选的,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的用户行为分析程序10是多个指令的组合,在所述处理器12中运行时,可以实现:
响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列;
创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头;
从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
具体地,所述处理器12对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。需要强调的是,为进一步保证上述历史GPS轨迹信息的私密和安全性,上述历史GPS轨迹信息还可以存储于一区块链的节点中。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种基于GPS轨迹的用户行为分析方法,其特征在于,所述方法包括:
响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列;
创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头;
从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
2.如权利要求1所述的用户行为分析方法,其特征在于,所述基于所述第一距离确定所述指定用户的停留区域包括:
当所述第一距离小于第一阈值时,将所读取的所述GPS定位点存储至所述目标位置点存储队列,当所述第一距离大于第一阈值时,判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值;
当所述目标位置点存储队列中的GPS定位点的数量大于第二阈值时,将所述目标位置点存储队列中的GPS定位点对应的地理区域视为所述指定用户的停留区域。
3.如权利要求2所述的用户行为分析方法,其特征在于,所述方法在判断所述目标位置点存储队列中GPS定位点的数量是否大于第二阈值之后还包括:
若所述目标位置点存储队列中的GPS定位点的数量小于第二阈值,则将所述目标位置点存储队列队头的GPS定位点删除,将所述目标位置点存储队列中剩余的GPS定位点向所述队头位置移动一位,得到新的队头GPS定位点,返回读取所述GPS定位点序列中的下一个GPS定位点。
4.如权利要求1所述的用户行为分析方法,其特征在于,所述计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间包括:
获取所述停留区域对应的目标位置点存储队列中的各个GPS定位点的位置坐标和时间戳,将所述各个GPS定位点的位置坐标的均值作为所述停留区域的坐标,将所述目标位置点存储队列队尾的GPS定位点与队头的GPS定位点的时间戳的差值作为所述指定用户在所述停留区域的停留时间。
5.如权利要求2所述的用户行为分析方法,其特征在于,所述方法在计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间后还包括:
判断所述GPS定位点序列中是否有未读取的GPS定位点;
若有,将所述目标位置点存储队列清空,将所述GPS定位点序列中与所述目标位置点存储队列队头的GPS定位点之间的第一距离大于第一阈值的GPS定位点存储至已清空的目标位置点存储队列的队头;
依次计算所述GPS定位点序列中未读取的GPS定位点与所述已清空的目标位置点存储队列的队头的GPS定位点之间的第二距离,基于所述第二距离确定所述指定用户的另一个停留区域,遍历所述GPS定位点序列中的所有GPS定位点,得到所述指定用户的多个停留区域。
6.如权利要求5所述的用户行为分析方法,其特征在于,所述方法在得到所述指定用户的多个停留区域之后还包括:
分别计算所述多个停留区域中各个停留区域的坐标与所述指定用户对应的标准停留坐标集合中的每个标准停留坐标的差值绝对值,若所述差值绝对值大于第三阈值,则将对应的停留区域作为异常停留区域,并发出预警信息。
7.如权利要求5所述的用户行为分析方法,其特征在于,所述方法在得到所述指定用户的多个停留区域之后还包括:
若所述指定用户的停留区域的数量大于第四阈值,则向所述客户端发送预警信息。
8.一种用户行为分析装置,其特征在于,所述装置包括:
获取模块,用于响应客户端发出的针对某指定用户的行为分析请求,获取所述指定用户在预设时间段内的历史GPS轨迹信息,将所述历史GPS轨迹信息中的GPS定位点按照时间戳排序得到GPS定位点序列;
创建模块,用于创建一个目标位置点存储队列,将所述GPS定位点序列的第一个GPS定位点存储至所述目标位置点存储队列的队头;
读取模块,用于从所述GPS定位点序列中依次读取对应的GPS定位点,计算所读取的GPS定位点与所述目标位置点存储队列队头的GPS定位点之间的第一距离;
计算模块,用于基于所述第一距离确定所述指定用户的停留区域,计算所述停留区域的坐标及所述指定用户在所述停留区域的停留时间。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一项所述的基于GPS轨迹的用户行为分析方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有用户行为分析程序,所述用户行为分析程序可被一个或者多个处理器执行,以实现如权利要求1至7任一项所述的基于GPS轨迹的用户行为分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010720940.3A CN111812689A (zh) | 2020-07-23 | 2020-07-23 | 基于gps轨迹的用户行为分析方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010720940.3A CN111812689A (zh) | 2020-07-23 | 2020-07-23 | 基于gps轨迹的用户行为分析方法、装置、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111812689A true CN111812689A (zh) | 2020-10-23 |
Family
ID=72861265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010720940.3A Pending CN111812689A (zh) | 2020-07-23 | 2020-07-23 | 基于gps轨迹的用户行为分析方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111812689A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022193170A1 (zh) * | 2021-03-17 | 2022-09-22 | 中国科学院深圳先进技术研究院 | 一种针对手机信令数据的停留识别评估方法、系统、终端以及存储介质 |
WO2023155437A1 (zh) * | 2022-02-15 | 2023-08-24 | 康键信息技术(深圳)有限公司 | 基于在线问诊的数据处理方法、装置和计算机设备 |
-
2020
- 2020-07-23 CN CN202010720940.3A patent/CN111812689A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022193170A1 (zh) * | 2021-03-17 | 2022-09-22 | 中国科学院深圳先进技术研究院 | 一种针对手机信令数据的停留识别评估方法、系统、终端以及存储介质 |
WO2023155437A1 (zh) * | 2022-02-15 | 2023-08-24 | 康键信息技术(深圳)有限公司 | 基于在线问诊的数据处理方法、装置和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287276A (zh) | 高精地图更新方法、装置及存储介质 | |
JP2019144538A (ja) | 電子地図を更新する方法、装置、およびコンピュータ読み取り可能な記憶媒体 | |
CN111739299B (zh) | 稀疏轨迹的车辆排队长度确定方法、装置、设备及介质 | |
CN111326015A (zh) | 一种停车点推荐方法及装置 | |
CN113808400B (zh) | 车流迁徙情况的展示方法、装置、设备及介质 | |
US20210304153A1 (en) | Utilizing a transportation matching system in conjunction with a multi-track vehicle service center to service transportation vehicles | |
JP2022520594A (ja) | 車両の行程を求めるためのシステム | |
CN111812689A (zh) | 基于gps轨迹的用户行为分析方法、装置、电子设备及介质 | |
WO2021169174A1 (zh) | 道路拥堵程度预测方法、装置、计算机设备及可读存储介质 | |
CN111091215A (zh) | 车辆识别方法、装置、计算机设备和存储介质 | |
JP2023184590A (ja) | 情報処理装置 | |
CN110186472B (zh) | 车辆偏航检测方法、计算机设备、存储介质及车辆系统 | |
CN114778774A (zh) | 基于人工智能的温室气体监测方法及相关设备 | |
CN105387844A (zh) | 路面状况测定系统以及路面状况测定方法 | |
CN114661055A (zh) | 应急物流车辆最优路径规划方法、装置、设备及存储介质 | |
JP2019522296A (ja) | 地域内の車両データをジオリファレンスしてスコアリングするためのシステムおよび方法 | |
CN112541621B (zh) | 一种移动预测方法、智能终端及存储介质 | |
CN112307151B (zh) | 导航数据处理方法及装置 | |
CN112270825A (zh) | 一种停车判定方法、装置、电子设备及存储介质 | |
CN115757987B (zh) | 基于轨迹分析的伴随对象确定方法、装置、设备及介质 | |
CN116664025A (zh) | 装卸货位置点生成方法、装置及设备 | |
CN104121917A (zh) | 一种自动发现新建桥梁的方法和装置 | |
CN114394099B (zh) | 车辆行驶异常识别方法、装置、计算机设备及存储介质 | |
CN111339468B (zh) | 信息推送方法、装置、电子设备和存储介质 | |
Hagen et al. | Modeling of parking violations using zero-inflated negative binomial regression: A case study for Berlin |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |