CN116910003A - 一种基于分片字典树的gps轨迹点压缩系统及其使用方法 - Google Patents
一种基于分片字典树的gps轨迹点压缩系统及其使用方法 Download PDFInfo
- Publication number
- CN116910003A CN116910003A CN202310517370.1A CN202310517370A CN116910003A CN 116910003 A CN116910003 A CN 116910003A CN 202310517370 A CN202310517370 A CN 202310517370A CN 116910003 A CN116910003 A CN 116910003A
- Authority
- CN
- China
- Prior art keywords
- track
- module
- point
- slicing
- time
- 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
- 238000007906 compression Methods 0.000 title claims abstract description 140
- 230000006835 compression Effects 0.000 title claims abstract description 140
- 238000000034 method Methods 0.000 title claims description 36
- 230000005494 condensation Effects 0.000 claims abstract description 86
- 238000009833 condensation Methods 0.000 claims abstract description 86
- 239000012634 fragment Substances 0.000 claims description 27
- 230000011218 segmentation Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 235000013399 edible fruits Nutrition 0.000 claims description 2
- 238000006243 chemical reaction Methods 0.000 claims 1
- 230000008602 contraction Effects 0.000 claims 1
- 238000013144 data compression Methods 0.000 abstract description 6
- 238000001514 detection method Methods 0.000 abstract description 3
- 238000004804 winding Methods 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 206010028896 Needle track marks Diseases 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
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/42—Determining position
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- 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/22—Indexing; Data structures therefor; Storage structures
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Radar, Positioning & Navigation (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明提出了一种基于分片字典树的GPS轨迹点压缩系统,包括GPS定位模块、轨迹点分片压缩模块、轨迹点哈希模块、轨迹分片字典树模块、轨迹时空缩点模块、轨迹分层存储模块;通过上述模块的配合能够使定位设备的轨迹数据在时间与空间维度上均能够被压缩;本发明公开的一种基于分片字典树的GPS轨迹点压缩系统通过构建分片字典树,利用小分片轨迹空间压缩与利用分片字典树的高性能查询实际轨迹交叉点检测,以实现轨迹数据在时间与空间维度上的压缩;即使定位设备处于绕圈与徘徊情况下,依然能够很好实现轨迹数据压缩。
Description
技术领域
本发明涉及计算机软件轨迹压缩的技术领域,特别涉及一种基于分片字典树的GPS轨迹点压缩系统及其使用方法。
背景技术
随着技术进步、市场不断成熟,具有地理定位功能的智能设备越来越多,这些智能设备可以是GPS(全球定位系统)轨迹记录设备,或者北斗导航设备。地理位置轨迹数据通常是利用具有地理定位功能的智能设备采集一系列户外活动的位置点,每个位置点包括时间、经度、纬度、海拔等信息。随着智能设备的普及,越来越多的人习惯于记录并分享轨迹记录。在此过程中,智能设备负责采集地理位置轨迹数据,采集到的地理位置轨迹数据经解析、传输、存储,最终应用到具体业务系统中。
随着交通的发展,人民生活水平的日益提高,出行、旅游、户外运动等变得越来越快捷,越来越方便。户外活动轨迹记录是一件有趣而又有意义的事情,目前,有些智能设备能够实现对每天出行的路径形成完整轨迹标识,具有记录日常生活和运动轨迹功能,形成每日移动地图,并能书写和保存轨迹日志,便于日后查看和回忆。日积月累,保存的每日轨迹数据越来越多,有时,用户想看当月或当年合成的轨迹数据,以回忆美好生活的点点滴滴。在从事户外工作的公司中,公司或领导想查看某个或多个户外工作人员的年度轨迹综合记录,供决策层决策。
当前轨迹数据压缩的方法主要是基于R树的轨迹数据压缩法,但R树压缩方法仅是基于GIS空间维度上的压缩,并没有考虑时间维度影响,在很多情况下,如定位设备处于绕圈与徘徊情况下,则不能很好实现轨迹数据压缩。
例如,CN109902139A公开了一种基于R树的轨迹数据压缩方法,包括以下步骤:轨迹数据序列初始化;采用现有R树索引方法对轨迹数据构建树状索引结构,借助R树的层次结构自动创建层次模型;针对第k个轨迹数据序列,从轨迹数据序列依次取出2个位置点数据,判断这2个位置点数据是否需要保存在R树中;采用现有R树查询方法,获取保存在R树叶子节点中的成对的位置点数据,依据这些成对的位置点数据在地图模型中构建压缩后的轨迹路径。
上述技术方案利用R树的索引结构对多条离散的轨迹数据实现压缩存储,具有可靠性高、准确性强等优点;但没有考虑时间维度影响,导致该技术方案会受到较大的限制。
例如,CN114353810B公开了一种基于R树和轨迹分段的HMM高效地图匹配方法。首先采用R树空间索引方法为路网建立空间索引,然后基于轨迹点位置变化率对GPS轨迹数据进行分段,并利用R树索引快速确定子轨迹所属的候选路段,在子轨迹中挑选关键点代替整段子轨迹判断所属路段,根据结果完成各子轨迹的地图匹配。
上述技术方案可以同时减少道路搜索和轨迹点遍历的工作量,大幅提高算法效率;但是仅是基于GIS空间维度上轨迹,并没有考虑时间维度影响,不能很好实现特殊情况下轨迹数据搜素,具有较大的改进空间
针对上述现有技术中存在的缺陷,亟需一种使轨迹数据在时间与空间维度上均能够压缩的GPS轨迹点压缩系统。
发明内容
本发明的目的在于提供一种基于分片字典树的GPS轨迹点压缩系统及其使用方法,用于解决现有的基于R树的轨迹数据压缩法存在的问题;该系统包括GPS定位模块,轨迹点分片压缩模块,轨迹点哈希模块,轨迹分片字典树模块,轨迹时空缩点模块,轨迹分层存储模块;通过上述模块的配合能够使定位设备的轨迹数据在时间与空间维度上均能够被压缩。
为了实现上述目的,本发明提出了一种基于分片字典树的GPS轨迹点压缩系统,包括GPS定位模块、轨迹点分片压缩模块、轨迹点哈希模块、轨迹分片字典树模块、轨迹时空缩点模块、轨迹分层存储模块;
所述GPS定位模块能够计算自身的经度与维度的位置,且GPS定位模块能够将经度与维度与定位时间发送给轨迹点分片压缩模块与轨迹点哈希模块;
所述轨迹点分片压缩模块能够对轨迹点进行分片和压缩,轨迹点分片压缩模块能够取轨迹点分片中心并将中心点的位置与定位时间发送给轨迹点哈希模块,轨迹点分片压缩模块能够将轨迹点压缩分片发送给轨迹分层存储模块;
所述轨迹点哈希模块能够将接收到的经度与维度数据计算生成位置字符串,并且轨迹点哈希模块能够将计算得到的位置字符串与定位时间发送给轨迹分片字典树模块与轨迹时空缩点模块;
所述轨迹分片字典树模块能够生成分片字典树,并用于缩点查询;并且轨迹分片字典树模块能够将生成的分片字典树发送给轨迹时空缩点模块;
所述轨迹时空缩点模块通过分片字典树模型能够实现时间与空间的交叉判断,生成轨迹关键点并保存进缩点列表;并且轨迹时空缩点模块能够把缩点列表发送给轨迹分层存储模块;
所述轨迹分层存储模块能够把接收到的轨迹点压缩分片用于基础的轨迹线路储存,保留基于空间压缩的轨迹,用于查询短时间的呈现轨迹;所述轨迹分层存储模块能够把接收到的缩点信息生成定位点,并且能够将定位点按照时间进行排序,作为基于时间和空间的压缩后的轨迹,用于查询长时间的呈现轨迹。
本申请还公开了一种基于分片字典树的GPS轨迹点压缩系统的使用方法,包括如下步骤:
S1、GPS定位模块接收来自至少4颗卫星的信号,并计算出与每个卫星的伪距离,根据这些伪距离使用三角测量技术计算法,计算出GPS定位模块的经度与维度位置;GPS定位模块把经度与维度与定位时间发送给轨迹点分片压缩模块与轨迹点哈希模块;
S2、轨迹点分片压缩模块对轨迹进行先分片后空间压缩;
S3、轨迹点哈希模块把经度与维度生成位置字符串;
S4、轨迹分片字典树模块生成分片字典树,用于缩点查询;
S5、轨迹时空缩点模块通过分片字典树模型实现时间与空间的交叉判断,生成轨迹的关键点;
S6、轨迹分层存储模块通过时间跨度选择不同层级轨迹呈现。
优选的,所述步骤S2还包括:
S2.1轨迹点分片压缩模块接收GPS定位模块的位置的经度与维度数据与定位时间;
S2.2将定位时间除以分片时长得到分片序号,轨迹点分片压缩模块把相同分片序号的位置数据划分到同一个轨迹点分片;
S2.3轨迹点分片压缩模块取轨迹点分片中心,所述轨迹点分片中心为最左轨迹点与最右轨迹点与最上轨迹点与最下轨迹点围成的矩形区域的中心,计算所有的轨迹点与分片中心的距离,轨迹点分片压缩模块挑选与分片中心最近的轨迹点作为中心点,轨迹点分片压缩模块把中心点的位置与定位时间发送给轨迹点哈希模块;
S2.4轨迹点分片压缩模块将轨迹点分片的轨迹点按照定位时间排序;轨迹点分片压缩模块对轨迹点分片进行压缩计算去除无效轨迹点;
S2.5轨迹点分片压缩模块把轨迹点分片的首尾两个点作为轨迹的起点和终点生成一条直线;
S2.6轨迹点分片压缩模块计算轨迹点分片中剩余轨迹点到该直线的距离;
S2.7轨迹点分片压缩模块找到距离最大的轨迹点,并计算该点到起点和终点的距离;
S2.8如果该轨迹点到起点和终点的距离均小于预设阈值,轨迹点分片压缩模块则丢弃所有剩余轨迹点;
S2.9如果该轨迹点到起点和终点的距离有一个大于预设阈值,轨迹点分片压缩模块保留该轨迹点,并将轨迹分成两个子轨迹,重复计算,直到所有子轨迹的最大距离均小于预设阈值;
S2.10轨迹点分片压缩模块最终得到代表分片的轨迹形状和特征的轨迹点,在一个时间分片上对轨迹进行压缩;
S2.11轨迹点分片压缩模块把所有保留的轨迹点保存到轨迹点压缩分片中,包含轨迹点的定位时间与经度与维度数据;轨迹点分片压缩模块把轨迹点压缩分片发送给轨迹分层存储模块。
优选的,所述步骤S3还包括:
S3.1轨迹点哈希模块接收GPS定位模块的经度与维度与定位时间,轨迹点哈希模块把计算得到的位置字符串与定位时间发送给轨迹分片字典树模块;
S3.2轨迹点哈希模块接收轨迹点分片压缩模块发送的中心点的位置与定位时间,轨迹点哈希模块把计算得到的位置字符串与定位时间发送给轨迹时空缩点模块。
优选的,所述轨迹点哈希模块计算位置字符串的方法如下:
轨迹点哈希模块根据应用区域的维度范围,对轨迹点的经度映射到-180度到+180度范围;
轨迹点哈希模块根据应用区域的维度范围,对轨迹点的纬度映射到-90度到+90度范围;
轨迹点哈希模块把映射后的经度转换为经度的二进制数值,将经度乘以2的N次方,并将结果向下取整得到一个整数部分,作为维度的二进制数值;
轨迹点哈希模块把经度的二进制数值做与维度的二进制数值合并为位置二进制数值,经度的二进制数值作为位置二进制数值的奇数位,维度的二进制数值作为位置二进制数值的偶数位;
轨迹点哈希模块把位置二进制数值的奇偶两位合并进行字符串编码(编码值:0,1,2,3)得到位置字符串;位置字符串的高位低位即代表区域的匹配精度。
优选的,所述步骤S4还包括:
S4.1轨迹分片字典树模块接收轨迹点哈希模块的位置字符串与定位时间,将定位时间除以分片时长得到分片序号;
S4.2轨迹点分片压缩模块把相同分片序号的位置数据划分到同一个轨迹点分片,并将同一个分片中的位置数据建立分片字典树;
S4.3轨迹点分片压缩模块使用分片序号作为分片字典树的版本号,给分片字典树建立根节点,根节点版本号为分片字典树版本号,新版本根节点继承上一个版本根节点的子节点;
每个版本字典树包含一个根节点与多个树节点与叶子节点;根节点与多个树节点与叶子节点携带版本号,用于区分不同版本号的字段树;根节点不含位置字符,树节点与叶子节点都包含一个查找字符,用于字符串快速匹配;根节点与树节点可以下挂一个或多个树节点与叶子节点,下挂的树节点与叶子节点的版本可以是当前根节点与树节点版本,也可以是旧版本号,叶子节点作为位置字符串结束字符不挂子节点;
S4.4轨迹点分片压缩模块把新位置的字符串插入分片的字典树,并从根节点开始将位置字符串插入,若树节点不存在则创建新的树节点,新的树节点版本号为分片字典树版本号,如果树节点已存在且树节点版本号小于分片字典树版本号,则插入创建新的树节点,新的树节点版本号的为分片字典树版本号,新的树节点版本号继承旧版本号的树节点的子节点;
S4.5轨迹分片字典树模块通过分片字典树的各个版本字典树实现每个时间分片快速查找位置字符串匹配,同时本版本字典树关联到上一个版本字典树,实现快速跨时间分片的查询节点位置字符串匹配,最终实现一种快速时间与空间结合快速查询方法;
S4.6轨迹分片字典树模块把分片字典树发送给轨迹时空缩点模块。
本发明公开的一种基于分片字典树的GPS轨迹点压缩系统通过构建分片字典树,利用小分片轨迹空间压缩与利用分片字典树的高性能查询实际轨迹交叉点检测,实现轨迹数据的时间与空间维度的压缩。
优选的,所述步骤S5还包括:
S5.1:轨迹时空缩点模块接收轨迹点哈希模块中心点的位置字符串与定位时间,轨迹时空缩点模块将定位时间除以分片时长得到分片序号;
S5.2轨迹时空缩点模块从版本号为分片序号-1的字典树的根节点开始匹配,轨迹时空缩点模块预设最大匹配长度,通过预设最大匹配长度控制匹配精度;
S5.3轨迹时空缩点模块如果找到匹配,则从最长匹配节点读取版本号,继续沿着节点查询子节点,如果有多个子节点,取版本号最大的子节点,一直读取到叶子节点,再把叶子节点的版本号与叶子节点对应的位置字符串计入到缩点列表,轨迹时空缩点模块通过上述方式把定位设备处于绕圈与徘徊的情况下的各个时间段交叉轨迹点作为关键点保存进缩点列表;
本申请的一种基于分片字典树的GPS轨迹点压缩系统能够实现轨迹数据的时间与空间维度的压缩,在定位设备处于绕圈与徘徊情况下,依然能够很好实现轨迹数据压缩。
S5.4轨迹时空缩点模块继续从版本号为分片序号-1的字典树的根节点开始匹配,轨迹时空缩点模块如果找到匹配,则继续把新找到版本号计入到缩点列表,重复上面流程直到找到所有的匹配点,把匹配点的版本号与位置字符串放到缩点列表;
S5.5若轨迹时空缩点模块未能找到匹配点,则把中心点的位置字符串与分片序号放入缩点列表,若定位设备轨迹无交叉,则使用分片的中心点做为关键点保存进缩点列表;
S5.6轨迹时空缩点模块把缩点列表发送给轨迹分层存储模块。
优选的,所述步骤S6还包括:
S6.1轨迹分层存储模块接收轨迹点分片压缩模块发送的轨迹点压缩分片并用于基础的轨迹线路存储,保留基于空间的压缩后的轨迹,用于查询短时间的呈现轨迹,如查询时间小于一天;
S6.2轨迹分层存储模块接收轨迹时空缩点模块发送的缩点列表;
S6.3轨迹分层存储模块根据缩点列表取版本号,版本号代表分片序号,将版本号乘以分片时长得到分片时间;
S6.4轨迹分层存储模块根据缩点信息的位置字符串,根据编码值与二进制值映射关系(编码值:0,1,2,3)得到位置二进制字符串,根据二进制数值的奇数位为经度值,位置二进制数值的偶数位为维度值,得到位置的经度维度值;
S6.5轨迹分层存储模块结合缩点列表的分片时间与位置的经度维度值得到一个缩点信息的多个定位点的位置与时间;
S6.6轨迹分层存储模块把所有缩点信息生成定位点,并且能够将定位点按照时间进行排序,作为基于时间和空间的压缩后的轨迹,用于查询长时间的呈现轨迹,如查询时间大于一天。
本发明与现有技术相比较具有如下有益效果:
本发明公开的一种基于分片字典树的GPS轨迹点压缩系统通过构建分片字典树,利用小分片轨迹空间压缩与利用分片字典树的高性能查询实际轨迹交叉点检测,以实现轨迹数据在时间与空间维度上的压缩。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中各个模块之间的数据传输方式及工作原理示意图;
其中,图中所示GPS定位模块1、轨迹点分片压缩模块2、轨迹点哈希模块3、轨迹分片字典树模块4、轨迹时空缩点模块5、轨迹分层存储模块6。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一、
如图1所示,实现本发明技术目的地第一个技术方案是:一种基于分片字典树的GPS轨迹点压缩系统,包含:GPS定位模块1,轨迹点分片压缩模块2,轨迹点哈希模块3,轨迹分片字典树模块4,轨迹时空缩点模块5,轨迹分层存储模块6;
所述GPS定位模块1能够计算自身的经度与维度的位置,且GPS定位模块1能够将经度与维度与定位时间发送给轨迹点分片压缩模块2与轨迹点哈希模块3;
所述轨迹点分片压缩模块2能够对轨迹点进行分片和压缩,轨迹点分片压缩模块2能够取轨迹点分片中心并将中心点的位置与定位时间发送给轨迹点哈希模块3,轨迹点分片压缩模块2能够将轨迹点压缩分片发送给轨迹分层存储模块6;
所述轨迹点哈希模块3能够将接收到的经度与维度数据计算生成位置字符串,并且轨迹点哈希模块3能够将计算得到的位置字符串与定位时间发送给轨迹分片字典树模块4与轨迹时空缩点模块5;
所述轨迹分片字典树模块4能够生成分片字典树,并用于缩点查询;并且轨迹分片字典树模块4能够将生成的分片字典树发送给轨迹时空缩点模块5;
所述轨迹时空缩点模块5通过分片字典树模型能够实现时间与空间的交叉判断,生成轨迹关键点并保存进缩点列表;并且轨迹时空缩点模块5能够把缩点列表发送给轨迹分层存储模块6;
所述轨迹分层存储模块6能够把接收到的轨迹点压缩分片用于基础的轨迹线路储存,保留基于空间压缩的轨迹,用于查询短时间的呈现轨迹;所述轨迹分层存储模块6能够把接收到的缩点信息生成定位点,并且能够将定位点按照时间进行排序,作为基于时间和空间的压缩后的轨迹,用于查询长时间的呈现轨迹。
实施例二、
如图1所示,实现本发明技术目的地第二个技术方案是:一种基于分片字典树的GPS轨迹点压缩系统的使用方法,包含如下步骤:
S1、GPS定位模块1接收来自至少4颗卫星的信号,并计算出与每个卫星的伪距离,根据这些伪距离使用三角测量技术计算法,计算出GPS定位模块的经度与维度位置;GPS定位模块1把经度与维度与定位时间发送给轨迹点分片压缩模块2与轨迹点哈希模块3;
S2、轨迹点分片压缩模块2对轨迹进行先分片后空间压缩;
S2.1轨迹点分片压缩模块2接收GPS定位模块1的位置的经度与维度数据与定位时间;
S2.2将定位时间除以分片时长得到分片序号,轨迹点分片压缩模块2把相同分片序号的位置数据划分到同一个轨迹点分片;
S2.3轨迹点分片压缩模块2取轨迹点分片中心,所述轨迹点分片中心为最左轨迹点与最右轨迹点与最上轨迹点与最下轨迹点围成的矩形区域的中心,计算所有的轨迹点与分片中心的距离,轨迹点分片压缩模块2挑选与分片中心最近的轨迹点作为中心点,轨迹点分片压缩模块2把中心点的位置与定位时间发送给轨迹点哈希模块3;
S2.4轨迹点分片压缩模块2将轨迹点分片的轨迹点按照定位时间排序;轨迹点分片压缩模块2对轨迹点分片进行压缩计算去除无效轨迹点;
S2.5轨迹点分片压缩模块2把轨迹点分片的首尾两个点作为轨迹的起点和终点生成一条直线;
S2.6轨迹点分片压缩模块2计算轨迹点分片中剩余轨迹点到该直线的距离;
S2.7轨迹点分片压缩模块2找到距离最大的轨迹点,并计算该点到起点和终点的距离;
S2.8如果该轨迹点到起点和终点的距离均小于预设阈值,轨迹点分片压缩模块2则丢弃所有剩余轨迹点;
S2.9如果该轨迹点到起点和终点的距离有一个大于预设阈值,轨迹点分片压缩模块2保留该轨迹点,并将轨迹分成两个子轨迹,重复计算,直到所有子轨迹的最大距离均小于预设阈值;
S2.10轨迹点分片压缩模块2最终得到代表分片的轨迹形状和特征的轨迹点,在一个时间分片上对轨迹进行压缩;
S2.11轨迹点分片压缩模块2把所有保留的轨迹点保存到轨迹点压缩分片中,包含轨迹点的定位时间与经度与维度数据;轨迹点分片压缩模块2把轨迹点压缩分片发送给轨迹分层存储模块6;
S3、轨迹点哈希模块3把经度与维度生成位置字符串;
S3.1轨迹点哈希模块3接收GPS定位模块1的经度与维度与定位时间,轨迹点哈希模块3把计算得到的位置字符串与定位时间发送给轨迹分片字典树模块4;
S3.2轨迹点哈希模块3接收轨迹点分片压缩模块2发送的中心点的位置与定位时间,轨迹点哈希模块3把计算得到的位置字符串与定位时间发送给轨迹时空缩点模块5;
其中轨迹点哈希模块3计算位置字符串的方法如下:
轨迹点哈希模块3根据应用区域的维度范围,对轨迹点的经度映射到-180度到+180度范围;
轨迹点哈希模块3根据应用区域的维度范围,对轨迹点的纬度映射到-90度到+90度范围;
轨迹点哈希模块3把映射后的经度转换为经度的二进制数值,将经度乘以2的N次方,并将结果向下取整得到一个整数部分,作为维度的二进制数值;
轨迹点哈希模块3把经度的二进制数值做与维度的二进制数值合并为位置二进制数值,经度的二进制数值作为位置二进制数值的奇数位,维度的二进制数值作为位置二进制数值的偶数位;
轨迹点哈希模块3把位置二进制数值的奇偶两位合并进行字符串编码(编码值:0,1,2,3)得到位置字符串;位置字符串的高位低位即代表区域的匹配精度;
S4、轨迹分片字典树模块4生成分片字典树,用于缩点查询;
S4.1轨迹分片字典树模块4接收轨迹点哈希模块3的位置字符串与定位时间,将定位时间除以分片时长得到分片序号;
S4.2轨迹点分片压缩模块2把相同分片序号的位置数据划分到同一个轨迹点分片,并将同一个分片中的位置数据建立分片字典树;
S4.3轨迹点分片压缩模块2使用分片序号作为分片字典树的版本号,给分片字典树建立根节点,根节点版本号为分片字典树版本号,新版本根节点继承上一个版本根节点的子节点;
每个版本字典树包含一个根节点与多个树节点与叶子节点;根节点与多个树节点与叶子节点携带版本号,用于区分不同版本号的字段树;根节点不含位置字符,树节点与叶子节点都包含一个查找字符,用于字符串快速匹配;根节点与树节点可以下挂一个或多个树节点与叶子节点,下挂的树节点与叶子节点的版本可以是当前根节点与树节点版本,也可以是旧版本号,叶子节点作为位置字符串结束字符不挂子节点;
S4.4轨迹点分片压缩模块2把新位置的字符串插入分片的字典树,并从根节点开始将位置字符串插入,若树节点不存在则创建新的树节点,新的树节点版本号为分片字典树版本号,如果树节点已存在且树节点版本号小于分片字典树版本号,则插入创建新的树节点,新的树节点版本号的为分片字典树版本号,新的树节点版本号继承旧版本号的树节点的子节点;
S4.5轨迹分片字典树模块4通过分片字典树的各个版本字典树实现每个时间分片快速查找位置字符串匹配,同时本版本字典树关联到上一个版本字典树,实现快速跨时间分片的查询节点位置字符串匹配,最终实现一种快速时间与空间结合快速查询方法;
S4.6轨迹分片字典树模块4把分片字典树发送给轨迹时空缩点模块5;
S5、轨迹时空缩点模块5通过分片字典树模型实现时间与空间的交叉判断,生成轨迹的关键点;
S5.1:轨迹时空缩点模块5接收轨迹点哈希模块3中心点的位置字符串与定位时间,轨迹时空缩点模块5将定位时间除以分片时长得到分片序号;
S5.2轨迹时空缩点模块5从版本号为分片序号-1的字典树的根节点开始匹配,轨迹时空缩点模块5预设最大匹配长度,通过预设最大匹配长度控制匹配精度;
S5.3轨迹时空缩点模块5如果找到匹配,则从最长匹配节点读取版本号,继续沿着节点查询子节点,如果有多个子节点,取版本号最大的子节点,一直读取到叶子节点,再把叶子节点的版本号与叶子节点对应的位置字符串计入到缩点列表,轨迹时空缩点模块5通过上述方式把定位设备处于绕圈与徘徊的情况下的各个时间段交叉轨迹点作为关键点保存进缩点列表;
S5.4轨迹时空缩点模块5继续从版本号为分片序号-1的字典树的根节点开始匹配,轨迹时空缩点模块5如果找到匹配,则继续把新找到版本号计入到缩点列表,重复上面流程直到找到所有的匹配点,把匹配点的版本号与位置字符串放到缩点列表;
S5.5若轨迹时空缩点模块5未能找到匹配点,则把中心点的位置字符串与分片序号放入缩点列表,若定位设备轨迹无交叉,则使用分片的中心点做为关键点保存进缩点列表;
S5.6轨迹时空缩点模块5把缩点列表发送给轨迹分层存储模块6;
S6、轨迹分层存储模块6通过时间跨度选择不同层级轨迹呈现。
S6.1轨迹分层存储模块6接收轨迹点分片压缩模块2发送的轨迹点压缩分片并用于基础的轨迹线路存储,保留基于空间的压缩后的轨迹,用于查询短时间的呈现轨迹,如查询时间小于一天;
S6.2轨迹分层存储模块6接收轨迹时空缩点模块5发送的缩点列表;
S6.3轨迹分层存储模块6根据缩点列表取版本号,版本号代表分片序号,将版本号乘以分片时长得到分片时间;
S6.4轨迹分层存储模块6根据缩点信息的位置字符串,根据编码值与二进制值映射关系(编码值:0,1,2,3)得到位置二进制字符串,根据二进制数值的奇数位为经度值,位置二进制数值的偶数位为维度值,得到位置的经度维度值;
S6.5轨迹分层存储模块6结合缩点列表的分片时间与位置的经度维度值得到一个缩点信息的多个定位点的位置与时间;
S6.6轨迹分层存储模块6把所有缩点信息生成定位点,并且能够将定位点按照时间进行排序,作为基于时间和空间的压缩后的轨迹,用于查询长时间的呈现轨迹,如查询时间大于一天。
当然,以上所述仅为本发明的具体实施例而已,并非来限制本发明实施范围,凡依本发明申请专利范围所述构造、特征及原理所做的等效变化或修饰,均应包括于本发明申请专利范围内。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种基于分片字典树的GPS轨迹点压缩系统,其特征在于,包括GPS定位模块(1)、轨迹点分片压缩模块(2)、轨迹点哈希模块(3)、轨迹分片字典树模块(4)、轨迹时空缩点模块(5)、轨迹分层存储模块(6);
所述GPS定位模块(1)能够计算自身的经度与维度的位置,且GPS定位模块(1)能够将经度与维度与定位时间发送给轨迹点分片压缩模块(2)与轨迹点哈希模块(3);
所述轨迹点分片压缩模块(2)能够对轨迹点进行分片和压缩,轨迹点分片压缩模块(2)能够取轨迹点分片中心并将中心点的位置与定位时间发送给轨迹点哈希模块(3),轨迹点分片压缩模块(2)能够将轨迹点压缩分片发送给轨迹分层存储模块(6);
所述轨迹点哈希模块(3)能够将接收到的经度与维度数据计算生成位置字符串,并且轨迹点哈希模块(3)能够将计算得到的位置字符串与定位时间发送给轨迹分片字典树模块(4)与轨迹时空缩点模块(5);
所述轨迹分片字典树模块(4)能够生成分片字典树,并用于缩点查询;并且轨迹分片字典树模块(4)能够将生成的分片字典树发送给轨迹时空缩点模块(5);
所述轨迹时空缩点模块(5)通过分片字典树模型能够实现时间与空间的交叉判断,生成轨迹关键点并保存进缩点列表;并且轨迹时空缩点模块(5)能够把缩点列表发送给轨迹分层存储模块(6);
所述轨迹分层存储模块(6)能够把接收到的轨迹点压缩分片用于基础的轨迹线路储存,保留基于空间压缩的轨迹,用于查询短时间的呈现轨迹;所述轨迹分层存储模块(6)能够把接收到的缩点信息生成定位点,并且能够将定位点按照时间进行排序,作为基于时间和空间的压缩后的轨迹,用于查询长时间的呈现轨迹。
2.一种应用于权利要求1所述的基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,包括如下步骤:
S1、GPS定位模块(1)接收来自至少4颗卫星的信号,并计算出与每个卫星的伪距离,根据这些伪距离使用三角测量技术计算法,计算出GPS定位模块的经度与维度;GPS定位模块(1)把经度与维度与定位时间发送给轨迹点分片压缩模块(2)与轨迹点哈希模块(3);
S2、轨迹点分片压缩模块(2)对轨迹进行先分片后空间压缩;
S3、轨迹点哈希模块(3)把经度与维度生成位置字符串;
S4、轨迹分片字典树模块(4)生成分片字典树,用于缩点查询;
S5、轨迹时空缩点模块(5)通过分片字典树模型实现时间与空间的交叉判断,生成轨迹的关键点;
S6、轨迹分层存储模块(6)通过时间跨度选择不同层级轨迹呈现。
3.根据权利要求2所述的一种基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,所述步骤S2还包括:
S2.1轨迹点分片压缩模块(2)接收GPS定位模块(1)的位置的经度与维度数据与定位时间;
S2.2将定位时间除以分片时长得到分片序号,轨迹点分片压缩模块(2)把相同分片序号的位置数据划分到同一个轨迹点分片;
S2.3轨迹点分片压缩模块(2)取轨迹点分片中心,所述轨迹点分片中心为最左轨迹点与最右轨迹点与最上轨迹点与最下轨迹点围成的矩形区域的中心,计算所有的轨迹点与分片中心的距离,轨迹点分片压缩模块(2)挑选与分片中心最近的轨迹点作为中心点,轨迹点分片压缩模块(2)把中心点的位置与定位时间发送给轨迹点哈希模块(3);
S2.4轨迹点分片压缩模块(2)将轨迹点分片的轨迹点按照定位时间排序;轨迹点分片压缩模块(2)对轨迹点分片进行压缩计算去除无效轨迹点;
S2.5轨迹点分片压缩模块(2)把轨迹点分片的首尾两个点作为轨迹的起点和终点生成一条直线;
S2.6轨迹点分片压缩模块(2)计算轨迹点分片中剩余轨迹点到该直线的距离;
S2.7轨迹点分片压缩模块(2)找到距离最大的轨迹点,并计算该点到起点和终点的距离;
S2.8如果该轨迹点到起点和终点的距离均小于预设阈值,轨迹点分片压缩模块(2)则丢弃所有剩余轨迹点;
S2.9如果该轨迹点到起点和终点的距离有一个大于预设阈值,轨迹点分片压缩模块(2)保留该轨迹点,并将轨迹分成两个子轨迹,重复计算,直到所有子轨迹的最大距离均小于预设阈值;
S2.10轨迹点分片压缩模块(2)最终得到代表分片的轨迹形状和特征的轨迹点,在一个时间分片上对轨迹进行压缩;
S2.11轨迹点分片压缩模块(2)把所有保留的轨迹点保存到轨迹点压缩分片中,包含轨迹点的定位时间与经度与维度数据;轨迹点分片压缩模块(2)把轨迹点压缩分片发送给轨迹分层存储模块(6)。
4.根据权利要求2所述的一种基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,所述步骤S3还包括:
S3.1轨迹点哈希模块(3)接收GPS定位模块(1)的经度与维度与定位时间,轨迹点哈希模块(3)把计算得到的位置字符串与定位时间发送给轨迹分片字典树模块(4);
S3.2轨迹点哈希模块(3)接收轨迹点分片压缩模块(2)发送的中心点的位置与定位时间,轨迹点哈希模块(3)把计算得到的位置字符串与定位时间发送给轨迹时空缩点模块(5)。
5.根据权利要求4所述的一种基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,轨迹点哈希模块(3)计算位置字符串的方法如下:
轨迹点哈希模块(3)根据应用区域的经度范围,对轨迹点的经度映射到-180度到+180度范围;
轨迹点哈希模块(3)根据应用区域的维度范围,对轨迹点的纬度映射到-90度到+90度范围;重新映射经度与维度目的,轨迹点业务服务特定区域如上海,上海的经度范围120°52-122°12′,纬度范围是30°40′-31°53′,把上海经度的120°52-122°12′映射到-180度到+180,上海纬度从30°40′-31°53′-90度到+90度范围,去除纬度与经度无效信息,提高二进制数值转换信息量。
轨迹点哈希模块(3)把映射后的经度转换为经度的二进制数值,将经度乘以2的N次方,并将结果向下取整得到一个整数部分,作为维度的二进制数值;
轨迹点哈希模块(3)把经度的二进制数值做与维度的二进制数值合并为位置二进制数值,经度的二进制数值作为位置二进制数值的奇数位,维度的二进制数值作为位置二进制数值的偶数位;
轨迹点哈希模块(3)把位置二进制数值的奇偶两位合并进行字符串编码(编码值:0,1,2,3)得到位置字符串;位置字符串的高位低位即代表区域的匹配精度。
6.根据权利要求2所述的一种基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,所述步骤S4还包括:
S4.1轨迹分片字典树模块(4)接收轨迹点哈希模块(3)的位置字符串与定位时间,将定位时间除以分片时长得到分片序号;
S4.2轨迹点分片压缩模块(2)把相同分片序号的位置数据划分到同一个轨迹点分片,并将同一个分片中的位置数据建立分片字典树;
S4.3轨迹点分片压缩模块(2)使用分片序号作为分片字典树的版本号,给分片字典树建立根节点,根节点版本号为分片字典树版本号,新版本根节点继承上一个版本根节点的子节点;每个版本字典树包含一个根节点与多个树节点与叶子节点;根节点与多个树节点与叶子节点携带版本号,用于区分不同版本号的字段树;根节点不含位置字符,树节点与叶子节点都包含一个查找字符,用于字符串快速匹配;根节点与树节点可以下挂一个或多个树节点与叶子节点,下挂的树节点与叶子节点的版本可以是当前根节点与树节点版本,也可以是旧版本号,叶子节点作为位置字符串结束字符不挂子节点;
S4.4轨迹点分片压缩模块(2)把新位置的字符串插入分片的字典树,并从根节点开始将位置字符串插入,若树节点不存在则创建新的树节点,新的树节点版本号为分片字典树版本号,如果树节点已存在且树节点版本号小于分片字典树版本号,则插入创建新的树节点,新的树节点版本号的为分片字典树版本号,新的树节点版本号继承旧版本号的树节点的子节点;
S4.5轨迹分片字典树模块(4)通过分片字典树的各个版本字典树实现每个时间分片快速查找位置字符串匹配,同时本版本字典树关联到上一个版本字典树,实现快速跨时间分片的查询节点位置字符串匹配,最终实现一种快速时间与空间结合快速查询方法;
S4.6轨迹分片字典树模块(4)把分片字典树发送给轨迹时空缩点模块(5)。
7.根据权利要求2所述的一种基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,所述步骤S5还包括:
S5.1:轨迹时空缩点模块(5)接收轨迹点哈希模块(3)中心点的位置字符串与定位时间,轨迹时空缩点模块(5)将定位时间除以分片时长得到分片序号;
S5.2轨迹时空缩点模块(5)从版本号为分片序号-1的字典树的根节点开始匹配,轨迹时空缩点模块(5)预设最大匹配长度,通过预设最大匹配长度控制匹配精度;
S5.3轨迹时空缩点模块(5)如果找到匹配,则从最长匹配节点读取版本号,继续沿着节点查询子节点,如果有多个子节点,取版本号最大的子节点,一直读取到叶子节点,再把叶子节点的版本号与叶子节点对应的位置字符串计入到缩点列表,轨迹时空缩点模块(5)通过上述方式把定位设备处于绕圈与徘徊的情况下的各个时间段交叉轨迹点作为关键点保存进缩点列表;
S5.4轨迹时空缩点模块(5)继续从版本号为分片序号-1的字典树的根节点开始匹配,轨迹时空缩点模块(5)如果找到匹配,则继续把新找到版本号计入到缩点列表,重复上面流程直到找到所有的匹配点,把匹配点的版本号与位置字符串放到缩点列表;
S5.5若轨迹时空缩点模块(5)未能找到匹配点,则把中心点的位置字符串与分片序号放入缩点列表,若定位设备轨迹无交叉,则使用分片的中心点做为关键点保存进缩点列表;
S5.6轨迹时空缩点模块(5)把缩点列表发送给轨迹分层存储模块(6)。
8.根据权利要求2所述的一种基于分片字典树的GPS轨迹点压缩系统的使用方法,其特征在于,所述步骤S6还包括:
S6.1轨迹分层存储模块(6)接收轨迹点分片压缩模块(2)发送的轨迹点压缩分片并用于基础的轨迹线路存储,保留基于空间的压缩后的轨迹,用于查询短时间的呈现轨迹,如查询时间小于一天;
S6.2轨迹分层存储模块(6)接收轨迹时空缩点模块(5)发送的缩点列表;
S6.3轨迹分层存储模块(6)根据缩点列表取版本号,版本号代表分片序号,将版本号乘以分片时长得到分片时间;
S6.4轨迹分层存储模块(6)根据缩点信息的位置字符串,根据编码值与二进制值映射关系(编码值:0,1,2,3)得到位置二进制字符串,根据二进制数值的奇数位为经度值,位置二进制数值的偶数位为维度值,得到位置的经度维度值;
S6.5轨迹分层存储模块(6)结合缩点列表的分片时间与位置的经度维度值得到一个缩点信息的多个定位点的位置与时间;
S6.6轨迹分层存储模块(6)把所有缩点信息生成定位点,并且能够将定位点按照时间进行排序,作为基于时间和空间的压缩后的轨迹,用于查询长时间的呈现轨迹,如查询时间大于一天。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310517370.1A CN116910003A (zh) | 2023-05-06 | 2023-05-06 | 一种基于分片字典树的gps轨迹点压缩系统及其使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310517370.1A CN116910003A (zh) | 2023-05-06 | 2023-05-06 | 一种基于分片字典树的gps轨迹点压缩系统及其使用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116910003A true CN116910003A (zh) | 2023-10-20 |
Family
ID=88351736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310517370.1A Pending CN116910003A (zh) | 2023-05-06 | 2023-05-06 | 一种基于分片字典树的gps轨迹点压缩系统及其使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116910003A (zh) |
-
2023
- 2023-05-06 CN CN202310517370.1A patent/CN116910003A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112182410B (zh) | 基于时空轨迹知识图谱的用户出行模式挖掘方法 | |
CN108320501B (zh) | 基于用户手机信令的公交线路识别方法 | |
US9880012B2 (en) | Hybrid road network and grid based spatial-temporal indexing under missing road links | |
Zheng | Trajectory data mining: an overview | |
CN111212383B (zh) | 区域常住人口数量的确定方法、装置、服务器和介质 | |
US8108139B1 (en) | System and method for route representation with waypoint storage | |
CN108230020B (zh) | 一种基于多维时间粒度时空频繁区域挖掘的方法 | |
CN110334171A (zh) | 一种基于Geohash的时空伴随对象挖掘方法 | |
CN111522892B (zh) | 地理要素的检索方法及装置 | |
CN112817943B (zh) | 一种基于航位推测法的多阈值船舶轨迹简化方法 | |
CN107766433A (zh) | 一种基于Geo‑BTree的范围查询方法及装置 | |
CN103744861A (zh) | 一种轨迹数据中的频繁子轨迹查找方法及装置 | |
CN109471141A (zh) | 一种手机记录日常生活和运动轨迹的方法 | |
CN108446357A (zh) | 一种基于二维地理位置的海量数据空间范围查询方法 | |
CN108022006B (zh) | 一种数据驱动的可达性概率和区域生成方法 | |
CN105472333A (zh) | 视频监控设备拓扑系统的建立方法及关联监控方法 | |
CN112100308B (zh) | 一种北斗时空轨迹的相似性查询方法 | |
CN110555174B (zh) | 一种基于r树的轨迹路径推荐方法 | |
CN116910003A (zh) | 一种基于分片字典树的gps轨迹点压缩系统及其使用方法 | |
CN110518916B (zh) | 一种基于Fréchet距离的轨迹数据压缩方法 | |
CN109902139B (zh) | 一种基于r树的轨迹数据压缩方法 | |
CN104121917A (zh) | 一种自动发现新建桥梁的方法和装置 | |
CN114664104A (zh) | 一种路网匹配方法和装置 | |
TW201211509A (en) | Navigation devices | |
Zhao et al. | Integrated compression of vehicle spatio‐temporal trajectories under the road stroke network constraint |
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 |