一种基于线型的过程数据有损压缩方法技术

技术编号:7021375 阅读:263 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种基于线型的过程数据有损压缩方法,其特征在于,包括以下步骤:1)定义三种变化的数据趋势线型:直线型、抛物线型、反抛物线型作为可选的拟合函数;2)根据实际数据的变化趋势在运行时动态地调整拟合函数的表达式的形式。本发明专利技术不采用单一的拟合方式,而是综合三种拟合方式,所以存储的事件数比传统算法存储的事件数少,即压缩率比较大。

【技术实现步骤摘要】

本专利技术涉及一种数据处理方法,特别涉及一种监控系统中实时数据动态有损压缩方法,属于自动化监控

技术介绍
目前监控系统中实时数据压缩方法的主要可分为三类,即分段线性方法、矢量量化方法和信号变换方法。分段线性方法包括矩形波串法(boxcar)、后向斜率法(backward slope)、旋转门趋势化方法(SDT)和分段线性在线趋势化方法(PLOT),尽管这些方法压缩比不如信号变换方法高,但其优点是算法简单、代码执行速度快,已经在过程工业中得到广泛使用。矢量量化方法需要花很多时间计算码本,且码本不具有通用性,即一个数据集的码本不能用于别的数据集,由于计算量太大,矢量量化方法不适合过程数据在线压缩。信号变换方法很多,如傅立叶变换、小波变换等,虽然小波变换方法目前还存在一些实际技术问题需要解决,但长期以来傅立叶变换一直是信号处理的主要手段,但它只能获得信号的整个频谱,而很难得到信号的局部特征,不能充分刻画时变、非平稳信号的特征,同时在数据的有损压缩阈值难以控制,再加上有很多实际的问题有待解决,所以实际使用并不多。在传统的线性压缩算法中,一般都是仅仅采用直线来刻画某一段待压缩空间内的数据,无论这段空间内的数据的具体趋势如何,都是一成不变的用直线来进行逼近拟合,而不忽略具体的数据特点。本项目组中,在分析了有关数据后发现,待压缩的数据在某一段压缩空间内,往往不只是单一的成直线型变化趋势,数据还有其他形式的变化趋势,比如类似抛物线形式的,如果这时仍然只是采用直线趋势来拟合这一段数据,不仅压缩率不高而且误差很大。所以可以根据压缩点的动态变化趋势线型选择合适的压缩方式来增大压缩比。在传统的数据压缩中,往往只采用单一的压缩方式,一般忽略实时数据本身的特点,本项目的算法主要思想就是在对数据进行压缩时,充分考虑数据本身的变化趋势,并针对于此采用不同的方式进行压缩。
技术实现思路
本专利技术所要解决的技术问题是如何在最短的时间实现监控系统中实时数据压缩的高压缩率,也就是1)压缩比高,根据实时数据趋势的线型,采用自适应算法能发挥最大的压缩比;2)压缩速度快,算法简单,计算量少。为解决上述技术问题,本专利技术提供,其特征在于,包括以下步骤1)定义三种变化的数据趋势线型直线型、抛物线型、反抛物线型作为可选的拟合函数;2)根据实际数据的变化趋势,在运行时动态地调整拟合函数的表达式的形式。前述的基于线型的过程数据有损压缩算法,其特征在于在所述步骤2)中,具体步骤为21)对于每一个过程数据,分别使用三种变化趋势线型进行压缩,记录相关参数, 直到三种变化趋势线型都不能继续压缩为止;22)保留压缩率最大的拟合函数作为最终的压缩结果,记录压缩点的时间点、拟合值、拟合曲线参数;23)进行新一轮的压缩。前述的基于线型的过程数据有损压缩算法,其特征在于在所述步骤1)中,拟合函数为yt = Ut+ ε t (1)其中,yt是过程数据的值关于时间的函数,ε t是噪音函数,Ut = kta是关于时间t 的函数,a是t的幂指数,k为t的系数,用于控制拟合曲线的形状,如果a > 1则Ut为抛物线,此时可以取a = 2 ;如果1 > a > 0,则Ut是反抛物线,此时可以取a = 0. 5 ;常规条件下取a = 1则为ut = kt直线。前述的基于线型的过程数据有损压缩算法,其特征在于在所述步骤21)中,1)根据实际需要,分别取ut = kta中a = 2、1、0. 5,则对应抛物线、反抛物线、直线三种不同线型的拟合曲线,对于第1个数据点,用所有的曲线形状的拟合函数去拟合它,在正常情况下所有的曲线都能顺利地拟合,所有的拟合函数继续第二个数据点的压缩;2)第二个数据点到来时,将第一个数据点的通过的拟合函数去拟合第二个数据点,保证压缩误差在预定控制的范围内,如果拟合函数是直线函数则不能进行拟合,所以直线函数放弃,再依次用上一轮通过的点去拟合第二个数据点,将满足压缩误差条件的拟合函数继续保留,不满足的拟合函数舍去;3)按照上述过程依次拟合接下来的数据点,至只剩下最后一个满足压缩误差条件的拟合函数停止;4)用步骤幻仅剩下的拟合函数拟合下一个数据点,如果还能拟合就继续下一个点,否则就结束本轮压缩,记录相关参数以便还原,继续下一轮的压缩。本专利技术的原理是在工业生产监控系统中,实时数据的变化一般有不同的趋势,所以本专利技术针对于这些不同的变化趋势采用相应拟合压缩方式。在分析了监控系统实时数据后,在一段待压缩的数据段内,大体上有如下几种变化趋势直线型,抛物线型,反抛物线型。其中直线型代表平稳变化,即相邻的两个实时数据差值始终保持不变;抛物线型代表变化逐渐增大,即相邻的两个实时数据之间的差值越来越大;反抛物线型逐渐减小,即相邻的两个实时数据之间的差值越来越小。本专利技术所用的算法结构简单,实现的c语言函数简单,这样在程序运行实现起来, 计算量比较少使得计算速度快,程序运行快。传统的算法针对以上三种情况只是采用相同的方式如直线型进行拟合,如果要求算法能够取得更好的压缩效果,必须能根据实际数据的变化趋势在运行时动态的调整拟合函数的表达式的形式。在本专利技术中,假设拟合函数是yt = Ut+ ε t (1)其中,yt是过程数据的值关于时间的函数,ε t是噪音函数,Ut = kta是关于时间t的函数(a是t的幂指数,k为t的系数),用于控制拟合曲线的形状,如果a > 1则Ut为抛物线,此时可以取a = 2 ;如果1 > a> 0,则Ut是反抛物线,此时可以取a = 0.5 ;常规条件下取a = 1则为 = 1α直线。1、在压缩时,对于直线型趋势的数据,本专利技术和传统算法一样都用直线来进行拟合;2、对于抛物线型Ut = kt2,k > 0的数据,假设成这一趋势的过程数据点为y1; J2, yfyr"yn,且此时Ii到yn符合函数式⑴,所以Ii的坐标(tpktpb)其中k > 0,k、b为系数,如果用本专利技术的抛物线来拟合,则y2,只需保存为一个事件即可,如果采用传统的算法,如直线来拟合,当在压缩完y2,W Yi点,下一个待压缩的点为此时斜率Kwt = (yt -^0)Iiti -t0) = Hti -10)(tt +10)Hti -t0) = Hti -10)K減=(yi+l -只)/(t1+l -O = k(ti+1 - tr )(ti+1 + tt) /(t1+l -O = k(tM - tt)所以夂-Kwi =冲,如此时在压缩完Yi,直线的斜率已经不能再增大了,那么采用直线拟合必须进行新一轮的压缩,所以传统算法存储的时间数至少两个或者两个以上的事件。3、对于抛物线型ut = kt2, k < 0的数据,假设成这一趋势的点为y2,yn,且此时71到7 符合函数式(1),所以Yi的坐标(tykV+b)其中k<0,那么如果用本专利技术的抛物线来拟合,则y” γ2,需保存为一个事件即可,如果采用传统的算法,比如直线来拟合,当在压缩完y2, yn点,下一个待压缩的点为yi+1,此时斜率Kwt = (yt -^0)Iiti -t0) = Hti -10)(tt +10)Iiti -t0) = Hti -10)K 減=(yi+l -只.)l(ti+l本文档来自技高网
...

【技术保护点】
1.一种基于线型的过程数据有损压缩方法,其特征在于,包括以下步骤:1)定义三种变化的数据趋势线型:直线型、抛物线型、反抛物线型作为可选的拟合函数;2)根据实际数据的变化趋势,在运行时动态地调整拟合函数的表达式的形式。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘孟觉梁奕刘佳宝方俊陈天皓张浩
申请(专利权)人:国电南瑞科技股份有限公司
类型:发明
国别省市:84

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1