发明内容
为解决现有技术中的上述不足,本发明提供了一种自适应实时频谱数据压缩方法及系统。
为达到以上目的,本发明采用的技术方案如下:
一种自适应的实时频谱数据的压缩方法,包括以下步骤:
步骤1,获得当前频谱;
步骤2,将当前频谱与已有的典型频谱做比较,判断当前频谱是否与其中的一个典型频谱相似;
步骤3,若当前频谱与其中的一个典型频谱相似,则用该典型频谱的序号代替当前频谱进行存储,若当前频谱与所有的典型频谱不相似,则将当前频谱作为一个新的典型频谱,给定一个序号,存储当前频谱及对应的序号。
在优选的实施方案中,所述步骤2按照以下方式执行:
按序号从小到大的顺序,将当前频谱依序与一个典型频谱做比较,若当前频谱与当前比较的典型频谱相似,则判定为当前频谱与其中的一个典型频谱相似;若当前频谱与当前比较的典型频谱不相似,则将当前频谱继续与下一个典型频谱比较,直至遍历完所有的典型频谱;若遍历完所有的典型频谱,没有一个典型频谱与当前频谱相似,则判定为当前频谱与所有的典型频谱不相似。
在进一步细化的方案中,所述步骤2中,判断当前频谱与当前比较的典型频谱是否相似,包括以下步骤:
步骤21,获得当前频谱的频谱范围,及当前比较的典型频谱的频谱范围;
步骤22,判断当前频谱的频谱范围与当前比较的典型频谱的频谱范围的差值是否在设定的阈值范围内,如果是则进入步骤23,否则判定为当前频谱与当前比较的典型频谱不相似;
步骤23,计算得到当前频谱的最小相似系数,及当前频谱与当前比较的典型频谱的皮尔逊相关系数;
步骤24,判断所述皮尔逊相关系数是否大于所述最小相似系数,若大于则进入步骤25,否则判定为当前频谱与当前比较的典型频谱不相似;
步骤25,将当前频谱和当前比较的典型频谱分别转换为二值位图,并计算两个二值位图的相似度;
步骤26,判断两个二值位图的相似度是否大于最小相似度,如果是则判定为当前频谱与当前比较的典型频谱相似,否则判定为当前频谱与当前比较的典型频谱不相似。
本发明同时提供了一种自适应的实时频谱数据的压缩系统,包括以下模块:
频谱数据获得模块,用于获得当前频谱;
相似度判断模块,用于将当前频谱与已有的典型频谱做比较,判断当前频谱是否与其中的一个典型频谱相似;
压缩存储模块,用于相似度判断模块中给出当前频谱与其中一个典型频谱相似的结果时,用该典型频谱的序号代替当前频谱进行存储,以及在相似度判断模块中给出当前频谱与所有的典型频谱不相似的结果时,将当前频谱作为一个新的典型频谱,给定一个序号,存储当前频谱及对应的序号。
与现有技术相比,本发明具有以下有益效果:
1.能够在进行数据采集的同时进行压缩,不仅到达了数据压缩的目的,而且减少了时空消耗,且不需要额外的压缩操作;
2.采用自适应的方式,使得能够满足无线电监测时不同频段和不同情况下频谱的压缩,不需要进行人工的参数调整;
3.在压缩时用序号来代替实际的频谱数据,在此基础上就可以进行实时的网络传输,减小了网络的负荷;
4.压缩后针对不同的频谱而言,都在不使信号严重失真的误差内达到了适当的压缩率,减小了存储的数据量,因而对存储介质的要求以及后续处理时内存的要求都降低了。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
可以参阅图1,本实施例中提供的一种自适应的实时频谱数据的压缩方法,包括以下步骤:
步骤1,获得当前频谱。
步骤2,将当前频谱与已有的典型频谱做比较,判断当前频谱是否与其中的一个典型频谱相似。
本步骤中,可以有两种处理方式,第一种是将当前频谱与所有的典型频谱做比较;第二种方式是,按序号从小到大的顺序,将当前频谱依序与一个典型频谱做比较,若当前频谱与当前比较的典型频谱相似,则判定为当前频谱与其中的一个典型频谱相似,并停止搜索,也就是本步骤结束;若当前频谱与当前比较的典型频谱不相似,则将当前频谱继续与下一个典型频谱比较,直至遍历完所有的典型频谱;若遍历完所有的典型频谱,没有一个典型频谱与当前频谱相似,则判定为当前频谱与所有的典型频谱不相似。明显地,第二中处理方式更优,可以简化运算过程,减少运算量。
本实施例中,判断当前频谱与当前比较的典型频谱是否相似,包括以下步骤:
步骤21,获得当前频谱的频谱范围,及当前比较的典型频谱的频谱范围;
步骤22,判断当前频谱的频谱范围与当前比较的典型频谱的频谱范围的差值是否在设定的阈值范围内,如果是则进入步骤23,否则判定为当前频谱与当前比较的典型频谱不相似;
步骤23,计算得到当前频谱的最小相似系数,及当前频谱与当前比较的典型频谱的皮尔逊相关系数;
步骤24,判断所述皮尔逊相关系数是否大于所述最小相似系数,若大于则进入步骤25,否则判定为当前频谱与当前比较的典型频谱不相似;
步骤25,将当前频谱和当前比较的典型频谱分别转换为二值位图,并计算两个二值位图的相似度;
步骤26,判断两个二值位图的相似度是否大于最小相似度,如果是则判定为当前频谱与当前比较的典型频谱相似,否则判定为当前频谱与当前比较的典型频谱不相似。
步骤3,若当前频谱与其中的一个典型频谱相似,则用该典型频谱的序号代替当前频谱进行存储,若当前频谱与所有的典型频谱不相似,则将当前频谱作为一个新的典型频谱,给定一个序号,存储当前频谱及对应的序号。
下面将结合更为具体的步骤及附图对上述方法进行更为详细的描述。
步骤一:获取频谱数据
本实施例硬件平台由EM100数字接收机、HE600接收天线、GPS天线GZXT-ACZ及普通台式PC机组成,EM100设备实时接收无线电信号,并将接收到的无线电信号生成数据报,并通过LAN发送到PC机上,PC机基于SCPI通信协议与EM100设备进行通信,接收到数据报后按照协议进行解析,获得无线电信号的频率、频谱数据值。步骤二:判断频谱范围
如图2所示,分别找出当前频谱以及当前比较的典型频谱的最大值和最小值;计算当前频谱的数据值最大值(最大数据值)与当前比较的典型频谱的数据值最大值之间的差值的绝对值、以及当前频谱的数据值最小值(最小数据值)与当前比较的典型频谱的数据值最小值之间的差值的绝对值;判断两个差值的绝对值是否都在规定的阈值范围内,即差值的绝对值是否小于一个给定的阈值(即第一阈值),一般该阈值取值为3-5,若两个差值的绝对值均小于给定的阈值,则进入步骤三,若其中一个差值的绝对值大于等于所述给定的阈值,或两个差值的绝对值均大于等于所述给定的阈值,则按顺序继续比较下一个典型频谱,直至遍历完所有的典型频谱。
通过本步骤,可以大致确定出当前频谱是否与某一个典型频谱相似。若当前频谱的频谱范围与所有的典型频谱的频谱范围的差值均超出所述阈值范围内,则判断为当前频谱与所有的典型频谱不相似。
步骤三:计算最小相似系数
如图3所示,计算频谱的最小相似系数,具体步骤如下:
(1)计算当前频谱的最大数据值和最小数据值,得到当前频谱的区间,将该区间等分为规定个数的子区间,一般子区间个数取奇数,可以使后面得到的直方图对称,例如11;
(2)统计步骤(1)中得到的每个子区间中数据点的个数,即电平值在子区间内的频率点的个数,得到频谱数据的真实直方图;(3)分别计算频谱数据的均值和方差,根据均值和方差得到当前频谱的正态分布函数;
(4)首先计算每个子区间的中间值(即最大值与最小值的均值,如区间[a,b]的中间值为(b-a)/2),将每个子区间的中间值代入步骤(3)中的正态分布函数,得到每个子区间的概率值,然后将当前频谱的数据点总数除以所有概率值之和得到一个值,再计算每个概率值乘以该值的积,最后所有子区间和子区间对应的积构成新的直方图,该新的直方图称为服从正态分布的直方图;
(5)根据步骤(2)中得到真实的直方图,按每个子区间的中间值的顺序(从大到小或从小到大)将子区间对应的值组成一个向量,根据步骤(4)中得到的服从正态分布的直方图,按每个子区间的中间值的顺序将子区间对应的积组成一个向量,计算两个向量的相关系数(即皮尔逊相关系数,其计算过程同后面步骤4中所述),该相关系数作为当前频谱是否为正态分布的判断依据,若相关系数大于0.8则判断为服从正态分布,否则判断为不服从正态分布;
皮尔逊相关系数在区间[-1,1]中,负数为负相关,正数为正相关,越靠近-1或1则相关性越强,绝对值0-0.09为没有相关性,0.1-0.3为弱相关,0.3-0.5为中等相关,0.5-1.0为强相关,此处取0.8是根据经验来的。
(6)根据步骤(5)中得到的相关系数,计算最小相似系数,相关系数和最小相似系数负相关,且最小相似系数在一定范围内,如设相关系数为x,最小相似系数为y,则相关系数与最小相似系数满足关系y=1-(0.1+0.7*x)并且0.2≤y≤0.9。
步骤四:判断频谱相似度
由于噪声是服从正态分布的,而信号不服从,因此可以判断频谱服从正态分布后,可以认为频谱总体为噪声,即有少量信号点或没有信号点,对于没有信号点的频谱数据肯定就不执行后续的存储操作,因此此处对于有信号点的频谱,针对存在少量信号点和一般情况(即除了少量信号点以外的情况)分别进行相似度判断处理。
在频谱总体为噪声但存在少量信号点时,相似度的判断如图4所示,具体步骤为:若当前频谱符合正态分布,则计算当前频谱数据的最大值和均值,判断最大值减去均值的差是否大于规定的数值(第二阈值),例如一般该数值取5(经验值,噪声一般在一个区间波动,而信号至少大于噪声3-5),若大于则判断存在信号点,则基于最大值和均值,将频谱转化为二值位图,并计算位图的相似度;将位图相似度与规定值(第三阈值)比较,若大于则相似,一般该规定值取0.4(经验值)。
在一般情况下,频谱相似度的判断如图5所示,具体步骤为:计算当前频谱数据和典型频谱数据的相关系数(皮尔逊相关系数),判断相关系数是否大于最小相似系数,若大于则计算频谱数据的最大值和最小值,基于最大值和最小值将频谱转化为二值位图,并计算位图的相似度;将位图相似度与最小相似度比较,最小相似度一般等于最小相似系数,若大于则相似。
其中当前频谱与典型频谱的相关系数的计算和判断如图6所示,具体步骤为:计算当前频谱和典型频谱的均值和标准差,在均值和标准差的基础上按照公式计算相关系数,相关系数公式如下
其中r是相关系数,n是频谱数据点的个数,Xi是当前频谱的第i个数据点的值,是当前频谱数据的均值,Sx是当前频谱数据的标准差,Yi是典型频谱的第i个数据点的值,是典型频谱数据的均值,Sy是典型频谱数据的标准差。
其中二值位图的转化如图8所示,具体步骤为:
(1)创建一个二值位图矩阵,该位图矩阵的行数为频谱数据的最大值减去最小值(或均值)的差除以步长的商取整,列数为频谱数据点的个数,步长一般取0.5;
(2)将最小值(或均值)作为起始值,最大值作为终止值,以所述步长进行循环,每次循环得到的一个值(当前值)与频谱数据点逐个进行比较,若循环中的当前值(图8中的i)大于频谱数据点的值,则将位图矩阵中对应位置的值赋值为0,反之则将对应的值赋值为1;执行完整个循环后即可得到当前频谱对应的二值位图。
其中二值位图相似度的一种计算如图9所示,即计算具体步骤为:
(1)设两个变量,一个变量U代表两个位图中值为1的数的并集的元素个数,另一个变量A代表交集的元素个数;
(2)设当前频谱的位图为Bn,典型频谱位图为Bt,位图行数row,列数col,若Bn[i][j]=1且Bt[i][j]=1,则A+1且U+1;若Bn[i][j]=0且Bt[i][j]=1,则U+1;如果Bn[i][j]=1并且Bt[i][j]=0,则U+1;若Bn[i][j]=0且Bt[i][j]=0,则A和U均不变,其中i为小于row的正整数,j为小于col的正整数;
(3)两个位图的相似度X是最终的交集变量值除以并集变量值的商,即X=A/U。
步骤五:存储数据
如图7所示,频谱数据的存储具体步骤如下:
若步骤四中判断为相似,则以本次比较的典型频谱的序号来代替当前频谱数据;
若步骤四中判断出当前频谱与所有典型频谱都不相似,则将当前频谱作为新的典型频谱;
若得到的是典型频谱序号则只存储序号,若得到的是新的典型频谱,则存储该频谱数据和对应的序号。
采用上述方法对接收的无线电频谱数据压缩后,从压缩文件中恢复数据的流程如图10所示,具体的步骤为:压缩文件主要包含按序号大小依次存储的典型频谱和序号列表,该序号列表记录的是与每一个原始频谱数据相似的典型频谱的序号,按照序号将其替换为对应的典型频谱就可以恢复数据。
结果分析:
对不同的频段的某一帧的原始频谱和典型频谱进行了对比,结果如图11-15所示。可以看出,典型频谱与原始频谱在信号点处的值是近似的,而噪声处则有较大差别,总体而言将需要的信息保存了下来。
对不同的频段进行了采集和压缩,结果如表1所示。
压缩率的计算公式为:
其中CR是压缩率,Dc是压缩后的频谱数据文件大小,Do是原始的频谱数据文件大小。
均方根误差PRD的计算公式为:
其中Ui是原始的单个频谱的数据点的值,Vi是压缩的单个频谱的数据点的值,n是单个频谱的数据点的个数。
标准化均方根误差SRD的计算公式为:100%
其中Ui是原始的单个频谱的数据点的值,是原始的单个频谱的数据的均值,Vi是压缩的单个频谱的数据点的值,n是单个频谱的数据点的个数。平均PRD和平均SRD是所有频谱数据PRD和SRD的平均值。
本实施例所述方法通过相似度比较来确定典型频谱,对于不同的频段在不同的情况下最小相似系数和最小相似度是自适应的(具体体现在步骤3中最小相似系数是根据当前频谱计算得来的,最小相似度的值和最小相似系数相同)。通常对于一个频段而言,如果信号量越多,频谱的规律性就越强,需要提高最小相似系数和最小相似度的值,用以确保每个信号都是相似的,压缩率、平均PRD和平均SRD就越小。反之如果一个频段的噪声量越大,频谱就越不规律,因为噪声就算不相似也不会对频谱信号产生影响,所以可以降低最小相似系数和最小相似度的值,压缩率越小而平均PRD和平均SRD就越大。但是如果是在频谱整体为噪声而只有少数几个信号的情况下,由于正常操作处理的情况下会丢失掉信号,所以本实施例方法中单独对这种情况进行了处理,提高了精确性。总体而言,本本实施例方法在信号量大的情况下能够以较小的误差来得到较好的压缩率,在噪声量大的情况下不考虑误差可以得到较好的压缩率。
表1
优势分析:
1.能够在进行数据采集的同时进行压缩,不仅到达了数据压缩的目的,而且减少了时空消耗,且不需要额外的压缩操作;
2.采用自适应的方式,使得能够满足无线电监测时不同频段和不同情况下频谱的压缩,不需要进行人工的参数调整;
3.在压缩时用序号来代替实际的频谱数据,在此基础上就可以进行实时的网络传输,减小了网络的负荷;
4.压缩后针对不同的频谱而言,都在不使信号严重失真的误差内达到了适当的压缩率,减小了存储的数据量,因而对存储介质的要求以及后续处理时内存的要求都降低了。
请参阅图16,基于相同的发明构思,本实施例中同时给出了一种自适应的实时频谱数据的压缩系统,包括以下模块:
频谱数据获得模块,用于获得当前频谱;
相似度判断模块,用于将当前频谱与已有的典型频谱做比较,判断当前频谱是否与其中的一个典型频谱相似;
压缩存储模块,用于相似度判断模块中给出当前频谱与其中一个典型频谱相似的结果时,用该典型频谱的序号代替当前频谱进行存储,以及在相似度判断模块中给出当前频谱与所有的典型频谱不相似的结果时,将当前频谱作为一个新的典型频谱,给定一个序号,存储当前频谱及对应的序号。
其中,所述相似度判断模块包括:
频谱范围确定子模块,用于获得当前频谱的频谱范围,及当前比较的典型频谱的频谱范围;
相似性初判子模块,用于判断当前频谱的频谱范围与当前比较的典型频谱的频谱范围的差值是否在设定的阈值范围内,并给出判断结果;
最小相似系数计算子模块,用于在相似性初判子模块中判定出当前频谱的频谱范围与其中一个典型频谱的频谱范围的差值在设定的阈值范围内时,计算得到当前频谱的最小相似系数,及当前频谱与当前比较的典型频谱的皮尔逊相关系数;
二值位图转换子模块,用于在所述皮尔逊相关系数大于所述最小相似系数时,将当前频谱和当前比较的典型频谱分别转换为二值位图,并计算两个二值位图的相似度;
相似度再判子模块,用于判断两个二值位图的相似度是否大于最小相似度,如果是则判定为当前频谱与当前比较的典型频谱相似,否则判定为当前频谱与当前比较的典型频谱不相似。
对于各个模块的功能及具体处理过程,可以参见实施例中上述压缩方法的相关描述,以及附图2-9,此处不再赘述。
如图17所示,本发明实施例中同时提供了一种电子设备,该电子设备100可以为服务器、计算机等具备数据处理能力的设备。如图17所示,电子设备100包括:存储器110、处理器120及网络模块130。
所述存储器110、处理器120以及网络模块130相互之间直接或间接地电性连接,以实现数据的传输或交互。存储器110中存储有自适应的实时频谱数据的压缩系统,所述自适应的实时频谱数据的压缩系统包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中的软件功能模块,所述处理器120通过运行存储在存储器110内的软件程序以及模块,如本发明实施例中的自适应的实时频谱数据的压缩系统,从而执行各种功能应用以及数据处理,即实现本发明实施例中的自适应的实时频谱数据的压缩方法。
其中,所述存储器110可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,存储器110用于存储程序,所述处理器120在接收到执行指令后,执行所述程序。
所述处理器120可能是一种集成电路芯片,具有信号的处理能力。上述的处理器120可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等。还可以是数字信号处理器(DSP))、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
网络模块130用于通过网络建立电子设备100与外部通信终端之间的通信连接,实现网络信号及数据的收发操作。上述网络信号可包括无线信号或者有线信号。
可以理解,图17所示的结构仅为示意,电子设备100还可包括比图17中所示更多或者更少的组件,或者具有与图17所示不同的配置。图17中所示的各组件可以采用硬件、软件或其组合实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。