一种用于云端服务器连接的路由器数据处理方法与流程

文档序号:34023936发布日期:2023-05-05 06:09阅读:36来源:国知局
一种用于云端服务器连接的路由器数据处理方法与流程

本发明涉及数据压缩,具体涉及一种用于云端服务器连接的路由器数据处理方法。


背景技术:

1、现有蓝牙路由器基本上是基于spp协议(serial port profile)与设备进行连接,使得蓝牙路由器向云端服务器传输数据时,消耗的功耗大,造成数据传输效率低;为了提高数据传输效率,通过lz77编码对路由器数据进行压缩,减少路由器数据的数据量,基于压缩后的路由器数据进行传输,传输效率高。

2、但是lz77编码本身是通过数据的相关性实现高效压缩,对于相关性较小的路由器数据,压缩率较低,需要通过增加路由器数据的相关性,进而增加路由器数据的压缩效率。

3、本专利提出了一种用于云端服务器连接的路由器数据处理方法,通过计算路由器数据序列中所有高频字符的排列组合的优选度,获得代表排列组合,根据代表排列组合将路由器数据序列转换为相关性较大的替换序列和游程长度较长的补偿序列,达到增大路由器数据相关性的目的,从而得到更高的压缩率。


技术实现思路

1、本发明提供一种用于云端服务器连接的路由器数据处理方法,以解决现有的问题。

2、本发明的一种用于云端服务器连接的路由器数据处理方法采用如下技术方案:

3、本发明一个实施例提供了一种用于云端服务器连接的路由器数据处理方法,该方法包括以下步骤:

4、将蓝牙路由器向云端服务器传输的数据包记为路由器数据序列,获取字符顺序序列;

5、根据获取高频字符的方法获得路由器数据序列的所有种高频字符,根据路由器数据序列的所有高频字符获得所有字符区间,根据获取高频字符的方法获得每个字符区间的所有种高频字符;

6、对于任意一个字符区间,根据最小数值以及字符区间的所有种高频字符的数量,获得字符区间的排列长度的取值范围,将排列长度的取值范围内的任意一个整数作为目标排列长度,根据字符区间的所有种高频字符获得目标排列长度对应的所有排列组合,根据字符顺序序列获取两个排列组合的位置差序列,根据位置差序列计算目标排列长度对应的每种排列组合的优选度,将最大的优选度对应的排列组合作为目标排列长度对应的最优排列组合;

7、获得字符区间的所有排列长度对应的最优排列组合,根据所有排列长度对应的最优排列组合获取字符区间的所有代表排列长度和代表排列组合,根据所有代表排列长度和代表排列组合获得字符区间的所有已匹配子串和待匹配子串;

8、重复获取待匹配子串的匹配排列组合操作,获取待匹配子串的所有匹配排列组合;获得每个待匹配子串的所有匹配排列组合与每个待匹配子串的位置差序列,获得每个已匹配子串与对应的最优排列组合的位置差序列,将所有待匹配子串的所有匹配排列组合与所有已匹配子串按照顺序组成的序列记为字符区间的替换序列,将所有待匹配子串和所有已匹配子串的位置差序列按照顺序组成的序列记为字符区间的补偿序列;

9、将所有字符区间的所有替换序列组成的序列记为路由器数据序列的替换序列,将所有字符区间的所有补偿序列组成的序列记为路由器数据序列的补偿序列,对替换序列和补偿序列进行压缩,得到路由器数据序列的压缩结果。

10、进一步地,所述获取高频字符的方法,包括的具体步骤如下:

11、统计得到序列中的所有种字符的频率,按照频率从小到大的顺序,根据所有种字符的频率获得序列的字符频率直方图,通过otsu阈值分割方法对序列的字符频率直方图进行阈值分割,获得阈值,将字符频率直方图的横轴上的所有字符中,位于阈值右侧的每个字符作为序列的高频字符。

12、进一步地,所述根据路由器数据序列的所有高频字符获得所有字符区间,包括的具体步骤如下:

13、将任意一种高频字符作为目标高频字符,将路由器数据序列中所有目标高频字符设置为1,将路由器数据序列中除目标高频字符外的其他字符设置为0,获得目标高频字符对应的二值序列,对目标高频字符对应的二值序列进行密度聚类,获得目标高频字符的若干个密度区间;获得路由器数据序列中每种高频字符的若干个密度区间;

14、获得每个密度区间的第一个字符和最后一个字符在路由器数据序列中的位置,获得所有密度区间对应的位置按照从小到大的顺序组成的序列,对序列进行去重操作,将去重后的序列记为位置序列,根据位置序列将路由器数据序列划分为多个区间,将每个区间记为字符区间。

15、进一步地,所述根据字符区间的所有种高频字符获得目标排列长度对应的所有排列组合,包括的具体步骤如下:

16、将字符区间的所有种高频字符中的任意目标排列长度种高频字符组成的一种排列组合作为字符区间的目标排列长度对应的一种排列组合,获得字符区间的目标排列长度对应的所有排列组合。

17、进一步地,所述根据字符顺序序列获取两个排列组合的位置差序列,包括的具体步骤如下:

18、将第二个排列组合中第i个字符与第一个排列组合中第i个字符在字符顺序序列中的位置值的差,记为第二个排列组合中第i个字符与第一个排列组合中第i个字符的位置差,将第二个排列组合中所有字符与第一个排列组合中对应字符的位置差组成的序列记为位置差序列。

19、进一步地,所述根据位置差序列计算目标排列长度对应的每种排列组合的优选度,包括的具体步骤如下:

20、获得字符区间中所有相邻的目标排列长度个字符组成的子序列,将所有子序列组成的集合记为字符区间的目标排列长度对应的子序列集合,字符区间的长度为l,目标排列长度为,则子序列集合中共有个字序列;

21、目标排列长度对应的任意一种排列组合作为目标排列组合,将目标排列长度对应的所有排列组合中的剩余的排列组合作为非目标排列组合,目标排列组合的优选度的计算公式为:

22、

23、式中,表示目标排列组合的优选度,r表示目标排列长度对应的所有种排列组合的数量,表示第i个非目标排列组合在字符区间的目标排列长度对应的子序列集合中的频数,表示字符区间的长度,表示目标排列长度,表示目标排列组合与第i个非目标排列组合的位置差序列的信息熵。

24、进一步地,所述根据所有排列长度对应的最优排列组合获取字符区间的所有代表排列长度和代表排列组合,包括的具体步骤如下:

25、按照排列长度从小到大的顺序,依次将字符区间的每个排列长度作为目标排列长度,将除目标排列长度外剩余所有排列长度作为非目标排列长度,判断目标排列长度对应的最优排列组合是否为任意一个非目标排列长度对应的最优排列组合的子集:如果目标排列长度对应的最优排列组合不是任意一个非目标排列长度对应的最优排列组合的子集,则将目标排列长度保留,对下一个排列长度进行判断;否则,将其中排列长度最长的非目标排列长度保留,将目标排列长度以及剩余多个非目标排列长度去除,对下一个排列长度进行判断;

26、将最终保留的多个排列长度记为代表排列长度,按照从大到小的顺序依次记为第一代表排列长度、第二代表排列长度、…、第s代表排列长度,s表示最终保留的多个排列长度的数量,将代表排列长度对应的最优排列组合记为代表排列组合。

27、进一步地,所述根据所有代表排列长度和代表排列组合获得字符区间的所有已匹配子串和待匹配子串,包括的具体步骤如下:

28、按照从左到右的顺序,获得字符区间中与所有代表排列长度对应的最优排列组合相同的所有已匹配子串,将字符区间中剩余的所有字符组成的所有子串记为待匹配子串;

29、根据所有代表排列长度和代表排列组合获得字符区间的所有已匹配子串和待匹配子串。

30、进一步地,所述获取待匹配子串的匹配排列组合操作,包括的具体步骤如下:

31、获取待匹配子串的匹配排列组合的方法为:获取字符区间中前第一代表排列长度个字符组成的序列,获取第一代表排列长度对应的最优排列组合与该序列的位置差序列,如果位置差序列的熵为0,则将第一代表排列长度对应的最优排列组合作为待匹配子串的匹配排列组合,去除待匹配子串中前第一代表排列长度个字符;否则,获取字符区间中前第二代表排列长度个字符组成的序列,获取第二代表排列长度对应的最优排列组合与该序列的位置差序列,如果位置差序列的熵为0,则将第二代表排列长度对应的最优排列组合作为待匹配子串的匹配排列组合,去除待匹配子串中前第二代表排列长度个字符;依次类推,获取字符区间中前第s代表排列长度个字符组成的序列,获取第二代表排列长度对应的最优排列组合与该序列的位置差序列,如果位置差序列的熵为0,则将第s代表排列长度对应的最优排列组合作为待匹配子串的匹配排列组合,去除待匹配子串中前第s代表排列长度个字符,否则,将待匹配子串的第一个字符作为待匹配子串的匹配排列组合,去除待匹配子串中第一个字符。

32、本发明的技术方案的有益效果是:本发明通过获取路由器数据序列中所有高频字符,获得所有高频字符组成的不同排列长度对应的所有排列组合,结合排列组合的频率和对应的位置差序列的信息熵计算每个排列组合的优选度,进而获得代表排列组合,通过将字符区间中的所有字符串转换为代表排列组合和位置差序列,用代表排列组合组成的替换序列和位置差序列组成的补偿序列表示字符区间,根据优选度获得的代表排列组合保证了替换序列中代表排列组合组成的频率大,且补偿序列中的游程长,根据代表排列组合将路由器数据序列转换为相关性较大的替换序列和游程长度较长的补偿序列,达到增大路由器数据相关性的目的,则分别用lz77和游程编码对替换序列和补偿序列进行压缩,提高路由器数据的压缩效率,进而提高蓝牙路由器的传输效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1