一種波形數(shù)據(jù)壓縮方法與系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)壓縮領(lǐng)域,特別是涉及一種波形數(shù)據(jù)壓縮方法與系統(tǒng)。
【背景技術(shù)】
[0002] 分布式行波故障定位系統(tǒng)組成:在高壓輸電線路中安裝的一組裝置中包括3個(gè)設(shè) 備,每個(gè)設(shè)備中包含至少一個(gè)行波檢測(cè)和一個(gè)工頻檢測(cè);每個(gè)設(shè)備的行波數(shù)據(jù)采樣率為 1 OMhz,采樣時(shí)間為5ms,每個(gè)點(diǎn)由兩個(gè)字節(jié)組成,其波形數(shù)據(jù)總計(jì)100K BYTE;同樣,工頻數(shù) 據(jù)的采樣率為ΙΟΚΗζ,采樣時(shí)間為100ms,每個(gè)點(diǎn)由兩個(gè)字節(jié)組成,其波形數(shù)據(jù)總計(jì)2K BYTE; 因此,每個(gè)設(shè)備總的數(shù)據(jù)采集量為102K BYTE,3個(gè)設(shè)備總計(jì)306K BYTE;由此可見,在實(shí)際設(shè) 計(jì)中需要考慮其存儲(chǔ)及傳輸?shù)男蕟?wèn)題。
[0003] 按實(shí)際輸電線路所在環(huán)境的特點(diǎn),數(shù)據(jù)從裝置中傳輸?shù)椒?wù)器不保證都能夠使用 4G或3G網(wǎng)絡(luò),必須考慮使用GPRS網(wǎng)絡(luò)。而GPRS網(wǎng)絡(luò)的上行速度是非常慢的,在一般情況下通 信模塊的速度實(shí)測(cè)為1KBYTE/S左右,一個(gè)裝置的全部數(shù)據(jù)在網(wǎng)絡(luò)較好的情況下傳輸完畢需 要至少306秒,再加上設(shè)備間數(shù)據(jù)傳輸(時(shí)間大概為一個(gè)設(shè)備60秒)及GPRS網(wǎng)絡(luò)的實(shí)際效率, 其數(shù)據(jù)傳輸時(shí)間將大致在500秒左右;無(wú)論其GPRS實(shí)際速度能夠提高多少,波形數(shù)據(jù)的壓縮 存儲(chǔ)及傳輸都顯得特別重要。即便今后4G網(wǎng)絡(luò)可以普及到每一個(gè)地方,行波的數(shù)據(jù)量可能 會(huì)因?yàn)樾阅芴嵘脑虿杉嗟臄?shù)據(jù),其存儲(chǔ)及傳輸?shù)男嗜匀恢档每紤]。因此,在分布 式故障定位系統(tǒng)中,需要對(duì)行波及工頻的采集數(shù)據(jù)進(jìn)行數(shù)據(jù)壓縮,通過(guò)提高壓縮率實(shí)現(xiàn)數(shù) 據(jù)的快速存儲(chǔ)及傳輸。
[0004] 現(xiàn)有分布式故障行波定位系統(tǒng)在設(shè)計(jì)上很少考慮波形數(shù)據(jù)的壓縮。另外,按現(xiàn)有 軟件技術(shù)的壓縮算法,都是基于一種通用數(shù)據(jù)的壓縮,對(duì)這種特定波形數(shù)據(jù)的壓縮率提高 不大。
【發(fā)明內(nèi)容】
[0005] 有鑒于此,本發(fā)明的主要目的在于提供一種波形數(shù)據(jù)壓縮方法與系統(tǒng),可以有效 提高波形數(shù)據(jù)的壓縮率。
[0006] 為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種波形數(shù)據(jù)壓縮方法,包括:
[0007] 獲取所有待壓縮波形數(shù)據(jù),從第二個(gè)波形數(shù)據(jù)開始,分別計(jì)算各波形數(shù)據(jù)與前一 波形數(shù)據(jù)的差值數(shù)據(jù),直到滿足計(jì)算停止條件時(shí)停止差值數(shù)據(jù)的計(jì)算;
[0008] 第一計(jì)算停止條件為差值數(shù)據(jù)連續(xù)為0的差值數(shù)據(jù)個(gè)數(shù)超過(guò)第一預(yù)設(shè)閾值;第二 計(jì)算停止條件為差值數(shù)據(jù)連續(xù)出現(xiàn)符號(hào)相同的差值數(shù)據(jù)個(gè)數(shù)超過(guò)第二預(yù)設(shè)閾值;第三計(jì)算 停止條件為差值數(shù)據(jù)大于或等于第三預(yù)設(shè)閾值;第四計(jì)算停止條件為差值數(shù)據(jù)長(zhǎng)度等于第 四預(yù)設(shè)閾值;
[0009] 當(dāng)滿足第一計(jì)算停止條件時(shí),進(jìn)行分塊,將個(gè)數(shù)超過(guò)第一預(yù)設(shè)閾值的連續(xù)為0的差 值數(shù)據(jù)中的第一個(gè)為0的差值數(shù)據(jù)之前的差值數(shù)據(jù)確定為第一分塊,將所述第一個(gè)為0的差 值數(shù)據(jù)以及之后連續(xù)為0的差值數(shù)據(jù)確定為第二分塊,將所述第一分塊按照差值壓縮方法 進(jìn)行壓縮,將所述第二分塊按照復(fù)制壓縮方法進(jìn)行壓縮;
[0010]當(dāng)滿足第二計(jì)算停止條件時(shí),進(jìn)行分塊,將個(gè)數(shù)超過(guò)第二預(yù)設(shè)閾值的連續(xù)出現(xiàn)的 相同符號(hào)的差值數(shù)據(jù)中第一個(gè)差值數(shù)據(jù)之前的差值數(shù)據(jù)確定為第一分塊,將所述第一個(gè)差 值數(shù)據(jù)以及之后符號(hào)連續(xù)相同的差值數(shù)據(jù)確定為第二分塊,將所述第一分塊按照包含符號(hào) 位的差值壓縮方法進(jìn)行壓縮,將所述第二分塊按照不包含符號(hào)位的差值壓縮方法進(jìn)行壓 縮;
[0011]當(dāng)滿足第三計(jì)算停止條件時(shí),進(jìn)行分塊,將大于或等于第三預(yù)設(shè)閾值的差值數(shù)據(jù) 之前的差值數(shù)據(jù)作為第一分塊,將所述大于或等于第三預(yù)設(shè)閾值的差值數(shù)據(jù)以及之后滿足 相同條件的連續(xù)差值數(shù)據(jù)作為第二分塊,將所述第一分塊按照差值壓縮方法進(jìn)行壓縮,將 所述第二分塊按照原始數(shù)據(jù)存儲(chǔ)方法處理;
[0012] 當(dāng)滿足第四計(jì)算停止條件時(shí),進(jìn)行分塊,將差值數(shù)據(jù)長(zhǎng)度等于第四預(yù)設(shè)閾值的各 差值數(shù)據(jù)確定為一個(gè)分塊,將該分塊按照差值壓縮方法進(jìn)行壓縮。
[0013] 優(yōu)選地,當(dāng)需要將分塊按照差值壓縮方法進(jìn)行壓縮時(shí),還包括:
[0014] 步驟A:確定要按照差值壓縮方法進(jìn)行壓縮的目標(biāo)分塊,將所述目標(biāo)分塊中的第一 個(gè)差值數(shù)據(jù)比特位長(zhǎng)X作為最大值,記錄所述最大值的位置m,將所述目標(biāo)分塊中的第二個(gè) 差值數(shù)據(jù)比特位長(zhǎng)y,記錄所述第二個(gè)差值數(shù)據(jù)的位置η;
[0015] 步驟Β:判斷y是否大于X,如果否則進(jìn)入步驟C,如果是,則判斷第一預(yù)設(shè)不等式是 否成立,如果成立,則將所述第二個(gè)差值數(shù)據(jù)之前的n-1個(gè)差值數(shù)據(jù)確定為一個(gè)分塊,將該 分塊按照差值壓縮方法進(jìn)行壓縮,如果不成立則將y賦值為X,將η賦值為m,進(jìn)入步驟D;
[0016] 步驟C:判斷y是否小于X,如果否則進(jìn)入步驟D,如果是,則查找m至η之間差值數(shù)據(jù) 比特位長(zhǎng)的次大值ζ,判斷第二預(yù)設(shè)不等式是否成立,如果成立,則將m之前的差值數(shù)據(jù)確定 為一個(gè)分塊,將該分塊按照差值壓縮方法進(jìn)行壓縮;
[0017]步驟D:判斷當(dāng)前差值數(shù)據(jù)是否為最后一個(gè)數(shù)據(jù),如果是,則繼續(xù)按照差值壓縮方 法進(jìn)行壓縮,否則取出下一個(gè)差值數(shù)據(jù),將其比特位長(zhǎng)確定為y,位置確定為n,返回步驟B。
[0018] 優(yōu)選地,所述第一預(yù)設(shè)閾值為(16/k)[+l]+l,k為已經(jīng)計(jì)算出的差值數(shù)據(jù)的比特位 長(zhǎng)中的最大比特位長(zhǎng)值。
[0019] 優(yōu)選地,所述第二預(yù)設(shè)閾值為16。
[0020]優(yōu)選地,所述第三預(yù)設(shè)閾值為128。
[0021]優(yōu)選地,所述第四預(yù)設(shè)閾值為512。
[0022] 優(yōu)選地,所述第一預(yù)設(shè)不等式為(x*(n-l))/8[+l]+3<y*n/8[+l]。
[0023] 優(yōu)選地,所述第二預(yù)設(shè)不等式為(z*(n_m) )/8[+l]+3+x*m/8[+l]+3<x*n/8[+l]。
[0024] 本發(fā)明還提供了一種波形數(shù)據(jù)壓縮系統(tǒng),包括:
[0025] 差值數(shù)據(jù)計(jì)算模塊、計(jì)算停止條件判斷模塊和分塊壓縮模塊;
[0026] 所述差值數(shù)據(jù)計(jì)算模塊用于獲取所有待壓縮波形數(shù)據(jù),從第二個(gè)波形數(shù)據(jù)開始, 分別計(jì)算各波形數(shù)據(jù)與前一波形數(shù)據(jù)的差值數(shù)據(jù),直到所述計(jì)算停止條件判斷模塊判斷成 立時(shí)停止差值數(shù)據(jù)的計(jì)算;
[0027] 所述計(jì)算停止條件判斷模塊用于判斷是否滿足計(jì)算停止條件,第一計(jì)算停止條件 為差值數(shù)據(jù)連續(xù)為〇的差值數(shù)據(jù)個(gè)數(shù)超過(guò)第一預(yù)設(shè)閾值;第二計(jì)算停止條件為差值數(shù)據(jù)連 續(xù)出現(xiàn)符號(hào)相同的差值數(shù)據(jù)個(gè)數(shù)超過(guò)第二預(yù)設(shè)閾值;第三計(jì)算停止條件為差值數(shù)據(jù)大于或 等于第三預(yù)設(shè)閾值;第四計(jì)算停止條件為差值數(shù)據(jù)長(zhǎng)度等于第四預(yù)設(shè)閾值;
[0028] 所述分塊壓縮模塊用于:
[0029] 當(dāng)滿足第一計(jì)算停止條件時(shí),進(jìn)行分塊,將個(gè)數(shù)超過(guò)第一預(yù)設(shè)閾值的連續(xù)為0的差 值數(shù)據(jù)中的第一個(gè)為〇的差值數(shù)據(jù)之前的差值數(shù)據(jù)確定為第一分塊,將所述第一個(gè)為〇的差 值數(shù)據(jù)以及之后連續(xù)為〇的差值數(shù)據(jù)確定為第二分塊,將所述第一分塊按照差值壓縮方法 進(jìn)行壓縮,將所述第二分塊按照復(fù)制壓縮方法進(jìn)行壓縮;
[0030] 當(dāng)滿足第二計(jì)算停止條件時(shí),進(jìn)行分塊,將個(gè)數(shù)超過(guò)第二預(yù)設(shè)閾值的連續(xù)出現(xiàn)的 相同符號(hào)的差值數(shù)據(jù)中第一個(gè)差值數(shù)據(jù)之前的差值數(shù)據(jù)確定為第一分塊,將所述第一個(gè)差 值數(shù)據(jù)以及之后符號(hào)連續(xù)相同的差值數(shù)據(jù)確定為第二分塊,將所述第一分塊按照包含符號(hào) 位的差值壓縮方法進(jìn)行壓縮,將所述第二分塊按照不包含符號(hào)位的差值壓縮方法進(jìn)行壓 縮;
[0031] 當(dāng)滿足第三計(jì)算停止條件時(shí),進(jìn)行分塊,將大于或等于第三預(yù)設(shè)閾值的差值數(shù)據(jù) 之前的差值數(shù)據(jù)作為第一分塊,將所述大于或等于第三預(yù)設(shè)閾值的差值數(shù)據(jù)以及之后滿足 相同條件的連續(xù)差值數(shù)據(jù)作為第二分塊,將所述第一分塊按照差值壓縮方法進(jìn)行壓縮,將 所述第二分塊按照原始數(shù)據(jù)存儲(chǔ)方法處理;
[0032] 當(dāng)滿足第四計(jì)算停止條件時(shí),進(jìn)行分塊,將差值數(shù)據(jù)長(zhǎng)度等于第四預(yù)設(shè)閾值的各 差值數(shù)據(jù)確定為一個(gè)分塊,將該分塊按照差值壓縮方法進(jìn)行壓縮。
[0033] 應(yīng)用本發(fā)明提供的一種波形數(shù)據(jù)壓縮方法與系統(tǒng),獲取所有待壓縮波形數(shù)據(jù),計(jì) 算各波形數(shù)據(jù)與前一波形數(shù)據(jù)的差值數(shù)據(jù),對(duì)出現(xiàn)差值數(shù)據(jù)連續(xù)為〇,差值數(shù)據(jù)符號(hào)連續(xù)相 同達(dá)到一定程度,差值數(shù)據(jù)較大的情況進(jìn)行分塊,根據(jù)不同分塊的特點(diǎn)使用差值壓縮方法, 復(fù)制壓縮方法或原始數(shù)據(jù)存儲(chǔ)的方法實(shí)現(xiàn)壓縮,對(duì)不滿足分塊條件達(dá)到一定長(zhǎng)度的差值數(shù) 據(jù)進(jìn)行強(qiáng)制分塊后進(jìn)行差值壓縮,可以根據(jù)波形數(shù)據(jù)得到的差值數(shù)據(jù)特點(diǎn)有針對(duì)地優(yōu)化差 值壓縮方法,提高對(duì)波形數(shù)據(jù)的壓縮效率。
【附圖說(shuō)明】
[0034] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù) 提供的附圖獲得其他的附圖。
[0035] 圖1為基于差值壓縮基本思想的壓縮流程圖;
[0036]圖2為壓縮數(shù)據(jù)存儲(chǔ)格式圖;
[0037] 圖3為Method方法字結(jié)構(gòu)圖;
[0038] 圖4為基于差值壓縮基本思想的解壓縮流程圖;
[0039]圖5為本發(fā)明一種波形數(shù)據(jù)壓縮方法實(shí)施例一的差值壓縮分塊處理流程圖;
[0040] 圖6為本發(fā)明一種波形數(shù)據(jù)壓縮方法實(shí)施例一的波形測(cè)試圖;
[0041] 圖7為本發(fā)明一種波形數(shù)據(jù)壓縮方法實(shí)施例一的差值算法lms采樣壓縮第一次結(jié) 果圖;
[0042] 圖8為RAR軟件壓縮算法lms采樣壓縮第一次結(jié)果圖;
[0043] 圖9為本發(fā)明一種波形數(shù)據(jù)壓縮方法實(shí)施例一的差值算法lms采樣壓縮第二次結(jié) 果圖;
[0044] 圖10為RAR軟件壓縮算法lms采樣壓縮第二次結(jié)果圖;
[0045] 圖11為本發(fā)明一種波形數(shù)據(jù)壓縮方法實(shí)施例一的差值算法lms采樣壓縮第三次結(jié) 果圖;
[0046]圖12為RAR軟件壓縮算法lms采樣壓縮第三次結(jié)果圖;
[0047]圖13為本發(fā)明一種波形數(shù)據(jù)壓縮方法實(shí)施例一的