CN102628948A - 用于批量发送通用航空器经纬位置数据的压缩方法 - Google Patents
用于批量发送通用航空器经纬位置数据的压缩方法 Download PDFInfo
- Publication number
- CN102628948A CN102628948A CN2012101024220A CN201210102422A CN102628948A CN 102628948 A CN102628948 A CN 102628948A CN 2012101024220 A CN2012101024220 A CN 2012101024220A CN 201210102422 A CN201210102422 A CN 201210102422A CN 102628948 A CN102628948 A CN 102628948A
- Authority
- CN
- China
- Prior art keywords
- data
- longitude
- latitude
- coding
- compression method
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种用于批量发送通用航空器经纬位置数据的压缩方法,其特征在于,其包括以下步骤:步骤一,根据实际情况确定经纬度和高度数据的精度,并根据确定的精度要求对数据进行截断处理;步骤二,对步骤一中经过截断处理的数据进行预测编码;步骤三,对步骤二中的数据进行霍夫曼编码;步骤四,霍夫曼编码结果生成压缩数据的数据头和压缩数据体;步骤五,数据的解压缩。本发明对北斗设备批量发送通用航空器的经纬位置和高度数据进行压缩,以保证每次发送经纬度位置和高度的同时仍能够正常发送50个汉字的信息。
Description
技术领域
本发明涉及一种压缩方法,特别是涉及一种用于批量发送通用航空器经纬位置数据的压缩方法。
背景技术
伴随着国家对航空工业大力支持,国家、民用对通用航空应用的迫切需求,通用航空市场蓬勃发展。然而对于通用航空器的用户和管理来说的定位和跟踪通用航空器是极其重要的,而我国自主研发的北斗系统非常适合进行通用航空器的定位和跟踪。但第一代民用北斗设备发送信息的间隔较长,且每次送数据的数量有限,因此使用民用北斗设备发送通用航空器经纬度信息急需相应的压缩算法,这是实现实时连续跟踪的必要条件。
北斗系统是我国自主研发的定位和通信系统,它不但可以进行定位,同时其通信功能可以允许用户发送数据。对于普通民用用户来说,每次发送信息的间隔至少为一分钟,且每次至多发送约两百个字节的数据。使用北斗的数据传输功能传输通用航空器的经纬度位置信息,可以实现对通用航空器的跟踪家监控,若用浮点数格式发送经纬度信息,每个浮点数由四个字节构成,一个经度或纬度或高度信息可由一个浮点数表示,因此一组位置和高度信息由12个字节构成,民用北斗一次发送的数据量为210字节,因此只能发送约17组数据,航空器经纬度位置的时间分辨率约为3秒,基本能满足监控的需求。
但是,通用航空器在使用北斗发送经纬位置和高度的同时也会发送文字短消息与地面通信,通常每次50个汉字(100个字节)左右的短消息基本能满足用户的需求,若能够在发送经纬度的同时也发送短消息,那么,每次只能发送9组经纬位置和高度数据,则经纬位置和高度数据的时间分辨率为7秒,这个间隔对于监控高速飞行的通用航空器来说,是不能满足需求的,而且文字信息是很难压缩的。
发明内容
本发明所要解决的技术问题是提供一种用于批量发送通用航空器经纬位置数据的压缩方法,其对北斗设备批量发送通用航空器的经纬位置和高度数据进行压缩,以保证每次发送经纬度位置和高度的同时仍能够正常发送50个汉字的信息。
本发明是通过下述技术方案来解决上述技术问题的:一种用于批量发送通用航空器经纬位置数据的压缩方法,其特征在于,其包括以下步骤:
步骤一,根据实际情况确定经纬度和高度数据的精度,并根据确定的精度要求对数据进行截断处理;
步骤二,对步骤一中经过截断处理的数据进行预测编码;
步骤三,对步骤二中的数据进行霍夫曼编码;
步骤四,霍夫曼编码结果生成压缩数据的数据头和压缩数据体;
步骤五,数据的解压缩。
优选地,所述步骤一中的截断处理是一个截尾操作。
优选地,所述步骤二中的预测编码是一种编码技术,它基于离散信号间相关性,利用前面一个或多个信号预测下一个信号,然后对实际值和预测值的差进行编码。
本发明的积极进步效果在于:本发明根据通用航空飞行器的性能特点和其发送的经纬度和高度信息的特点进行压缩,无需人工干预,完全自动完成,压缩效率高。本发明可以保证在批量传输高时间分辨率的经纬、高度数据的同时还能够发送文字信息。或者在不发送文字信息时,传送更高时间分辨率的若传输相同数量的数据经纬、高度数据,以便实现对航空器的精确的监控。
附图说明
图1为图1某型号直升机飞行时记录的一组经纬度和高度数据示意图。其中经纬度单位为度,高度单位为米,数据采样间隔为8秒。
图2对图1中的数据进行步骤一中的截断操作后的示意图,再进行步骤二中所述的预测编码后得到的结果。
图3对图2中的数据进行出现频率统计得到的结果示意图。
图4本实施例中霍夫曼编码的初始叶子节点示意图。
图5本实施例中霍夫曼编码第一次和第二次合并的情况示意图。
图6本实施例中得到的霍夫曼树示意图。
图7数据头、数据体和文字信息间的排列关系示意图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本发明用于批量发送通用航空器经纬位置数据的压缩方法包括以下步骤:
步骤一,根据实际情况确定经纬度和高度数据的精度,并根据确定的精度要求对数据进行截断处理;步骤一中的截断处理是一个截尾操作。例如,若要求经纬度精度为小数点后5位,那么第6位和第6位以后的数据全部舍弃,高度的精度若为米,那么米级以后的数据全部舍弃。
设数据为浮点数,精度为小数点后M位,则从小数点后第M+1位(包括M+1位)全部舍去,截断后对数据放大10M倍后转换成整数。设本例中使用的数据如图1所示,本实施例中经纬度精度为小数点后5位,高度精度为米级,那么对于经纬、高度数据中小数点后第6位(包括第6位)以后的数据可以认为是不需要的或者不准确的,进行舍弃。截断后将经度、纬度和高度数据扩大105倍后将数据转换为四字节表示的整数。
步骤二,对步骤一中经过截断处理的数据进行预测编码。步骤二中的预测编码是一种编码技术,它基于离散信号间相关性,利用前面一个或多个信号预测下一个信号,然后对实际值和预测值的差(误差)进行编码。若信号间的相关性较强,且采取的预测方法得当,那么预测误差会比较小,就可以用比较少的比特进行编码,进而达到数据压缩的目的。
设步骤一中经过截断处理的经度数据序列、纬度序列和高度序列分别为Jk,Wk,Hk(k=1,2,3,…,N,其中N为序列长度)。记Jk,Wk,Hk的一阶差分如式(1):
J′l=Ji-Ji-1;W′l=Wi-Wi-1;H′l=Hi-Hi-1……………………式(1)
其中l=1,2,…,N-1,i=2,3,…,N。
记Jk,Wk,Hk的二阶差分如式(2):
J″m=J′i-J′i-1;W″m=W′i-W′i-1;H″m=H′i-H′i-1,…………………式(2)
其中m=1,2,…,N-2,i=2,3,…,N-1。
保存J1,W1,H1的值,然后计算并保存J′1,W′1,H′1的值和J″m,W″m,H″m(m=1,2,…,N-2),其中J″m,W″m,H″m(m=1,2,…,N-2)分别为Jk,Wk,Hk的预测编码,这里使用的是二阶预测编码。对图1中的数据进行步骤一中的截断操作后,再进行步骤二中所述的预测编码后得到的结果如图2所示。
步骤三,对步骤二中的数据进行霍夫曼编码,根据压缩结果生成压缩数据的数据头。步骤三中的霍夫曼编码是一种编码技术,它是由Huffman于1952年提出的,它的基本原理是基于定理“在变长编码中,如果码字长度严格按照出现概率由大到小的顺序排列,则平均码字长度最小”。步骤三中的数据头是用于记录压缩编码关键信息的数据块,这些信息包括霍夫曼编码的码字,初始经纬、高度和其他一些状态信息等,这些是解码时所必须的。
将序列J″m,W″m,H″m(m=1,2,…,N-2)组合成一个序列dk(k=1,2,…,3N-6),具体如式(3):
dk=J″k(k=1,2,…,N-2);dk=W″k(k=N-1,N,…,2N-4);dk=H″k(k=2N-3,2N-2,…,3N-6)…………………式(3)
然后对序列dk(k=1,2,…,3N-6)进行霍夫曼编码。具体方法步骤如下:
1.统计序列dk中每个数值出现的频率(即出现的次数)。记dk中共有M个不同的值,这M个值按其值由小到大的顺序排列得到的序列为Rs(s=1,2,…,M),Rs是一个二维序列包括数值和对应数值出现的频率,记Rs(1)为数值,Rs(2)为数值出现的频率。本实施例中对图2中的数据进行处理得到的序列按值由小到大排列的得到的序列Rs如图3所示。记这M个值按出现频率由小到大排列的序列为Ds(s=1,2,…,M),Ds也是一个二维序列包括数值和对应数值出现的频率每个数值和该数值对应的频率,Ds的每一个单元作为一个叶子节点,这些叶子节点为霍夫曼编码的初始叶子节点,本实施例中霍夫曼编码的初始叶子节点如图4所示。
2.叶子节点中两个最小频率的节点合并为一个新节点,并将频率相加作为新节点的频率,并将该节点和其他节点一起新按照出现频率由大到小的顺序进行排列。合并时频率较高的节点作为右节点,频率较低的节点为左节点。图5给出了第一次和第二次合并的情况。
3.重复步骤2直到只剩下一个节点,作为根节点。最终获得的霍夫曼树如图6所示。经过上述步骤后得到一个霍夫曼树,记录叶子节点到根节点的路径,该路径上的左子树赋值“0”,右子树赋值“1”,按照由低位到高位的顺序排列,就是叶子节点所对应数值的霍夫曼编码的码字。例如,值-3的码字为0101;值-2的码字为00;值-1的码字为100;值0的码字为11;值1的码字为101;值2的码字为011;值3的码字为01001;值6的码字为01000;
步骤四,霍夫曼编码结果生成压缩数据的数据头和压缩数据体;
使用生成的码字对序列dk(k=1,2,…,3N-6)进行编码,即将dk(k=1,2,…,3N-6)的值兑换成对应的码字,记对序列dk(k=1,2,…,3N-6)编码后得到的序列为Tk(k=1,2,…,3N-6)。
下面介绍如何生成数据头。
数据头的前10位二进制位记为h0用于存储一个整数,该整数表示文字信息的起始位置。
正常飞行时通用航空器的在经度、维度和高度上的加速度不会超过0.8g(1g为一个重力加速度),因此若位置采样间隔时间为m秒时,在一个采样周期内航空器的加速度的变化范围为0到m*0.8g。在本实施例中采样间隔为8秒,因此,加速度变化范围为-64到64。数据头的前(为向上取整)二进制位(bit)初始时每一位均为0,这位记为h1。将h1的第(Rs(1)+64)位置1,(s=1,2,…,M)。例如,若R1(1)=-3则h1的第(-3+64)位为1;若R2(1)=-2则h1的第(-2+64)位为1。h1中1的个数等于霍夫曼编码码字的个数。
紧接着h1的是霍夫曼编码的码字信息,这一段数据头记为h2。一条码字信息包括码字长度和码字的二进制编码。码字信息的条数等于h1中1的个数。在本实施例中一条码字信息中的码字长度用6位二进制整数表示,在实际应用中应根据实际情况选择合适的二进制位数来表示码字长度,即选择在预测编码中最大可能出现的值的个数作为确定码字长度位数。紧接着码字长度的是码字的二进制编码。码字信息的排列的顺序与序列Rs(1)的顺序相对应。例如,若Rs(1)={-3;-2;-1;0;1;2;3;6}则,h2中码字信息的顺序是:值-3的码字信息、值-2的码字信息、值-1的码字信息、值0的码字信息、值为1的码字信息、值2的码字信息、值3的码字信息、值6的码字信息。
接着h2的是h3,h3存储J1,W1,H1,J′1,W′1,H′1。
接着h3的是数据体,数据体存储序列Tk(k=1,2,…,3N-6)。数据体后是文字消息。数据头和数据体的排列关系如图7所示。
步骤五,数据的解压缩。
从接收的数据读取h0,根据h0的数值在读取文字信息,从而完成解码文字信息。然后解码经纬、高度数据。读取h1,记录h1中二进制位1的数目K,则K为霍夫曼编码的个数。初始化变量S=0,扫描据头中的h1,若发现h1第i位为1,则S=S+1,然后从h2中读出第S个码字信息的码字长度,根据码字长度读出码字,该码字对应的数值为(S-64)×10-5,重复该步骤直到扫描结束,此时就得到了霍夫曼编码的码字和码字对应的数值。
使用得到的码字对数据体进行解码,即将数据体中的编码序列转换为数值序列,此时得到的数值即为序列dk(k=1,2,…,3N-6),根据(3)式将dk分别转换为序列J″m,W″m,H″m(m=1,2,…,N-2)。读取h3,还原J1,W1,H1,J′1,W′1,H′1的数值(注意:在压缩时由于将数据截断后放大了105倍,因此,J1,W1,H1,J′1,W′1,H′1在解压时数据也要相应缩小105倍)。然后根据式(1)和(2)就可以得到经度数据序列、纬度序列和高度序列Jk,Wk,Hk。
本实施例中对图1给出的数据进行压缩,数据头中h1长度为128个二进制位(bit),h2的长度(即8个霍夫曼码字和8个6位二进制整数)共计75个二进制位(bit),h3存储J1,W1,H1,H′1,J′1,W′1,其中J1,W1,H1,H′1,J′1,W′1为四字节整数,共192位(bit)。本实施例中压缩后的数据体长度为222位(bit),所以加上数据头总共需要617位(bit),约合78个字节(byte)就可以表示图1中的数据。而北斗一次传输数据可达210个字节,还剩余132个字节,除去需要传送的50个汉字(约100字节)的文字信息外,还剩余32个字节可供进行校验或者其它用途。
而若采用四字节浮点数发送图1中的数据则需要360个字节,这远远超出了北斗一次数据发送的最大限度,无法在发送经纬、高度数据的同时发送文字信息,更不用说进行校验了。这说明本发明具有良好的压缩效果并具有较强的实用性。
上述实施例不作为对本发明的限定,凡在本发明的范围内所作的任何修改、等同替换、改进等,均属于本发明的保护范围。
Claims (3)
1.一种用于批量发送通用航空器经纬位置数据的压缩方法,其特征在于,其包括以下步骤:
步骤一,根据实际情况确定经纬度和高度数据的精度,并根据确定的精度要求对数据进行截断处理;
步骤二,对步骤一中经过截断处理的数据进行预测编码;
步骤三,对步骤二中的数据进行霍夫曼编码;
步骤四,霍夫曼编码结果生成压缩数据的数据头和压缩数据体;
步骤五,数据的解压缩。
2.如权利要求1所述的用于批量发送通用航空器经纬位置数据的压缩方法,其特征在于,所述步骤一中的截断处理是一个截尾操作。
3.如权利要求1所述的用于批量发送通用航空器经纬位置数据的压缩方法,其特征在于,所述步骤二中的预测编码是一种编码技术,它基于离散信号间相关性,利用前面一个或多个信号预测下一个信号,然后对实际值和预测值的差进行编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101024220A CN102628948A (zh) | 2012-04-10 | 2012-04-10 | 用于批量发送通用航空器经纬位置数据的压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101024220A CN102628948A (zh) | 2012-04-10 | 2012-04-10 | 用于批量发送通用航空器经纬位置数据的压缩方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102628948A true CN102628948A (zh) | 2012-08-08 |
Family
ID=46587241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012101024220A Pending CN102628948A (zh) | 2012-04-10 | 2012-04-10 | 用于批量发送通用航空器经纬位置数据的压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102628948A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102841356A (zh) * | 2012-09-21 | 2012-12-26 | 中国航空无线电电子研究所 | 用于北斗发送通用航空器经纬位置数据的多模型压缩方法 |
CN103874017A (zh) * | 2014-01-20 | 2014-06-18 | 杭州承联通信技术有限公司 | 一种卫星定位数据传输方法 |
CN106131159A (zh) * | 2016-06-29 | 2016-11-16 | 电子科技大学 | 可控精度的地理位置信息压缩传输方法 |
CN109856651A (zh) * | 2019-03-13 | 2019-06-07 | 广东海聊科技有限公司 | 一种基于北斗系统的位置数据压缩方法及系统 |
TWI700908B (zh) * | 2019-07-30 | 2020-08-01 | 新加坡商雲網科技新加坡有限公司 | 調整封包長度的方法、行動裝置及電腦可讀儲存媒體 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1781253A (zh) * | 2003-06-20 | 2006-05-31 | 日本电信电话株式会社 | 浮点格式的数字信号的无损编码方法、解码方法及其装置和程序 |
CN1808068A (zh) * | 2006-01-27 | 2006-07-26 | 无锡市吉天通信科技有限公司 | 基于区域基准点的差分式地理位置信息编码算法 |
CN1948990A (zh) * | 2006-11-16 | 2007-04-18 | 北京尧天网迅科技有限公司 | 一种对gps定位信息进行压缩的方法 |
JP2007104543A (ja) * | 2005-10-07 | 2007-04-19 | Matsushita Electric Ind Co Ltd | 緯度経度データ列の圧縮装置及び圧縮方法 |
CN101895298A (zh) * | 2010-07-09 | 2010-11-24 | 东华大学 | 一种智能服装用的gps数据压缩方法 |
CN102156719A (zh) * | 2011-03-28 | 2011-08-17 | 武汉大学 | 全球导航系统的观测值文件编解码方法 |
-
2012
- 2012-04-10 CN CN2012101024220A patent/CN102628948A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1781253A (zh) * | 2003-06-20 | 2006-05-31 | 日本电信电话株式会社 | 浮点格式的数字信号的无损编码方法、解码方法及其装置和程序 |
JP2007104543A (ja) * | 2005-10-07 | 2007-04-19 | Matsushita Electric Ind Co Ltd | 緯度経度データ列の圧縮装置及び圧縮方法 |
CN1808068A (zh) * | 2006-01-27 | 2006-07-26 | 无锡市吉天通信科技有限公司 | 基于区域基准点的差分式地理位置信息编码算法 |
CN1948990A (zh) * | 2006-11-16 | 2007-04-18 | 北京尧天网迅科技有限公司 | 一种对gps定位信息进行压缩的方法 |
CN101895298A (zh) * | 2010-07-09 | 2010-11-24 | 东华大学 | 一种智能服装用的gps数据压缩方法 |
CN102156719A (zh) * | 2011-03-28 | 2011-08-17 | 武汉大学 | 全球导航系统的观测值文件编解码方法 |
Non-Patent Citations (4)
Title |
---|
任华新: "GPS定位数据压缩算法的设计", 《长春工程学院学报(自然科学版)》 * |
任维政等: "民用GPS数据准无损压缩算法", 《数据采集与处理》 * |
李彤等: "短消息传送GPS位置数据的高效数据压缩方法", 《装甲兵工程学院学报》 * |
杨宏业等: "GPS定位数据压缩算法的设计与实现", 《电子技术应用》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102841356A (zh) * | 2012-09-21 | 2012-12-26 | 中国航空无线电电子研究所 | 用于北斗发送通用航空器经纬位置数据的多模型压缩方法 |
CN103874017A (zh) * | 2014-01-20 | 2014-06-18 | 杭州承联通信技术有限公司 | 一种卫星定位数据传输方法 |
CN103874017B (zh) * | 2014-01-20 | 2017-07-28 | 杭州承联通信技术有限公司 | 一种卫星定位数据传输方法 |
CN106131159A (zh) * | 2016-06-29 | 2016-11-16 | 电子科技大学 | 可控精度的地理位置信息压缩传输方法 |
CN106131159B (zh) * | 2016-06-29 | 2019-02-22 | 电子科技大学 | 可控精度的地理位置信息压缩传输方法 |
CN109856651A (zh) * | 2019-03-13 | 2019-06-07 | 广东海聊科技有限公司 | 一种基于北斗系统的位置数据压缩方法及系统 |
TWI700908B (zh) * | 2019-07-30 | 2020-08-01 | 新加坡商雲網科技新加坡有限公司 | 調整封包長度的方法、行動裝置及電腦可讀儲存媒體 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116192971B (zh) | 智能云能源运维服务平台数据管理方法 | |
CN102628948A (zh) | 用于批量发送通用航空器经纬位置数据的压缩方法 | |
Shannon | A mathematical theory of communication | |
Permuter et al. | Source coding with a side information “Vending Machine” | |
CN104040592A (zh) | 预测位置编码 | |
CN111865493A (zh) | 数据处理方法及相关设备 | |
CN104065470A (zh) | 一种混沌无线通信及发送编码方法 | |
CN102082662B (zh) | 基于同步随机数信息库信息检索的量子安全通信方法 | |
CN102298137A (zh) | 自适应数据率星载sar原始数据压缩方法 | |
CN101202548A (zh) | 一种双游程数据编码方法 | |
CN108810553A (zh) | 一种基于稀疏化处理的移动节点监测数据序列压缩方法 | |
CN101469989B (zh) | 一种手机网络导航中导航数据的压缩方法 | |
CN102841356A (zh) | 用于北斗发送通用航空器经纬位置数据的多模型压缩方法 | |
CN103227644A (zh) | 一种针对汽车车身小格式数据的压缩方法 | |
CN112737597A (zh) | 一种适用于深空通信的可变帧长的多速率ldpc编码方法 | |
CN102195743B (zh) | 动态实时喷泉码编码方案 | |
CN116033034B (zh) | 一种无线收发平台用数据处理系统 | |
CN107276720A (zh) | 一种基于删余极化码特性的北斗导航电文编码方法 | |
US8325850B2 (en) | System and method for digital communications with unbalanced codebooks | |
CN104021121A (zh) | 一种文本数据压缩方法、装置及服务器 | |
CN101662292B (zh) | 一种交织器的确定方法及装置 | |
CN202121594U (zh) | 基于同步随机数信息库信息检索的量子安全通信系统 | |
CN105933264A (zh) | 等功率分配超奈奎斯特传输方法 | |
CN102571101A (zh) | 输电线路故障行波数据压缩方法 | |
CN105490683B (zh) | 保存范式哈夫曼树的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120808 |