本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種基于主分量信噪比的遙測(cè)數(shù)據(jù)壓縮批處理方法。
背景技術(shù):
遙測(cè)系統(tǒng)中,需要對(duì)被測(cè)對(duì)象無(wú)人機(jī)的壓力、溫度、濕度、角度等多參數(shù)進(jìn)行采集并無(wú)線通訊傳輸至地面,通過(guò)數(shù)據(jù)分析處理對(duì)無(wú)人機(jī)的狀態(tài)進(jìn)行評(píng)價(jià)及監(jiān)測(cè)。遙測(cè)試驗(yàn)中需要對(duì)反映各部分工作狀態(tài)及環(huán)境多個(gè)參數(shù)進(jìn)行測(cè)量,并且會(huì)持續(xù)較長(zhǎng)時(shí)間,將產(chǎn)生海量的遙測(cè)數(shù)據(jù),而且遙測(cè)系統(tǒng)也正朝著高精度的方向發(fā)展,這也勢(shì)必會(huì)增加數(shù)據(jù)量。假設(shè)遙測(cè)時(shí)間為1400s時(shí),遙測(cè)碼率僅以320kb/s的較慢速度計(jì)算,考慮到數(shù)據(jù)傳輸處理時(shí)的冗余量,最終存儲(chǔ)數(shù)據(jù)約為600m。若遙測(cè)碼率提高10倍到兆級(jí)別,那么總數(shù)據(jù)量將多達(dá)幾g甚至十幾g或更多,對(duì)數(shù)據(jù)判讀分析提出很大的挑戰(zhàn)。遙測(cè)數(shù)據(jù)參數(shù)眾多、數(shù)據(jù)量龐大,如何進(jìn)行數(shù)據(jù)壓縮保留有效信息,成為遙測(cè)數(shù)據(jù)分析處理中首要解決的問(wèn)題。
由于遙測(cè)數(shù)據(jù)具有多樣性特征,在實(shí)際應(yīng)用中,如何在不損失數(shù)據(jù)信息的前提下,最有效地進(jìn)行數(shù)據(jù)壓縮及信息提取,是亟需解決的問(wèn)題。實(shí)際遙測(cè)過(guò)程中,大多依舊人工分析判讀數(shù)據(jù),這種方法存在效率低下、耗費(fèi)大量的人力物力的問(wèn)題,尤其是測(cè)試過(guò)程較長(zhǎng)時(shí)更為明顯。現(xiàn)有的數(shù)據(jù)壓縮方法中,主分量分析是適應(yīng)這一需求的統(tǒng)計(jì)分析方法,通過(guò)提取出不相關(guān)的特征變量,降低原有數(shù)據(jù)的維數(shù)及冗余度,實(shí)現(xiàn)數(shù)據(jù)的壓縮及特征提取。其往往根據(jù)經(jīng)驗(yàn)確定分量貢獻(xiàn)率的閾值,例如分量貢獻(xiàn)率閾值通常設(shè)定為90%,進(jìn)行主分量提取,其余低階分量判定為噪聲進(jìn)行截?cái)唷S捎谶b測(cè)數(shù)據(jù)種類(lèi)繁多,具有多樣性及復(fù)雜性,基于閾值的主分量分析難以有針對(duì)性地調(diào)整貢獻(xiàn)率閾值,因此很可能會(huì)損失有效信息,對(duì)遙測(cè)數(shù)據(jù)壓縮產(chǎn)生不良影響。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述的分析,本發(fā)明旨在提供一種基于主分量信噪比的遙測(cè)數(shù)據(jù)壓縮批處理方法,該方法針對(duì)遙測(cè)數(shù)據(jù)巨大、人工分析效率低,而當(dāng)前數(shù)據(jù)壓縮方法又難以有效地進(jìn)行數(shù)據(jù)批處理壓縮的問(wèn)題,在最大化保留數(shù)據(jù)信息的前提下,最有效地實(shí)現(xiàn)海量遙測(cè)數(shù)據(jù)的壓縮存儲(chǔ)。
本發(fā)明的目的主要是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的:
一種基于主分量信噪比的遙測(cè)數(shù)據(jù)壓縮批處理方法,包括以下步驟:
步驟1、實(shí)時(shí)獲取遙測(cè)數(shù)據(jù)信息;
步驟2、循環(huán)導(dǎo)入遙測(cè)數(shù)據(jù);
步驟3、計(jì)算導(dǎo)入數(shù)據(jù)的冗余度,根據(jù)冗余度判斷是否需要壓縮處理,是則進(jìn)入步驟4;否,無(wú)需壓縮直接存儲(chǔ);
步驟4、采用主分量分析法對(duì)導(dǎo)入數(shù)據(jù)進(jìn)行壓縮處理后實(shí)時(shí)輸出;所述主分量分析法以主分量信噪比為目標(biāo)函數(shù),主分量信噪比為相鄰兩階分量的特征值比值;
步驟5、判斷循環(huán)是否結(jié)束,否,則返回步驟2繼續(xù)處理。
進(jìn)一步,所述步驟3包括如下子步驟:
步驟301、計(jì)算導(dǎo)入數(shù)據(jù)數(shù)據(jù)x=[x1,x2,…,xm]t的協(xié)方差矩陣cx及相關(guān)系數(shù)矩陣rx;
其中,m為導(dǎo)入遙測(cè)數(shù)據(jù)維數(shù),上標(biāo)t代表轉(zhuǎn)置,各個(gè)行向量xi包含等量的數(shù)據(jù)點(diǎn),i=1,…m;
步驟302、根據(jù)下式計(jì)算協(xié)方差矩陣的各個(gè)元素,組成協(xié)方差矩陣;
cx(i,j)=e[(xi-e(xi))(xj-e(xj))],i=1,…m,j=1,…m;
其中,e(·)為向量的期望值估計(jì)。
步驟303、利用下式由協(xié)方差矩陣的各個(gè)元素計(jì)算得到原始數(shù)據(jù)的相關(guān)系數(shù)矩陣rx的元素rx(i,j),組成相關(guān)系數(shù)矩陣rx;
步驟304、對(duì)相關(guān)系數(shù)矩陣三角元素rx(i,j)的絕對(duì)值進(jìn)行判斷,當(dāng)所有絕對(duì)值均小于閾值時(shí),則判斷結(jié)果為不需要進(jìn)行壓縮直接存儲(chǔ);否則判斷結(jié)果為需要進(jìn)行壓縮,進(jìn)入步驟4。
進(jìn)一步,所述閾值取值為0.3.
進(jìn)一步,所述步驟4包括:
步驟401、對(duì)協(xié)方差矩陣cx進(jìn)行特征值分解,得到特征值對(duì)角陣d和特征向量矩陣v,所述對(duì)角陣d的對(duì)角元素按降序排列;
步驟402、計(jì)算主分量信噪比snr(i,i+1),i=1,…m-1;
主分量信噪比snr(i,i+1)=λi/λi+1,i=1,…m-1,為相鄰兩階分量的特征值比值;
步驟403、根據(jù)步驟402中的主分量信噪比得到主分量的臨界點(diǎn);
步驟404、根據(jù)所述臨界點(diǎn),取p階及p階之前的特征向量構(gòu)建壓縮矩陣[v1,v2,…,vp];
步驟405、利用所述壓縮矩陣對(duì)數(shù)據(jù)進(jìn)行壓縮,存儲(chǔ)壓縮后的數(shù)據(jù)pcp;所述壓縮采用下式進(jìn)行:
pcp=[v1,v2,…,vp]tx。
進(jìn)一步,
所述步驟401中,v,d,cx滿(mǎn)足如下關(guān)系:
cxv=vd
其中:d的對(duì)角線元素λi對(duì)應(yīng)第i階分量的特征值,并且按降序排列;v的各列向量vi對(duì)應(yīng)第i階分量對(duì)應(yīng)的特征向量,i=1,…m。
進(jìn)一步,所述步驟403中,當(dāng)主分量信噪比數(shù)值大于10,出現(xiàn)第一個(gè)顯著峰值snr(p,p+1),p≤m-1時(shí),說(shuō)明主分量的信息量出現(xiàn)臨界點(diǎn)。
本發(fā)明有益效果如下:
本方法首先通過(guò)數(shù)據(jù)的相關(guān)系數(shù)矩陣定性分析數(shù)據(jù)冗余度,然后提出主分量信噪比作為技術(shù)指標(biāo),當(dāng)主分量信噪比突然增大出現(xiàn)峰值時(shí),表明前一階分量的信息量遠(yuǎn)遠(yuǎn)高于后一階分量的信息量,將前一階分量作為主分量提取的臨界點(diǎn),其余的低階分量判定為噪聲進(jìn)行截?cái)唷D軌蜻m應(yīng)遙測(cè)數(shù)據(jù)種類(lèi)繁多,數(shù)據(jù)海量的壓縮批處理問(wèn)題。對(duì)數(shù)據(jù)類(lèi)型、實(shí)際經(jīng)驗(yàn)等沒(méi)有特定要求,在最大化保留數(shù)據(jù)信息的前提下直觀地實(shí)現(xiàn)數(shù)據(jù)降維壓縮。
本發(fā)明的其他特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書(shū)中闡述,并且,部分的從說(shuō)明書(shū)中變得顯而易見(jiàn),或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在所寫(xiě)的說(shuō)明書(shū)、權(quán)利要求書(shū)、以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
附圖說(shuō)明
附圖僅用于示出具體實(shí)施例的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制,在整個(gè)附圖中,相同的參考符號(hào)表示相同的部件。
圖1為本發(fā)明實(shí)施例流程圖;
圖2為本發(fā)明具體實(shí)施例相關(guān)系數(shù)示意圖;
圖3為本發(fā)明具體實(shí)施例主分量信噪比示意圖;
圖4為本發(fā)明具體實(shí)施例提取各階主分量相關(guān)系數(shù)示意圖;
圖5為采用現(xiàn)有方法的分量貢獻(xiàn)量示意圖。
具體實(shí)施方式
下面結(jié)合附圖來(lái)具體描述本發(fā)明的優(yōu)選實(shí)施例,其中,附圖構(gòu)成本申請(qǐng)一部分,并與本發(fā)明的實(shí)施例一起用于闡釋本發(fā)明的原理。
如圖1所示,本實(shí)施例提供了一種基于主分量信噪比的遙測(cè)數(shù)據(jù)壓縮批處理方法,
包括以下步驟:
步驟1、實(shí)時(shí)獲取遙測(cè)數(shù)據(jù)信息;
步驟2、循環(huán)導(dǎo)入遙測(cè)數(shù)據(jù);
常見(jiàn)的遙測(cè)數(shù)據(jù)存儲(chǔ)格式為excel、txt、dat,在此以excel格式為例,進(jìn)行批量導(dǎo)入操作說(shuō)明。多個(gè)excel文件存儲(chǔ)在固定路徑下,每個(gè)文件中分別存儲(chǔ)不同工況、不同時(shí)間點(diǎn)的原始數(shù)據(jù)。
步驟3、計(jì)算導(dǎo)入數(shù)據(jù)的冗余度,根據(jù)冗余度判斷是否需要壓縮處理,是則進(jìn)入步驟4;否,無(wú)需壓縮直接存儲(chǔ);
具體地,包括:
步驟301、計(jì)算數(shù)據(jù)x=[x1,x2,…,xm]t的協(xié)方差矩陣cx及相關(guān)系數(shù)矩陣rx;
其中,m為原始數(shù)據(jù)維數(shù),上標(biāo)t代表轉(zhuǎn)置,各個(gè)行向量xi包含等量的數(shù)據(jù)點(diǎn),i=1,…m;如為壓力數(shù)據(jù)時(shí),各個(gè)行向量xi數(shù)據(jù)為同一時(shí)刻,所有壓力傳感器所采集的不同部位的壓力數(shù)據(jù);x=[x1,x2,…,xm]t為m個(gè)采集時(shí)刻所采集得到的壓力數(shù)據(jù);
步驟302、根據(jù)下式計(jì)算協(xié)方差矩陣的各個(gè)元素,組成協(xié)方差矩陣;
cx(i,j)=e[(xi-e(xi))(xj-e(xj))],i=1,…m,j=1,m;
其中,e(·)為向量的期望值估計(jì)。
步驟303、利用下式由協(xié)方差矩陣的各個(gè)元素計(jì)算得到原始數(shù)據(jù)的相關(guān)系數(shù)矩陣rx的元素rx(i,j),組成相關(guān)系數(shù)矩陣rx;
步驟304、對(duì)相關(guān)系數(shù)矩陣三角元素rx(i,j)的絕對(duì)值進(jìn)行判斷,當(dāng)所有絕對(duì)值均小于0.3時(shí),則判斷結(jié)果為不需要進(jìn)行壓縮直接存儲(chǔ);否則判斷結(jié)果為需要進(jìn)行壓縮,進(jìn)入步驟4。
相關(guān)系數(shù)的絕對(duì)值在[0,1]之間,代表兩個(gè)向量的線性相關(guān)程度。在樣本數(shù)目足夠多的條件下,當(dāng)相關(guān)系數(shù)在0.3以下,表示數(shù)據(jù)的相關(guān)性較弱;如果相關(guān)系數(shù)高于0.3時(shí),表示數(shù)據(jù)之間存在冗余,有必要進(jìn)行數(shù)據(jù)壓縮處理;該0.3值的選取,為經(jīng)過(guò)長(zhǎng)期實(shí)踐,分析得到的臨界值,其代表了有必要進(jìn)行數(shù)據(jù)壓縮的客觀指標(biāo)。
步驟4、采用主分量分析法對(duì)導(dǎo)入數(shù)據(jù)進(jìn)行壓縮處理后存儲(chǔ);所述主分量分析法以主分量信噪比為目標(biāo)函數(shù),主分量信噪比為相鄰兩階分量的特征值比值;
具體地,包括:
步驟401、對(duì)協(xié)方差矩陣cx進(jìn)行特征值分解,得到特征值對(duì)角陣d和特征向量矩陣v,所述對(duì)角陣d的對(duì)角元素按降序排列;
v,d,cx滿(mǎn)足如下關(guān)系:
cxv=vd
其中:d的對(duì)角線元素λi對(duì)應(yīng)第i階分量的特征值,并且按降序排列;v的各列向量vi對(duì)應(yīng)第i階分量對(duì)應(yīng)的特征向量,i=1,…m;
步驟402、計(jì)算主分量信噪比snr(i,i+1),i=1,…m-1;
所述主分量信噪比snr(i,i+1)=λi/λi+1,i=1,…m-1,為相鄰兩階分量的特征值比值;
步驟403、當(dāng)主分量信噪比數(shù)值大于10,出現(xiàn)第一個(gè)顯著峰值snr(p,p+1),p≤m-1時(shí),說(shuō)明主分量的信息量出現(xiàn)臨界點(diǎn);
主分量信噪比的變化趨勢(shì)有增加有降低,可能存在多個(gè)大小峰值,當(dāng)其數(shù)值大于10,且為第一個(gè)顯著的峰值時(shí),說(shuō)明峰值及之前的分量遠(yuǎn)高于后續(xù)分量的信息量,后續(xù)分量所含信息很低,可作為噪聲截?cái)唷?/p>
步驟404、根據(jù)所述臨界點(diǎn),取p階及p階之前的特征向量構(gòu)建壓縮矩陣[v1,v2,…,vp];
步驟405、利用所述壓縮矩陣對(duì)數(shù)據(jù)進(jìn)行壓縮,得到壓縮后的數(shù)據(jù)pcp;所述壓縮采用下式進(jìn)行:
pcp=[v1,v2,…,vp]tx。
步驟5、判斷循環(huán)是否結(jié)束,否,則返回步驟2繼續(xù)處理。
上述處理過(guò)程可由matlab腳本文件實(shí)現(xiàn),包括:獲取遙測(cè)數(shù)據(jù)信息、批量導(dǎo)入遙測(cè)數(shù)據(jù)、數(shù)據(jù)冗余度判定、特征值求解及排序、主分量信噪比求解及臨界階數(shù)確定、數(shù)據(jù)壓縮處理及存儲(chǔ)程序。程序的基本框架如下:
files_info=dir('e:\遙測(cè)數(shù)據(jù)\*.xls');%獲取遙測(cè)數(shù)據(jù)文件信息
fork=1:length(files_info)%從第一個(gè)文件開(kāi)始,循環(huán)處理遙測(cè)數(shù)據(jù)
……%批量導(dǎo)入遙測(cè)數(shù)據(jù)
……%數(shù)據(jù)冗余度判定
……%特征值求解及排序
……%主分量信噪比求解及臨界階數(shù)確定
……%數(shù)據(jù)壓縮處理及存儲(chǔ)
end
1.批量導(dǎo)入遙測(cè)數(shù)據(jù)
在此以excel格式為例,進(jìn)行批量導(dǎo)入遙測(cè)數(shù)據(jù)的操作說(shuō)明。多個(gè)excel文件存儲(chǔ)在上位機(jī)的固定路徑下,每個(gè)文件中分別存儲(chǔ)不同工況、不同時(shí)間點(diǎn)的原始數(shù)據(jù)。本方法的程序代碼為matlab循環(huán)語(yǔ)句,批量導(dǎo)入遙測(cè)數(shù)據(jù)的步驟及代碼如下:
huancun=zeros;%導(dǎo)入數(shù)據(jù)至工作空間,變量命名為“緩存”
huancun=xlsread(['e:\遙測(cè)數(shù)據(jù)\',files_info(k).name],1);
導(dǎo)入的遙測(cè)數(shù)據(jù)均存在一定程度的冗余,需要對(duì)每個(gè)數(shù)據(jù)進(jìn)行冗余度判定,然后進(jìn)行主分量求解,計(jì)算主分量信噪比,進(jìn)行壓縮處理。
2.數(shù)據(jù)冗余度判定
相關(guān)系數(shù)矩陣rx為對(duì)角矩陣,對(duì)矩陣上三角元素的絕對(duì)值逐行判定,如果數(shù)值均小于0.3,說(shuō)明遙測(cè)數(shù)據(jù)之間相關(guān)性非常弱,輸出cr_x=0;如果其中的元素?cái)?shù)值大于0.3時(shí),說(shuō)明數(shù)據(jù)之間存在一定的冗余度,需要進(jìn)一步壓縮處理,跳出循環(huán),輸出cr_x=1。當(dāng)cr_x=0時(shí),不再進(jìn)行數(shù)據(jù)壓縮處理,直接保存遙測(cè)數(shù)據(jù)至指定路徑“e:\壓縮數(shù)據(jù)”。否則,說(shuō)明遙測(cè)數(shù)據(jù)存在冗余,繼續(xù)進(jìn)行后續(xù)的壓縮處理步驟。
數(shù)據(jù)冗余度判定的代碼如下:
3.特征值求解及排序
特征值及特征向量求解的代碼如下:
[v,d]=eig(cx);%特征值分解
d=diag(d);
[d,ix]=sort(d,'descend');%按照特征值大小,對(duì)特征值及特征向量排序
v=v(:,ix);
4.主分量信噪比求解及臨界階數(shù)確定:
代碼如下:
得到主分量的臨界階數(shù)后,保留臨界階數(shù)以及之前的主分量進(jìn)行數(shù)據(jù)壓縮,并在上位機(jī)中存儲(chǔ)。存儲(chǔ)數(shù)據(jù)加入前綴“com_”,保存至指定路徑“e:\壓縮數(shù)據(jù)”。
5.數(shù)據(jù)壓縮及存儲(chǔ):
代碼如下:
pc=v(:,1:hold_ix)'*x;
xlswrite(['e:\壓縮數(shù)據(jù)\com_',files_info(k).name],pc);
實(shí)現(xiàn)了遙測(cè)數(shù)據(jù)壓縮批處理的整個(gè)程序。
以下,采用一具體數(shù)據(jù)對(duì)多維數(shù)據(jù)的冗余度判定、主分量信噪比臨界階數(shù)判定、數(shù)據(jù)壓縮過(guò)程進(jìn)行數(shù)值仿真,驗(yàn)證本方法的有效性及魯棒性。
原始數(shù)據(jù)為一6×3維混合矩陣,具體數(shù)值如下:
[0.55,0.39,0.45;0.45,0.68,0.53;0.76,0.81,0.27;
0.69,0.09,0.10;0.60,0.28,0.55;0.12,0.04,0.94]。
計(jì)算數(shù)據(jù)的協(xié)方差矩陣以及相關(guān)系數(shù)矩陣。相關(guān)系數(shù)矩陣如圖2所示??梢园l(fā)現(xiàn),相關(guān)系數(shù)絕對(duì)值普遍大于0.3,說(shuō)明原始數(shù)據(jù)之間存在數(shù)據(jù)之間存在很大的關(guān)聯(lián)性,非常有必要進(jìn)行數(shù)據(jù)壓縮以降低數(shù)據(jù)冗余度。
計(jì)算相鄰特征值的比值,得到主分量信噪比,如圖3所示。由圖3可以直觀的發(fā)現(xiàn),1/2、2/3主分量信噪比較小,表明前三階分量的信息量基本一致;3/4主分量信噪比突然增大達(dá)到23,是信噪比的第一個(gè)顯著峰值,表明第3階分量的信息量遠(yuǎn)高于第4分量的信息量,第4階分量所含信息很低。提取前3階分量作為主分量,其余低階分量判定為噪聲進(jìn)行截?cái)?,?shí)現(xiàn)數(shù)據(jù)壓縮。
前3階主分量的相關(guān)系數(shù)如圖4所示,提取的主分量相關(guān)系數(shù)為零,壓縮后的數(shù)據(jù)之間互不相關(guān),降低了數(shù)據(jù)的冗余度。
為了驗(yàn)證本方法的優(yōu)越性,按照現(xiàn)有應(yīng)用中的分量貢獻(xiàn)率進(jìn)行主分量提取,將結(jié)果進(jìn)行對(duì)比。前q階(q<m)分量貢獻(xiàn)率計(jì)算如下:前q階特征值之和除以所有特征值的總和。分量貢獻(xiàn)率如圖5所示??梢园l(fā)現(xiàn),前2階分量的貢獻(xiàn)率已經(jīng)接近95%,若采用分量貢獻(xiàn)率作為參數(shù)指標(biāo)提取前兩階主分量進(jìn)行數(shù)據(jù)壓縮,將會(huì)損失有效信息,對(duì)后續(xù)的數(shù)據(jù)分析以及特征提取造成影響。
本領(lǐng)域技術(shù)人員可以理解,實(shí)現(xiàn)上述實(shí)施例方法的全部或部分流程,可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。其中,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)為磁盤(pán)、光盤(pán)、只讀存儲(chǔ)記憶體或隨機(jī)存儲(chǔ)記憶體等。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。