[发明专利]基于LZW算法的GPS轨迹数据的压缩方法有效
申请号: | 201810920643.6 | 申请日: | 2018-08-14 |
公开(公告)号: | CN109286399B | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 赵钦佩;饶卫雄;史扬;李江峰 | 申请(专利权)人: | 同济大学 |
主分类号: | H03M7/30 | 分类号: | H03M7/30;G06F16/29 |
代理公司: | 上海科律专利代理事务所(特殊普通合伙) 31290 | 代理人: | 叶凤 |
地址: | 200092 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 lzw 算法 gps 轨迹 数据 压缩 方法 | ||
1.一种基于LZW算法的GPS轨迹数据的压缩方法,其特征在于:将传统的轨迹数据结合路网信息,通过地图匹配的办法将原始轨迹数据转化为使用路段序列表示的轨迹数据,之后为了便于处理,自定义一种编码规则将路段轨迹数据转化成文本类型的数据,最后利用LZW压缩算法对转化后的文本类型的轨迹数据进行压缩和解压缩;
包括如下步骤:
步骤1获取GPS轨迹数据
原始的GPS轨迹数据包括了时间戳(time)、位置坐标的经纬度(longitude和latitude)以及轨迹的ID(tid);
步骤2地图匹配
使用地图匹配的相关方法将步骤1获取的GPS轨迹数据映射到地图上得到了用路段序列表示的轨迹数据;
步骤3建立倒排表
通过步骤2地图匹配后,将轨迹表示成一个路段的序列p1→p2→…→pn,pn∈S,S是路网路段集合;以所有的路段的标号作为字符集,对路段的索引进行格式转换;为了处理的便利,需用建立倒查表,从路段倒查经过这个路段的所有轨迹的标号;
步骤4轨迹路段号的转换
由于步骤3中路段号定义为一个整数,为了便于压缩处理,我们自定义一种方法将其转化为字符串,因为一个字符为8位,不够存储所有的字段号,需要将路段号转化成更高位数的“字符”即多位字符串;
步骤5利用LZW算法进行压缩
将经过步骤4转化后的轨迹数据集合通过LZW算法进行压缩,从而实现了对轨迹数据的压缩功能;
压缩算法具体步骤如下:
步骤1.开始时字典是只包含所有标准字符集的初始字典;定义现码序列current_seq,后置码变量next_char,输出字符串变量output
步骤2.将需要压缩的字符串s中下一个带压缩字符赋值给后置码变量next_char
步骤3.当进入判断:current_seq+next_char是否在字典里
(1)如果“是”,则将current_seq+next_char赋值给current_seq
(2)如果“否”,则对current_seq进行编译后添加到输出变量output中,并把current_seq+next_char添加到字典里作为一个新的编码序列;最后把next_char赋值给current_seq
步骤4.当进入判断:字符串s是否全部被取出
(1)如果“是”,则对current_seq进行编译后添加到输出变量output中,输出output,压缩过程结束;
(2)如果“否”,返回步骤2
所述的解压缩算法具体步骤如下:
步骤1.开始时字典是只包含所有标准字符集的初始字典;定义前置码previous_code,现码current_code,输出变量output
步骤2.将需要解压的编码序列s中下一个带压缩字符赋值给前置码previous_code,通过字典解压后添加到output;
步骤3.当进入判断:编码序列s是否全部被解压
(1)如果“是”,获得解压结果output,解压过程结束
(2)如果“否”,则将s中下一个需要解压的编码赋值给current_code,并通过字典把current_code解压后添加到output;对previous_code进行解码后连同current_code解码后的第一个字符作为一个新的编码序列添加到字典中;把previous_code和current_code进行合并后储值给previous_code;返回步骤3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于同济大学,未经同济大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810920643.6/1.html,转载请声明来源钻瓜专利网。