CN110083599A - 一种基于时空插值的车辆轨迹数据索引方法 - Google Patents
一种基于时空插值的车辆轨迹数据索引方法 Download PDFInfo
- Publication number
- CN110083599A CN110083599A CN201910243372.XA CN201910243372A CN110083599A CN 110083599 A CN110083599 A CN 110083599A CN 201910243372 A CN201910243372 A CN 201910243372A CN 110083599 A CN110083599 A CN 110083599A
- Authority
- CN
- China
- Prior art keywords
- track
- time
- data
- point
- interpolation
- 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.)
- Granted
Links
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Navigation (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明公开了一种基于时空插值的车辆轨迹数据索引方法,包括步骤:1)提取不重复的车辆标识符集合;2)将原始轨迹按车辆标识符组织成有序轨迹序列;3)对每辆车的有序轨迹序列进行时空状态插值。本发明根据用户指定的时间粒度,将当前轨迹数据进行插值后写入索引结构,使得索引后的数据可快速查询且占用更小的空间。本发明能够较好的对原始数据进行重组,时间复杂度为O(n),在索引创建时间、查询时间、占用空间上优于MySQL商业数据库。
Description
技术领域
本发明属于大数据技术领域,具体涉及一种基于时空插值的车辆轨迹数据索引方法。
背景技术
车辆轨迹大数据其具有数据庞大、无序、异频采样等特点,如不进行有序组织,查询时间将不可控。因此,分析海量轨迹数据需要解决存储和检索效率问题。在现实轨迹数据的分析中,不同场景需要不同的采样时间粒度,而当前没有可以兼容不同应用场景下的索引方法。同时,海量数据的存储成本也是一个问题。
发明内容
为了较好的针对海量轨迹数据进行存储和查询,本发明的目的是提供一种基于时空插值的车辆轨迹数据索引方法,该方法能够提高数据存储和查询效率。
实现本发明目的的具体技术方案是:
一种基于时空插值的车辆轨迹数据索引方法,该方法包括以下具体步骤:
步骤1:提取不重复的车辆标识符集合
a)定义存储不重复的车辆标识符数组Array;
b)遍历原始数据,得到一条轨迹数据时进行判断:若该轨迹数据满足如下条件任意一个,进行剔除,然后进入c);
同一辆车,当天位置没有发生移动或状态未发生变化;
当前轨迹数据不在已知目标区域的空间范围、时间范围内;
缺失了车辆编号、经纬度、载客状态字段中的一个;
c)获取该条轨迹数据的车辆标识符carID;若该标识符已存在于数组Array中,则读取下一条轨迹数据,若标识符不存在于数组Array中,则将该ID加入Array中;
步骤2:将原始轨迹按车辆标识符组织成有序轨迹序列
a)定义车辆标识符与其轨迹点的轨迹序列carIDwithInfo,即为不同车辆开辟存储空间;
b)遍历原始数据,获取轨迹数据的车辆标识符carID,并将该轨迹数据存储插入轨迹序列carIDwithInfo,也就是插入该carID对应的存储空间;
步骤3:对每辆车的有序轨迹序列进行时间、空间、状态插值
a)输入时间粒度tu;
b)遍历轨迹序列carIDwithInfo,每次获得一个车辆的轨迹点集VT(i);
c)遍历单个车辆的轨迹点集VT(i),在第j次迭代时比较VT(i)[j]和VT(i)[j+1]的GPS时间差,j为轨迹点集VT(i)的长度;
d)判断前后两个轨迹点的时间间隔是否大于时间粒度:若大于时间粒度则对前后轨迹数据进行插值,得到插值点的位置、状态;若小于时间粒度则剔除数据;插值产生的点个数通过公式(1)确定,插值方法如公式(2)~(5)所示;根据前后两个原始轨迹点的信息插值得到n个点;
samplePoint.Time=preTime+i*tu (2)
samplePoint.state=preState (5)
其中,postTime表示VT(i)[j+1]轨迹点的GPS时间,preTime表示VT(i)[j]轨迹点的GPS时间,samplePoint.Time表示插值点的GPS时间,samplePoint.X、samplePoint.Y表示插值点处的经纬度,samplePoint.state表示插值点的载客状态,preX、preY表示VT(i)[j]轨迹点的经纬度,postX,postY表示VT(i)[j+1]轨迹点的经纬度。
现有技术无可以兼容不同应用场景下的索引方法。同时,也没有技术同时优化海量数据的查询速度和存储成本。本发明弥补了兼容不同应用场景的索引方法的空缺,对于用户来讲,可以快速的完成索引构建,提高轨迹查询的效率,减小了存储陈本。此外,本发明也可以对行人产生的轨迹数据进行索引构建。
附图说明
图1为本发明流程图;
图2为本发明实施例的流程图。
具体实施方式
本发明涉及的一种基于时空插值的车辆轨迹数据索引方法,具体实施方式说明如下:
首先结合附图说明本发明的整个流程,如图1所示,本发明包括以下步骤:
步骤1:提取不重复的车辆标识符集合
对原始轨迹数据的车辆标识符进行提取,是因为获取了不重复的车辆标识符后,就可以为每个车辆开辟存储空间,并将原始无序数据组织成有序数据,从而实现轨迹大数据的高效存储与查询。
步骤2:将原始轨迹按车辆标识符组织成有序轨迹序列
对原始数据进行插值前,需要将数据量庞大、无序、异频采样的原始数据按车辆标识符组织成有序轨迹序列。首先为不同车辆开辟存储空间,即定义车辆标识符与其轨迹点的轨迹序列carIDwithInfo。然后遍历原始数据,获取该条轨迹数据的车辆标识符carID,并将该轨迹数据存储插入轨迹序列carIDwithInfo,也就是插入该carID对应的存储空间。
步骤3:对每辆车的有序轨迹序列进行时间、空间、状态插值
遍历步骤2得到的有序轨迹序列,根据用户输入的时间粒度tu,判断前后两轨迹点时间间隔是否大于时间粒度:若大于时间粒度则对前后轨迹数据进行插值,得到采样点的位置、状态;若小于时间粒度则剔除数据。定义原始轨迹VT={vt_c|vt_c={carID,x,y,time,state}},则根据如下公式计算出第i个(i≤n)插值点处的位置、GPS时间、状态等信息。
samplePoint.Time=preTime+i*tu (2)
samplePoint.state=preState (5)
samplePoint.X、samplePoint.Y表示插值点处的经纬度,preX、prwY表示位于插值时间前一个原始轨迹点的经纬度,postX,postY表示位于后一个原始轨迹点的经纬度,sampleTime表示采样时间,preTime表示位于前一个原始轨迹点的GPS时间,postTime表示时间后一个原始轨迹点的GPS时间。插值产生的点个数通过公式(1)确定,插值方法如公式(2)~(5)所示。根据前后两个原始轨迹点相关信息插值得到n个点。
所述提取不重复的车辆标识符集合包含以下子步骤:
1)轨迹数据预处理
因为部分车辆的GPS定位模块可能存在故障,GPS信号可能在汽车行驶途中被遮挡,再加上对流层对GPS信号的折射作用,原始轨迹数据不可避免存在误差,所以对原始数据进行预处理很有必要,预处理操作主要包括异常规则定义、数据清洗等。
2)获取该条轨迹数据的车辆标识符carID
若该标识符已存在于数组Array中,则读取下一条轨迹数据,若标识符不存在于数组Array中,则将该ID加入Array中。
实施例
参阅图2,本实施例具体包括:
步骤1:输入原始轨迹数据,进行轨迹预处理以后提取不重复的车辆标识符集合Array。假设示例轨迹数据VT={vt_c|vt_c={carID,time,x,y,state}}为["001,2016-08-01 00:01:00,20,20,Vacant","002,2016-08-01 00:00:50,20,20,Vacant","001,2016-08-01 00:01:30,20,20,Vacant","002,2016-08-01 00:02:50,40,30,Vacant","001,2016-08-01 00:02:30,30,40,Vacant","001,2016-08-01 00:03:10,30,40,Vacant"],则去重后得到Array["001","002"]。
步骤2:将原始轨迹按车辆标识符组织成有序轨迹序列。对原始数据进行插值前,需要将数据量庞大、无序、异频采样的原始数据按车辆标识符组织成有序轨迹序列。首先为不同车辆开辟存储空间,即定义车辆标识符与其轨迹点的轨迹序列carIDwithInfo。然后遍历原始数据,获取该条轨迹数据的车辆标识符carID,并将该轨迹数据存储插入轨迹序列carIDwithInfo,也就是插入该carID对应的存储空间。最终得到carIDwithInfo为{"001"->["001,2016-08-01 00:01:00,20,20,Vacant","001,2016-08-01 00:01:30,20,20,Vacant","001,2016-08-01 00:02:30,30,40,Vacant","001,2016-08-01 00:03:10,30,40,Vacant"],"002"->["002",2016-08-01 00:00:50,20,20,Vacant","002,2016-08-0100:02:50,40,30,Vacant"]}
步骤3:假设用户输入时间粒度为60s,遍历步骤2得到的有序轨迹序列,对每辆车的有序轨迹序列进行时间、空间、状态插值,输出索引后数据。以002车辆数据为例,前后两个点的时间差为postTime-preTime="2016-08-01 00:02:50"-"2016-08-01 00:00:50"=120s,插值时间粒度为60s,故需插入2个点。第一个插值点的GPS时间为samplePoint.Time=preTime+n*tu=2016-08-01 00:01:00,经度为: 纬度为: 载客状态为:samplePoint.state=preState=Vacant。同理可得第二个插值点的GPS时间、经纬度、载客状态。最终得到示例数据索引后数据为:["001,25,30,2016-08-01 0:02:00,Vacant","001,30,40,2016-08-01 0:03:00,Vacant","002,21.6667,20.8333,2016-08-01 0:01:00,Vacant","002,31.667,25.8333,2016-08-01 0:02:00,Vacant"]。
Claims (1)
1.一种基于时空插值的车辆轨迹数据索引方法,其特征在于,该方法包括以下具体步骤:
步骤1:提取不重复的车辆标识符集合
a)定义存储不重复的车辆标识符数组Array;
b)遍历原始数据,得到一条轨迹数据时进行判断:若该轨迹数据满足如下条件任意一个,进行剔除,然后进入c);
同一辆车,当天位置没有发生移动或状态未发生变化;
当前轨迹数据不在已知目标区域的空间范围、时间范围内;
缺失了车辆编号、经纬度、载客状态字段中的一个;
c)获取该条轨迹数据的车辆标识符carID;若该标识符已存在于数组Array中,则读取下一条轨迹数据,若标识符不存在于数组Array中,则将该ID加入Array中;
步骤2:将原始轨迹按车辆标识符组织成有序轨迹序列
a)定义车辆标识符与其轨迹点的轨迹序列carIDwithInfo,即为不同车辆开辟存储空间;
b)遍历原始数据,获取轨迹数据的车辆标识符carID,并将该轨迹数据存储插入轨迹序列carIDwithInfo,也就是插入该carID对应的存储空间;
步骤3:对每辆车的有序轨迹序列进行时间、空间、状态插值
a)输入时间粒度tu;
b)遍历轨迹序列carIDwithInfo,每次获得一个车辆的轨迹点集VT(i);
c)遍历单个车辆的轨迹点集VT(i),在第j次迭代时比较VT(i)[j]和VT(i)[j+1]的GPS时间差,j为轨迹点集VT(i)的长度;
d)判断前后两个轨迹点的时间间隔是否大于时间粒度:若大于时间粒度则对前后轨迹数据进行插值,得到插值点的位置、状态;若小于时间粒度则剔除数据;插值产生的点个数通过公式(1)确定,插值方法如公式(2)~(5)所示;根据前后两个原始轨迹点的信息插值得到n个点;
samplePoint.Time=preTime+i*tu (2)
samplePoint.state=preState (5)
其中,postTime表示VT(i)[j+1]轨迹点的GPS时间,preTime表示VT(i)[j]轨迹点的GPS时间,samplePoint.Time表示插值点的GPS时间,samplePoint.X、samplePoint.Y表示插值点处的经纬度,samplePoint.state表示插值点的载客状态,preX、preY表示VT(i)[j]轨迹点的经纬度,postX,postY表示VT(i)[j+1]轨迹点的经纬度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910243372.XA CN110083599B (zh) | 2019-03-28 | 2019-03-28 | 一种基于时空插值的车辆轨迹数据索引方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910243372.XA CN110083599B (zh) | 2019-03-28 | 2019-03-28 | 一种基于时空插值的车辆轨迹数据索引方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110083599A true CN110083599A (zh) | 2019-08-02 |
CN110083599B CN110083599B (zh) | 2023-06-23 |
Family
ID=67413828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910243372.XA Active CN110083599B (zh) | 2019-03-28 | 2019-03-28 | 一种基于时空插值的车辆轨迹数据索引方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110083599B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143497A (zh) * | 2019-12-23 | 2020-05-12 | 北京明略软件系统有限公司 | 一种轨迹数据处理方法、装置和电子设备 |
CN113891234A (zh) * | 2020-06-16 | 2022-01-04 | 大众问问(北京)信息科技有限公司 | 一种轨迹数据补全方法、装置、计算机设备和存储介质 |
CN114510533A (zh) * | 2022-01-06 | 2022-05-17 | 北京中交兴路车联网科技有限公司 | 一种事故还原方法、装置、电子设备和存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103278833A (zh) * | 2013-05-13 | 2013-09-04 | 深圳先进技术研究院 | 一种基于北斗/gps数据的线路推荐系统及方法 |
CN103714185A (zh) * | 2014-01-17 | 2014-04-09 | 武汉大学 | 主题事件更新方法库及城市多源时空信息并行更新方法 |
CN104516955A (zh) * | 2014-12-16 | 2015-04-15 | 北京中交兴路车联网科技有限公司 | 一种海量车机轨迹数据的存储方法 |
CN106202137A (zh) * | 2015-12-29 | 2016-12-07 | 北京市交通信息中心 | 一种车辆定位方法及装置 |
CN107291842A (zh) * | 2017-06-01 | 2017-10-24 | 武汉理工大学 | 基于轨迹编码的轨迹查询方法 |
CN107770744A (zh) * | 2017-09-18 | 2018-03-06 | 上海世脉信息科技有限公司 | 大数据环境下出行od节点识别和节点间路径提取方法 |
CN108806335A (zh) * | 2018-05-29 | 2018-11-13 | 大连海事大学 | 一种基于ais轨迹大数据的船舶交通环境重构方法 |
CN108874979A (zh) * | 2018-06-08 | 2018-11-23 | 天泽信息产业股份有限公司 | 一种基于时空范围约束的可疑车辆发现算法 |
CN108959581A (zh) * | 2018-07-09 | 2018-12-07 | 常州铂沃尔智能科技有限公司 | 一种面向时空融合分析的电力设备状态数据处理方法 |
CN109005512A (zh) * | 2018-06-26 | 2018-12-14 | 西北工业大学 | 一种面向特定时间间隔的位置预测方法 |
CN109165215A (zh) * | 2018-07-27 | 2019-01-08 | 苏州视锐信息科技有限公司 | 一种云环境下时空索引的构建方法、装置及电子设备 |
CN109190656A (zh) * | 2018-07-16 | 2019-01-11 | 浙江大学 | 一种低采样定位环境下的室内语义轨迹标注和补全方法 |
-
2019
- 2019-03-28 CN CN201910243372.XA patent/CN110083599B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103278833A (zh) * | 2013-05-13 | 2013-09-04 | 深圳先进技术研究院 | 一种基于北斗/gps数据的线路推荐系统及方法 |
CN103714185A (zh) * | 2014-01-17 | 2014-04-09 | 武汉大学 | 主题事件更新方法库及城市多源时空信息并行更新方法 |
CN104516955A (zh) * | 2014-12-16 | 2015-04-15 | 北京中交兴路车联网科技有限公司 | 一种海量车机轨迹数据的存储方法 |
CN106202137A (zh) * | 2015-12-29 | 2016-12-07 | 北京市交通信息中心 | 一种车辆定位方法及装置 |
CN107291842A (zh) * | 2017-06-01 | 2017-10-24 | 武汉理工大学 | 基于轨迹编码的轨迹查询方法 |
CN107770744A (zh) * | 2017-09-18 | 2018-03-06 | 上海世脉信息科技有限公司 | 大数据环境下出行od节点识别和节点间路径提取方法 |
CN108806335A (zh) * | 2018-05-29 | 2018-11-13 | 大连海事大学 | 一种基于ais轨迹大数据的船舶交通环境重构方法 |
CN108874979A (zh) * | 2018-06-08 | 2018-11-23 | 天泽信息产业股份有限公司 | 一种基于时空范围约束的可疑车辆发现算法 |
CN109005512A (zh) * | 2018-06-26 | 2018-12-14 | 西北工业大学 | 一种面向特定时间间隔的位置预测方法 |
CN108959581A (zh) * | 2018-07-09 | 2018-12-07 | 常州铂沃尔智能科技有限公司 | 一种面向时空融合分析的电力设备状态数据处理方法 |
CN109190656A (zh) * | 2018-07-16 | 2019-01-11 | 浙江大学 | 一种低采样定位环境下的室内语义轨迹标注和补全方法 |
CN109165215A (zh) * | 2018-07-27 | 2019-01-08 | 苏州视锐信息科技有限公司 | 一种云环境下时空索引的构建方法、装置及电子设备 |
Non-Patent Citations (1)
Title |
---|
周伟峰: "交通网移动对象的索引技术及查询算法的研究与实现" * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143497A (zh) * | 2019-12-23 | 2020-05-12 | 北京明略软件系统有限公司 | 一种轨迹数据处理方法、装置和电子设备 |
CN113891234A (zh) * | 2020-06-16 | 2022-01-04 | 大众问问(北京)信息科技有限公司 | 一种轨迹数据补全方法、装置、计算机设备和存储介质 |
CN114510533A (zh) * | 2022-01-06 | 2022-05-17 | 北京中交兴路车联网科技有限公司 | 一种事故还原方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110083599B (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110083599A (zh) | 一种基于时空插值的车辆轨迹数据索引方法 | |
CN103106280B (zh) | 一种道路网络环境下不确定时空轨迹数据的范围查询方法 | |
CN109961106B (zh) | 轨迹分类模型的训练方法和装置、电子设备 | |
CN108268581A (zh) | 知识图谱的构建方法及装置 | |
CN109887272B (zh) | 一种交通人流量的预测方法及装置 | |
CN105389985B (zh) | 一种基于手机传感器的智能驾驶行为分析方法 | |
CN113514821B (zh) | 基于时变时差的定位方法、装置和系统 | |
EP4012342B1 (en) | Data processing method and device | |
CN109472021A (zh) | 基于深度学习的医学文献中关键句筛选方法及装置 | |
CN109982361A (zh) | 信号干扰分析方法、装置、设备及介质 | |
CN114265833A (zh) | 车辆轨迹引导地理时空特征可视化分析平台 | |
CN108566620A (zh) | 一种基于wifi的室内定位方法 | |
CN116010838A (zh) | 一种融合密度值和K-means算法的车辆轨迹聚类方法 | |
CN116257663A (zh) | 面向无人地面车辆的异常检测与关联分析方法及相关设备 | |
CN110276563A (zh) | 一种基于支持向量机模型的交通方式换乘行为识别方法 | |
CN109783381A (zh) | 一种测试数据生成方法、装置及系统 | |
CN113407559A (zh) | 更新方法、装置及计算机存储介质 | |
CN112200832B (zh) | 一种运动轨迹数据的去噪方法及装置 | |
CN110413662B (zh) | 一种多通道式经济数据输入系统、采集系统与方法 | |
CN106652065B (zh) | 一种获取车型不符obu的方法和系统 | |
Zhang et al. | Trajectory data compression algorithm based on motion state changing | |
CN110765222B (zh) | 一种基于Geohash编码的兴趣点自驾热度计算方法和平台 | |
CN110593864A (zh) | 一种利用核磁-声波流体识别的方法和装置 | |
CN109870163A (zh) | 一种基于拓扑地图多模型的建图系统 | |
Zhang | Based on YOLO v3 Target Recognition Algorithm as Vehicle Tracking Algorithm Analysis |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |