專(zhuān)利名稱(chēng):一種高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)據(jù)壓縮技術(shù)領(lǐng)域,更為具體地講,涉及一種高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法。
背景技術(shù):
1、數(shù)據(jù)壓縮概述數(shù)據(jù)壓縮技術(shù)在圖像,音頻處理等領(lǐng)域已有非常廣泛的應(yīng)用,技術(shù)日趨先進(jìn)成熟并已形成了國(guó)際化標(biāo)準(zhǔn),如圖像處理領(lǐng)域的JEPG壓縮技術(shù),音頻處理中的MP3壓縮技術(shù)等。 但是由于現(xiàn)代存儲(chǔ)設(shè)備容量的不斷增大,在工業(yè)自動(dòng)化領(lǐng)域則應(yīng)用的較少,在電力系統(tǒng)、故障檢測(cè)與診斷系統(tǒng)、過(guò)程控制、過(guò)程監(jiān)測(cè)、多通道數(shù)據(jù)采集系統(tǒng)等會(huì)產(chǎn)生海量實(shí)時(shí)和歷史數(shù)據(jù)的自動(dòng)化系統(tǒng)中,數(shù)據(jù)壓縮還沒(méi)有得到廣泛的重視和應(yīng)用。在多通道自動(dòng)測(cè)試系統(tǒng)中數(shù)據(jù)一般由數(shù)據(jù)采集模塊采集得到,采集的信號(hào)一般為傳感器信號(hào),目前的數(shù)據(jù)采集模塊采樣頻率都較高,例如總采樣速率為ΙΟΟΚΗζ,則如果系統(tǒng)為16個(gè)通道,單個(gè)通道每秒可采集 62次,現(xiàn)行更高的從幾十MHz到幾十GHz不等的采集模塊比這個(gè)次數(shù)還要高的多,這樣每秒就可產(chǎn)生大量高精度的浮點(diǎn)數(shù)據(jù),面對(duì)海量的存儲(chǔ)數(shù)據(jù),人們解決的辦法只是單純的增加存儲(chǔ)設(shè)備,而很少應(yīng)用數(shù)據(jù)壓縮技術(shù)對(duì)其中大量的冗余數(shù)據(jù)進(jìn)行壓縮,以達(dá)到減少數(shù)據(jù)量, 節(jié)約存儲(chǔ)設(shè)備的目的。2.現(xiàn)有工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法數(shù)據(jù)壓縮根據(jù)不同編碼對(duì)原始文件數(shù)據(jù)產(chǎn)生的不同損失效果,可把數(shù)據(jù)壓縮技術(shù)分為無(wú)損壓縮和有損壓縮。無(wú)損壓縮一般以通用壓縮理論為基礎(chǔ),采取哈佛曼算法等經(jīng)典的壓縮算法,具有無(wú)失真、無(wú)差錯(cuò)或無(wú)噪聲編碼的性質(zhì)。有損壓縮是在壓縮過(guò)程中損失一定的信息以獲得較高的壓縮比。有損壓縮雖然不能完全恢復(fù)原始數(shù)據(jù),但損失的數(shù)據(jù)對(duì)理解原始數(shù)據(jù)的信息影響不大,并由此獲得較大的壓縮比,從而節(jié)約大量存儲(chǔ)空間。目前比較有效并且應(yīng)用較多的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法主要有穩(wěn)態(tài)閾值法,即死區(qū)算法,旋轉(zhuǎn)門(mén)算法,線(xiàn)性外插算法,這三種方法均屬于有損壓縮。2. 1穩(wěn)態(tài)閾值法穩(wěn)態(tài)閾值法的原理是以一般能容忍的失真范圍為限定,通過(guò)判斷當(dāng)前數(shù)據(jù)值與下一個(gè)數(shù)據(jù)值是否大于壓縮限值來(lái)決定是否舍棄或記錄該數(shù)據(jù),限值設(shè)置越大,數(shù)據(jù)壓縮率越高,但失真度也越大。如圖1所示,如果壓縮限值設(shè)置為0. 5,當(dāng)前數(shù)據(jù)值是10. 0,則下一個(gè)數(shù)據(jù)值如果在10. 5以上或9. 5以下都將被記錄,并以記錄的數(shù)據(jù)點(diǎn)為起點(diǎn),設(shè)該點(diǎn)的值為y,0. 5為判別門(mén)限,判斷下一個(gè)數(shù)據(jù)值是否在y 士0. 5之間,如果在,則舍棄該數(shù)據(jù)點(diǎn), 如果不在,則記錄該數(shù)據(jù)點(diǎn),再以記錄的數(shù)據(jù)點(diǎn)為起點(diǎn),進(jìn)行判斷,對(duì)數(shù)據(jù)進(jìn)行壓縮。如圖1 中,打圈的數(shù)據(jù)點(diǎn)被記錄下來(lái)。2. 2旋轉(zhuǎn)門(mén)算法旋轉(zhuǎn)門(mén)算法是一種線(xiàn)性趨勢(shì)化壓縮算法,將線(xiàn)性趨勢(shì)化的斜率變化情況作為重點(diǎn)考慮的因素,強(qiáng)調(diào)尋找改變斜率的線(xiàn)性“觸發(fā)點(diǎn)”,主要有平行四邊形和三角形兩種處理方式。算法的主要思想是利用當(dāng)前數(shù)據(jù)點(diǎn)與前一個(gè)存儲(chǔ)點(diǎn)縮構(gòu)成的壓縮限值覆蓋區(qū)來(lái)判斷數(shù)據(jù)是否應(yīng)當(dāng)保留。如果兩點(diǎn)構(gòu)成的壓縮覆蓋區(qū)能覆蓋兩點(diǎn)之間所有數(shù)據(jù)點(diǎn),則舍棄當(dāng)前數(shù)據(jù)點(diǎn),反之如果有數(shù)據(jù)點(diǎn)落在覆蓋區(qū)以外,就保存當(dāng)前點(diǎn)的前一個(gè)數(shù)據(jù)點(diǎn),并以該點(diǎn)為新的起點(diǎn)與后讀入的點(diǎn)構(gòu)成新的覆蓋區(qū)繼續(xù)判斷壓縮的取舍點(diǎn)。具體壓縮判斷流程介紹如下設(shè)旋轉(zhuǎn)門(mén)的壓縮限值設(shè)為0. 1,數(shù)據(jù)存儲(chǔ)時(shí)間間隔為Is。從讀入的第一個(gè)數(shù)據(jù)點(diǎn)開(kāi)始,以它到當(dāng)前數(shù)據(jù)點(diǎn)之間的連線(xiàn)為中軸,過(guò)這兩點(diǎn)做一個(gè)寬度為2倍壓縮限值的平行四邊形,判斷平行四邊形覆蓋的區(qū)域是否能覆蓋所有從上個(gè)存儲(chǔ)點(diǎn)到當(dāng)前點(diǎn)之間的所有數(shù)據(jù)點(diǎn),隨著數(shù)據(jù)點(diǎn)的讀入,以同樣的方法作新的平行四邊形,如圖2所示。當(dāng)產(chǎn)生的平行四邊形不能容納上個(gè)存儲(chǔ)點(diǎn)到當(dāng)前點(diǎn)之間的所有數(shù)據(jù)點(diǎn)時(shí),即有數(shù)據(jù)點(diǎn)落在當(dāng)前平行四邊形覆蓋面積之外時(shí),則對(duì)當(dāng)前點(diǎn)通過(guò)本段壓縮,將一個(gè)數(shù)據(jù)點(diǎn)保存, 其他點(diǎn)舍棄。如圖2中,第10秒時(shí)有數(shù)據(jù)點(diǎn)落在了平行四邊形覆蓋范圍之外,所以將起點(diǎn)和前一點(diǎn),即第9秒的數(shù)據(jù)點(diǎn)保存,其余數(shù)據(jù)舍棄。以新保存的數(shù)據(jù)點(diǎn)為起點(diǎn)繼續(xù)重復(fù)上述過(guò)程,判斷后續(xù)數(shù)據(jù)點(diǎn)是否滿(mǎn)足判別要求。2. 3線(xiàn)性外插算法線(xiàn)性外插算法也是一種利用線(xiàn)性化思想進(jìn)行壓縮處理的方法,其主要處理方式是讀入兩個(gè)數(shù)據(jù)點(diǎn),用這兩點(diǎn)作出一條直線(xiàn),直線(xiàn)方程為y = ax+b,設(shè)后續(xù)點(diǎn)的橫坐標(biāo)值為 Xi,把橫坐標(biāo)的值帶入直線(xiàn)方程,算出該點(diǎn)的對(duì)應(yīng)的函數(shù)值乂,Yi是實(shí)際讀入點(diǎn)的數(shù)據(jù)值, S是門(mén)限值,判斷后續(xù)點(diǎn)是否滿(mǎn)足y' -δ <y<y' +δ,若滿(mǎn)足則舍棄該數(shù)據(jù)點(diǎn),不滿(mǎn)足則記錄該數(shù)據(jù)點(diǎn)及該數(shù)據(jù)點(diǎn)的前一點(diǎn)的值。并以不滿(mǎn)足門(mén)限值的數(shù)據(jù)點(diǎn)為下次判斷直線(xiàn)的起點(diǎn),與后續(xù)的一個(gè)數(shù)據(jù)點(diǎn)作出直線(xiàn)進(jìn)行判斷,算法的主要思路如圖3所示。重復(fù)上述判別步驟,經(jīng)過(guò)判斷,只有圖3中打圈的點(diǎn)被保存下來(lái),其余滿(mǎn)足判別門(mén)限的點(diǎn)都被壓了。上述方法中,穩(wěn)態(tài)閾值法更適用于相對(duì)穩(wěn)態(tài)的變化數(shù)據(jù),對(duì)實(shí)時(shí)變化較大的數(shù)據(jù)效果則不是很好;旋轉(zhuǎn)門(mén)壓縮算法,主要利用當(dāng)前數(shù)據(jù)點(diǎn)與前一個(gè)存儲(chǔ)點(diǎn)所構(gòu)成的壓縮限制覆蓋區(qū)來(lái)判斷數(shù)據(jù)是否該保留,此算法中,需重復(fù)判斷多個(gè)數(shù)據(jù)點(diǎn),從而使壓縮時(shí)間過(guò)長(zhǎng);線(xiàn)性外插算法對(duì)壓縮限值較小的數(shù)據(jù)壓縮效果較好,對(duì)壓縮限值較大時(shí)效果則較差。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服線(xiàn)性外插算法的不足,提供一種高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法。為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法,其特征在于,包括以下步驟(1)、若工業(yè)實(shí)時(shí)數(shù)據(jù)剩余點(diǎn)少于η個(gè),η彡3,則已到工業(yè)實(shí)時(shí)數(shù)據(jù)的末尾,則把這幾個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)值全部保存下來(lái);否則,對(duì)工業(yè)實(shí)時(shí)數(shù)據(jù)順序讀入η個(gè)數(shù)據(jù)點(diǎn)Ui^ihxi =i,i = 1,2,…,n,yi為第i個(gè)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)值;采用最小二乘擬合方法,對(duì)這η個(gè)數(shù)據(jù)進(jìn)行直線(xiàn)擬合,擬合的直線(xiàn)方程為y = a0+alX(1)其中,a0, B1是擬合直線(xiàn)的系數(shù);把這η個(gè)數(shù)據(jù)點(diǎn)的Xi值依次代入擬合出的直線(xiàn)方程,得到擬合值允;
O)、判斷η個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值71是否滿(mǎn)足判別條件I只-乂 |< 5,δ為壓縮限值;①、若η個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值Ji全部滿(mǎn)足判別條件,則舍棄這η個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值只把這η個(gè)數(shù)據(jù)起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值乂保存下來(lái),跳轉(zhuǎn)到第C3)步;②、若有不滿(mǎn)足判別條件的擬合值,則保存這η個(gè)數(shù)據(jù)中起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值乂保存下來(lái),然后,將讀入數(shù)據(jù)的起點(diǎn)向后移一位,返回第(1)步;(3)繼續(xù)讀入下一個(gè)數(shù)據(jù)點(diǎn),擬合直線(xiàn)后讀入的下一個(gè)數(shù)據(jù)點(diǎn)坐標(biāo)為\,Xj = n+1, 代入(1)中擬合出的直線(xiàn)方程,求得相應(yīng)擬合值乂,根據(jù)壓縮限值S,以及實(shí)際讀入的下一個(gè)數(shù)據(jù)值5V判斷如果-y]\< 5成立,則說(shuō)明該數(shù)據(jù)點(diǎn)在預(yù)測(cè)范圍內(nèi),該數(shù)據(jù)點(diǎn)舍去,繼續(xù)用擬合
的直線(xiàn)方程,采用本步驟的方法依次判斷下一個(gè)數(shù)據(jù)點(diǎn),數(shù)據(jù)點(diǎn)坐標(biāo)為Xj = n+2,n+3,…, 直到不滿(mǎn)足為止;如果…$不成立,則說(shuō)明該數(shù)據(jù)點(diǎn)超出了預(yù)測(cè)數(shù)據(jù)加減壓縮限值的范圍,
記錄不滿(mǎn)足判別條件的數(shù)據(jù)點(diǎn)的前一個(gè)數(shù)據(jù)點(diǎn)的擬合值,并以前一個(gè)數(shù)據(jù)點(diǎn)為讀入數(shù)據(jù)的起點(diǎn),返回步驟(1)。本發(fā)明的發(fā)明目的是這樣實(shí)現(xiàn)的 本發(fā)明高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法為預(yù)測(cè)遞推法,讀入η個(gè)數(shù)據(jù)點(diǎn)采用最小二乘擬合方法擬合直線(xiàn)方程,如果這η個(gè)數(shù)據(jù)點(diǎn)不滿(mǎn)足偏離直線(xiàn)方程小于壓縮限值δ, 則把這η個(gè)數(shù)據(jù)點(diǎn)的起點(diǎn)保存,然后,再讀入起點(diǎn)后的η個(gè)數(shù)據(jù)點(diǎn)擬合直線(xiàn)方程,并判斷,依次類(lèi)推,直到η個(gè)數(shù)據(jù)點(diǎn)滿(mǎn)足偏離直線(xiàn)方程小于壓縮限值δ。然后,讀入判斷后續(xù)數(shù)據(jù)點(diǎn)數(shù)據(jù)值h與根據(jù)直線(xiàn)方程得到的預(yù)測(cè)的擬合值乂的偏離是否小于等于壓縮限值δ的判別條件,如果小于,則舍棄,繼續(xù)讀入判斷后續(xù)數(shù)據(jù)點(diǎn),直到大于壓縮限值δ ;如果大于,則保存不滿(mǎn)足判別條件的數(shù)據(jù)點(diǎn)的前一個(gè)數(shù)據(jù)點(diǎn)的擬合值,并以前一個(gè)數(shù)據(jù)點(diǎn)為讀入數(shù)據(jù)的起點(diǎn),重新讀入η個(gè)數(shù)據(jù)點(diǎn),進(jìn)行擬合判斷和保存,直到將所有的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮完畢。在本發(fā)明中,直線(xiàn)方程的走向更符合后續(xù)數(shù)據(jù)點(diǎn)的變化趨勢(shì),在一定壓縮限值范圍內(nèi)都有非常好的數(shù)據(jù)壓縮率,高于任何幾種傳統(tǒng)的壓縮方法。在壓縮時(shí)間方面,由于擬合次數(shù)相比線(xiàn)性外插法少,計(jì)算時(shí)間相應(yīng)減少,壓縮時(shí)間的快速方面也得到了提高,對(duì)工業(yè)數(shù)據(jù)有實(shí)時(shí)性的要求有較好的改進(jìn)。因此,本發(fā)明高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法適合數(shù)據(jù)有一定波動(dòng),精度要求不是太高,而對(duì)數(shù)據(jù)壓縮率和壓縮速度要求較高的數(shù)據(jù)的壓縮。
圖1是現(xiàn)有技術(shù)穩(wěn)態(tài)閾值法一實(shí)例示意圖;圖2是現(xiàn)有技術(shù)旋轉(zhuǎn)門(mén)算法一實(shí)例示意圖;圖3是現(xiàn)有技術(shù)線(xiàn)性外插算法一實(shí)例示意圖;圖4是本發(fā)明高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法一具體實(shí)施方式
示意圖;圖5是圖4所示高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法的具體流程圖;圖6是需要壓縮的工業(yè)實(shí)時(shí)數(shù)據(jù);圖7是圖6的工業(yè)實(shí)時(shí)數(shù)據(jù)四種壓縮方法在不同壓縮限值下的壓縮比曲線(xiàn)具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式
進(jìn)行描述,以便本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明。需要特別提醒注意的是,在以下的描述中,當(dāng)已知功能和設(shè)計(jì)的詳細(xì)描述也許會(huì)淡化本發(fā)明的主要內(nèi)容時(shí),這些描述在這里將被忽略。實(shí)施例圖4是本發(fā)明高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法一具體實(shí)施方式
示意圖。在本實(shí)施例中,如圖4所示,對(duì)工業(yè)實(shí)時(shí)數(shù)據(jù)以起點(diǎn)讀入η個(gè)數(shù)據(jù)點(diǎn)(Xi,Yi), η = 5,Xi = i,i = 1,2,為第i個(gè)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)值,將5個(gè)點(diǎn)按一次階擬合出一條直線(xiàn)如圖4-1 (a)所示,擬合的直線(xiàn)方程為y = a0+alX(1)其中,a0, B1是擬合直線(xiàn)的系數(shù);把進(jìn)行直線(xiàn)擬合的5個(gè)點(diǎn)的^ci依次帶入擬合出的直線(xiàn)方程,求出對(duì)應(yīng)的擬合值 J;,判斷進(jìn)行擬合的5個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值是否滿(mǎn)足判別條件I -X |< 5,如圖4 (b)所示①、若5個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值Ji全部滿(mǎn)足判別條件,則舍棄這5個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值只把這5個(gè)數(shù)據(jù)起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值乂保存下來(lái);繼續(xù)讀入下一個(gè)數(shù)據(jù)點(diǎn)(Xj,y」),擬合直線(xiàn)后讀入的下一個(gè)數(shù)據(jù)點(diǎn)坐標(biāo)為Xj,Xj = j,j = n+1代入⑴中擬合出的直線(xiàn)方程,求得相應(yīng)擬合值乂,根據(jù)壓縮限值δ,以及實(shí)際讀入的下一個(gè)數(shù)據(jù)值5V判斷如果-^l < 5成立,則說(shuō)明該數(shù)據(jù)點(diǎn)在預(yù)測(cè)范圍內(nèi),該數(shù)據(jù)點(diǎn)舍去,繼續(xù)用擬合
的直線(xiàn)方程,采用本步驟的方法依次判斷下一個(gè)數(shù)據(jù)點(diǎn),數(shù)據(jù)點(diǎn)坐標(biāo)為\ = 5+2,5+3,…, 如圖4(c)所示,直到不滿(mǎn)足為止。如果^不成立,則說(shuō)明該數(shù)據(jù)點(diǎn)超出了預(yù)測(cè)數(shù)據(jù)加減壓縮限值的范圍,
記錄不滿(mǎn)足判別條件的數(shù)據(jù)點(diǎn)的前一個(gè)數(shù)據(jù)點(diǎn)的擬合值,并以前一個(gè)數(shù)據(jù)點(diǎn)為讀入數(shù)據(jù)的起點(diǎn),如圖4 (d)所示,然后返回,重新讀入η = 5個(gè)數(shù)據(jù)進(jìn)行壓縮,如圖4 (e)、(f)、(g)、(h) 所示,最后歸檔的數(shù)據(jù)點(diǎn)為圖4(h)中打圈的數(shù)據(jù)點(diǎn)。②、若有不滿(mǎn)足判別條件的擬合值,則保存這η個(gè)數(shù)據(jù)起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值乂保存下來(lái),然后,將讀入數(shù)據(jù)的起點(diǎn)向后移一位,然后返回,重新讀入η = 5個(gè)數(shù)據(jù)進(jìn)行壓縮。圖5是圖4所示高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法的具體流程圖。在本實(shí)施例中,如圖5所示,采用first作為讀取數(shù)據(jù)的起點(diǎn)變量,用于記錄起點(diǎn)數(shù)據(jù)在整個(gè)需要壓縮的工業(yè)實(shí)時(shí)數(shù)據(jù)的位置,初始值為1 ;以first為起點(diǎn),在需要壓縮的工業(yè)實(shí)時(shí)數(shù)據(jù)中讀取5個(gè)數(shù)據(jù)點(diǎn)擬合一條直線(xiàn),判斷5個(gè)數(shù)據(jù)點(diǎn)是否滿(mǎn)足壓縮限值,即是否滿(mǎn)足判別條件I只-X如果不滿(mǎn)足,則存儲(chǔ)first對(duì)應(yīng)的擬合值,將first加1存入到first中,即保存這η個(gè)數(shù)據(jù)中起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值X保存下來(lái),然后,將讀入數(shù)據(jù)的起點(diǎn)向后移一位,然后返回,重新讀入η = 5個(gè)數(shù)據(jù)進(jìn)行壓縮。
如果滿(mǎn)足,繼續(xù)讀入下一個(gè)數(shù)據(jù)點(diǎn)(Xp h),下一點(diǎn)數(shù)據(jù)在需要壓縮的工業(yè)實(shí)時(shí)數(shù)據(jù)中的位置用check變量來(lái)確定,check = first+5 ;然后,依據(jù)擬合出的直線(xiàn)方程,求出相
應(yīng)的擬合值 <,判斷數(shù)據(jù)值h是否滿(mǎn)足壓縮門(mén)限S,即是否滿(mǎn)足…5,如果不滿(mǎn)足,
則說(shuō)明該數(shù)據(jù)點(diǎn)超出了預(yù)測(cè)數(shù)據(jù)加減壓縮限值的范圍,記錄不滿(mǎn)足判別條件的數(shù)據(jù)點(diǎn)的前一個(gè)數(shù)據(jù)點(diǎn)的擬合值,并以前一個(gè)數(shù)據(jù)點(diǎn)為讀入數(shù)據(jù)的起點(diǎn),即first = check-1,返回重新讀入η = 5個(gè)數(shù)據(jù)進(jìn)行壓縮,如果滿(mǎn)足,則說(shuō)明該數(shù)據(jù)點(diǎn)在預(yù)測(cè)范圍內(nèi),該數(shù)據(jù)點(diǎn)舍去,繼續(xù)用擬合的直線(xiàn)方程,采用本步驟的方法依次判斷下一個(gè)數(shù)據(jù)點(diǎn),即check = check+1,繼續(xù)進(jìn)行下下一個(gè)數(shù)據(jù)點(diǎn)的判斷,直到不滿(mǎn)足為止。1、四種種壓縮方法壓縮率的比較壓縮測(cè)試即為對(duì)壓縮效果的測(cè)試,本測(cè)試工業(yè)實(shí)時(shí)數(shù)據(jù)如圖6所示,點(diǎn)數(shù)為6000 點(diǎn),噪聲為0. 5,得出各壓縮方法在不同壓縮限值時(shí)的壓縮測(cè)試結(jié)果?!包c(diǎn)數(shù)”表示壓縮后數(shù)據(jù)點(diǎn)數(shù),ratio表示壓縮比,結(jié)果如表1所示。
權(quán)利要求
1. 一種高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法,其特征在于,包括以下步驟 (1)、若工業(yè)實(shí)時(shí)數(shù)據(jù)剩余點(diǎn)少于η個(gè),η彡3,則已到工業(yè)實(shí)時(shí)數(shù)據(jù)的末尾,則把這幾個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)值全部保存下來(lái);否則,對(duì)工業(yè)實(shí)時(shí)數(shù)據(jù)順序讀入η個(gè)數(shù)據(jù)點(diǎn)(Xi,Yi), Xi = i,i = l,2,…,n,yi為第i個(gè)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)值;采用最小二乘擬合方法,對(duì)這η個(gè)數(shù)據(jù)進(jìn)行直線(xiàn)擬合,擬合的直線(xiàn)方程為 y = SL^a1X(1)其中,%,%是擬合直線(xiàn)的系數(shù);把這η個(gè)數(shù)據(jù)點(diǎn)的Xi值依次代入擬合出的直線(xiàn)方程,得到擬合值乂 ;O)、判斷η個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值71是否滿(mǎn)足判別條件|只-乂 |<5,δ為壓縮限值;①、若η個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值全部滿(mǎn)足判別條件,則舍棄這η個(gè)數(shù)據(jù)點(diǎn)數(shù)據(jù)值只把這 η個(gè)數(shù)據(jù)起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值乂保存下來(lái),跳轉(zhuǎn)到第C3)步;②、若有不滿(mǎn)足判別條件的擬合值擬合值,則保存這η個(gè)數(shù)據(jù)中起點(diǎn)對(duì)應(yīng)的擬合值,即擬合值乂保存下來(lái),然后,將讀入數(shù)據(jù)的起點(diǎn)向后移一位,返回第(1)步;(3)繼續(xù)讀入下一個(gè)數(shù)據(jù)點(diǎn),擬合直線(xiàn)后讀入的下一個(gè)數(shù)據(jù)點(diǎn)坐標(biāo)為\,\ = η+1,代入 (1)中擬合出的直線(xiàn)方程,求得相應(yīng)擬合值^,根據(jù)壓縮限值S,以及實(shí)際讀入的下一個(gè)數(shù)據(jù)值5V判斷如果成立,則說(shuō)明該數(shù)據(jù)點(diǎn)在預(yù)測(cè)范圍內(nèi),該數(shù)據(jù)點(diǎn)舍去,繼續(xù)用擬合的直線(xiàn)方程,采用本步驟的方法依次判斷下一個(gè)數(shù)據(jù)點(diǎn),數(shù)據(jù)點(diǎn)坐標(biāo)為\ = η+2, η+3,…,直到不滿(mǎn)足為止;如果…5不成立,則說(shuō)明該數(shù)據(jù)點(diǎn)超出了預(yù)測(cè)數(shù)據(jù)加減壓縮限值的范圍,記錄不滿(mǎn)足判別條件的數(shù)據(jù)點(diǎn)的前一個(gè)數(shù)據(jù)點(diǎn)的擬合值,并以前一個(gè)數(shù)據(jù)點(diǎn)為讀入數(shù)據(jù)的起點(diǎn),返回步驟(1)。
全文摘要
本發(fā)明公開(kāi)了一種高壓縮比的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮方法,讀入n個(gè)數(shù)據(jù)點(diǎn)采用最小二乘擬合方法擬合直線(xiàn)方程,如果這n個(gè)數(shù)據(jù)點(diǎn)不滿(mǎn)足直線(xiàn)方程偏離小于壓縮限值,則起點(diǎn)保存,再讀入起點(diǎn)后的n個(gè)數(shù)據(jù)點(diǎn)擬合直線(xiàn)方程,重新開(kāi)始。如果滿(mǎn)足,讀入判斷后續(xù)數(shù)據(jù)點(diǎn)數(shù)據(jù)值偏離是否小于等于壓縮限值δ,如果小于,則舍棄,繼續(xù)讀入判斷后續(xù)數(shù)據(jù)點(diǎn),直到大于壓縮限值δ;如果大于,前一個(gè)數(shù)據(jù)點(diǎn)的擬合值,以前一個(gè)數(shù)據(jù)點(diǎn)為讀入數(shù)據(jù)的起點(diǎn),重新讀入n個(gè)數(shù)據(jù)點(diǎn),進(jìn)行擬合判斷和保存,直到將所有的工業(yè)實(shí)時(shí)數(shù)據(jù)壓縮完畢。本發(fā)明中,直線(xiàn)方程的走向更符合后續(xù)數(shù)據(jù)點(diǎn)的變化趨勢(shì),在一定壓縮限值范圍內(nèi)都有非常好的數(shù)據(jù)壓縮率,高于任何幾種傳統(tǒng)的壓縮方法。
文檔編號(hào)H03M7/30GK102437854SQ20111034428
公開(kāi)日2012年5月2日 申請(qǐng)日期2011年11月3日 優(yōu)先權(quán)日2011年11月3日
發(fā)明者古軍, 康波, 歐陽(yáng)平, 溫李慧, 詹惠琴, 趙輝, 陶宇翔 申請(qǐng)人:電子科技大學(xué)