![聶偉_《數(shù)據(jù)壓縮幾種重要方法》_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/18/96c058a0-1122-4d6a-8a9a-71e427f57623/96c058a0-1122-4d6a-8a9a-71e427f576231.gif)
![聶偉_《數(shù)據(jù)壓縮幾種重要方法》_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/18/96c058a0-1122-4d6a-8a9a-71e427f57623/96c058a0-1122-4d6a-8a9a-71e427f576232.gif)
![聶偉_《數(shù)據(jù)壓縮幾種重要方法》_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/18/96c058a0-1122-4d6a-8a9a-71e427f57623/96c058a0-1122-4d6a-8a9a-71e427f576233.gif)
![聶偉_《數(shù)據(jù)壓縮幾種重要方法》_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/18/96c058a0-1122-4d6a-8a9a-71e427f57623/96c058a0-1122-4d6a-8a9a-71e427f576234.gif)
![聶偉_《數(shù)據(jù)壓縮幾種重要方法》_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/18/96c058a0-1122-4d6a-8a9a-71e427f57623/96c058a0-1122-4d6a-8a9a-71e427f576235.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)壓縮的幾種重要方法一、數(shù)據(jù)壓縮方法概述到目前為止,對數(shù)據(jù)壓縮還沒有一種公認(rèn)的權(quán)威性的分類方法,這是因為數(shù)據(jù)壓縮還是一個較年輕的研究領(lǐng)域。大部分專家學(xué)者傾向于分為可逆法及不可逆法兩大類?!翱赡娣ā庇址Q“多余度減少法”這類算法著眼于消除數(shù)據(jù)間的相關(guān)性,減少多余度而仍保存原有信息。經(jīng)壓縮后的數(shù)據(jù)可以恢復(fù)重現(xiàn)為原有數(shù)據(jù)。采樣定理表明:以大于或等于“Nyquist”采樣率進(jìn)行時間采樣,所得的采樣值保存了全部的信息。故以Nyquist頻率進(jìn)行的時間采樣被視為多余度減少的最重要的形式?!安豢赡娣ā庇址Q“熵減少法”。利用這一類的壓縮方法,壓縮后的數(shù)據(jù)勢必要丟失一部分信息(熵),因而不能恢復(fù)重現(xiàn)原數(shù)據(jù),幅值
2、采樣(量化)是熵減少的最主要形式。因為一旦將幅值量化,永遠(yuǎn)不可能準(zhǔn)確地重現(xiàn)原信號。在這兩大類下,又有各種具體方法。這些方法也普遍適用于工業(yè)、軍事、其它等需要數(shù)據(jù)壓縮的領(lǐng)域。對于醫(yī)學(xué)數(shù)據(jù)的壓縮有不少具體的算法,但均可歸之于下面幾種方法的修剪與揉合。常用的幾種數(shù)據(jù)壓縮方法是:(一)參數(shù)提取法這種壓縮方法提取信號中的某一特征或參數(shù),并把此特征或參數(shù)予以傳送,而不傳送數(shù)據(jù)的全部信息。例如,只提取信號的峰值或只提取信號的功率譜并傳送譜分量的幅值。在ECG中只提取R-R間期并加以傳送等。顯然從參數(shù)提取法所得的壓縮后數(shù)據(jù)不能恢復(fù)重現(xiàn)原信號,因信息損失太多。它屬于“不可逆”壓縮或“熵減少”壓縮。這種方法在醫(yī)療
3、信息數(shù)據(jù)壓縮中最早使用的一種方法又是當(dāng)前廣泛應(yīng)用的醫(yī)療數(shù)據(jù)壓縮方法。(二)非多余采樣編碼法屬于這一算法的有預(yù)測及內(nèi)插法,它的本質(zhì)是:根據(jù)過去時刻(對預(yù)測法)的數(shù)據(jù)或根據(jù)過去時刻及當(dāng)前時刻(對內(nèi)插法)的數(shù)據(jù)作為當(dāng)前時刻的估計值(即預(yù)測值),然后將它與當(dāng)前時刻的實際值進(jìn)行比較,其差值若小于某預(yù)置容限,認(rèn)為該實際值屬多余采樣,不予保留;反之,若差值大于某預(yù)置容限,則該當(dāng)前時刻的實際值屬“非多余采樣值”應(yīng)予保留或傳送。它屬“可逆法”。例如ECG信號的壓縮算法之一AZTEC屬于本算法的變形。(三)變換編碼法變換編碼的主要目的在于把統(tǒng)計相依的采樣值變換成“某種程度上的統(tǒng)計獨(dú)立”的系數(shù)。大多數(shù)變換屬線性正交
4、變換。變換本身并不提供壓縮,而只是將信號映射到另一域內(nèi),在所映射的域中壓縮較易實現(xiàn)。隨后通過比特分配的量化過程,把變換后的采樣值進(jìn)行壓縮,以供存儲或傳輸。常用的變換法有下面幾種:1.傅里葉變換;2.主分量法(K-L變換);3.余弦變換;4.哈爾和哈達(dá)瑪變換;5.小波變換。(四)預(yù)測編碼法變換編碼是把信號變換到另一空間域,以便有效地進(jìn)行量化,預(yù)測編碼法則是在信號空間,特別是在時域內(nèi)進(jìn)行的一種壓縮編碼法,大致過程如下:先對下一個采樣值進(jìn)行預(yù)測,并把該預(yù)測值與下一個采樣的實際值之差進(jìn)行編碼。這樣做的理由是:大部分信號集中,用上述方式得到的差值的方差總小于原始信號的方差。這樣可藉較小的量化級進(jìn)行有效的
5、量化,從而獲得較大的壓縮比。調(diào)制(DM)與差分脈沖編碼調(diào)制(DPCM)均屬預(yù)測編碼法。(五)熵編碼法不少多余度減少的方法都是利用采樣值之間具有相關(guān)性這一點(diǎn),那末如何達(dá)到式(6.14)所給出的最大壓縮比呢?通常的做法是分二步來進(jìn)行。先使采樣值之間統(tǒng)計獨(dú)立,減少多余度。再進(jìn)行編碼,使平均字長等于或近似等于統(tǒng)計獨(dú)立采樣源的熵。這最后一步常稱熵編碼。醫(yī)療數(shù)據(jù)壓縮中常用的哈夫曼(Huffman)編碼是熵編碼法中的一種編碼法。二、非多余采樣編碼法非多余采樣編碼法分為二類:一類稱預(yù)測器,另一類稱內(nèi)插器。本書先討論多項式預(yù)測器,包括零階預(yù)測器與一階預(yù)測器。然后討論多項式內(nèi)插器,包括零階內(nèi)插器與一階內(nèi)插器。最后
6、討論心電數(shù)據(jù)壓縮中常用的AZTEC數(shù)據(jù)壓縮、TP算法,以及將兩者混合而成的CORTES算法以達(dá)到在內(nèi)容布局上的合理化,所有這些方法都設(shè)置一個幅度容許差值或幅度容限帶,故又稱“容差比較”壓縮法。幅值容差有時不盡合理,為此還將介紹另一種基于“距離誤差”作為判斷采樣點(diǎn)冗余與否的LADT算法。(一)多項式預(yù)測器最早,也是最常用于采樣數(shù)據(jù)壓縮的方法之一就是多項式預(yù)測器,其中尤以零階預(yù)測器和一階預(yù)測器使用得最為普遍。在一切多項式預(yù)測器中,下一個采樣值由其前面的n+1個采樣值所組成的多項式?jīng)Q定:(6.24)式中t代表t時刻的預(yù)測值,上式稱為n-階預(yù)測器的多項式。各差分符號的意義如下:t-1t-1t-2,t-
7、2t-2t-3,而nxt-1=n-1xt-1n-1xt-2,當(dāng)n=2時,稱為2階預(yù)測器,其時tt-1t-12t-1t-1t-2t-3也就是說,在2階預(yù)測器中,t時刻的觀測值由t-1、t-2、t-3這三個以前時刻的采樣值來決定。這里列出3階以內(nèi)的觀測器的多項式如下:零階預(yù)測器tt-1(6.25)一階預(yù)測器tt-1xt-12t-1t-2(6.26)二階預(yù)測器txt-1+xt-1+2xt-1=3xt-1-3xt-2+xt-3(6.27)三階預(yù)測器txt-1+xt-1+2xt-1+3xt-1=4xt-1-6xt-2+4xt-3-xt-4(6.28)一般說來,式(6.22)的n階有限差分可展開成t時刻以
8、前n+1個采樣值的線性組合:ta1xt-1+a2xt-2+an+1xt-n-1(6.29)式中a1,a2,an+1各系數(shù)可用楊輝三角形查出。圖6-28畫出了相應(yīng)于式(6.25)(6.28)各階預(yù)測器的預(yù)測示意圖。圖6-28預(yù)測器的預(yù)測示意(a)零階;(b)一階;(c)二階;(d)三階現(xiàn)在來考察一下式(6.25)(6.28)各式中的加權(quán)系數(shù)。從邏輯上講,最靠近當(dāng)前時刻的那個采樣值對當(dāng)前時刻的預(yù)測值的影響相應(yīng)的就最大,權(quán)系數(shù)也應(yīng)最大。零階、一階預(yù)測器的表達(dá)式反映了這一規(guī)律。二階、三階表達(dá)式就不然。特別是三階預(yù)測器的多項式中,t-1時刻的權(quán)系數(shù)僅及t-2時刻的2/3,顯然不合理。階數(shù)n愈大,這種不合
9、理的情況就愈嚴(yán)重。故并非項數(shù)愈多愈準(zhǔn)確。正因為這個道理,以零階與一階預(yù)測器用得最多。壓縮是這樣進(jìn)行的:若預(yù)測值“接近”于該時刻的真實值,則可用預(yù)測值來代替該時刻的真實值。由于預(yù)測值僅由以前的諸采樣值線性組合得出,說明該時刻的真實采樣值與以前的采樣值線性相關(guān),屬于多余采樣,應(yīng)把該真實值舍棄。反之,若預(yù)測值與真實值相差較大,說明真實值與以前的采樣值之間相關(guān)性小,應(yīng)把該真實值保留,它是非多余采樣。預(yù)測值與真實值之間的接近程度,由容許差值K來規(guī)定。這樣:|xt(真實采樣值)-t(預(yù)測值)|按上法對采樣數(shù)據(jù)進(jìn)行逐個鑒別,可得到全部由非多余采樣值構(gòu)成的數(shù)據(jù)組,利用它可恢復(fù)出原始數(shù)據(jù),由此引起的最大誤差恒小
10、于K。(二)零階預(yù)測器及一階預(yù)測器零階預(yù)測器及一階預(yù)測器在醫(yī)學(xué)數(shù)據(jù)壓縮中是應(yīng)用最多和最有效的一種壓縮方法,因此,本書對這玟法以于詳細(xì)闡述。1.固定窗口零階預(yù)測器如上所述,零階預(yù)測器由方程(6.25)表示:t=xt-1,工作之初,先設(shè)置一組固定容限帶(窗口),寬度為2K,K就是上一小節(jié)所述的容許差值。所謂固定窗口,指的是容限帶的位置一經(jīng)設(shè)定,在整個壓縮過程中就不再變動。工作過程如下:(1)根據(jù)式(6.25)求預(yù)測值。它是前一時刻的采樣值;(2)將t時刻的真實采樣值xt與上面求得的預(yù)測值t=xt-1,比較,如果兩者處于同一容限帶內(nèi),則認(rèn)為該真實采樣值xt是多余的,棄而不顧。t時刻的值沿用t-1時刻
11、的值。反之,若兩者不在同一容限帶內(nèi),則該真實采樣值是非多余的,應(yīng)予保留。(3)在t+1時刻,宜注意:當(dāng)t時刻的真實采樣值屬多余采樣時,t+1時刻的預(yù)測值t+1xt-1;而當(dāng)t時刻的真實采樣值屬非多余采樣時,t+1xt。以后的過程就同上面一樣重復(fù)。圖6-29固定窗口零階預(yù)測原理圖圖6-29說明了上述過程。在23個原采樣數(shù)據(jù)中,有14個被認(rèn)為是多余的,剩下的9個為非多余采樣數(shù)據(jù),應(yīng)該傳送出去。據(jù)式(6.16),這時的采樣壓縮比為如要在接收端重現(xiàn)原數(shù)據(jù),那末還必須記下這些非多余數(shù)據(jù)相應(yīng)的時刻。如此,還要化掉一些數(shù)據(jù)字。故實際的比特壓縮比小于2.56。此外,這類預(yù)測器的輸出是異步的,必須加一緩沖器,以
12、便能以勻速送出數(shù)據(jù)。圖6-30為按上述思想設(shè)計的固定窗口零階預(yù)測器的計算機(jī)程序流程圖。初始化后,迎來了第一個采樣數(shù)據(jù)。顯然是非多余的,應(yīng)予保留。同時計算它所在的容限帶。再取下一個數(shù)據(jù),也計算所在的容限帶。比較兩個容限帶,若相重合,說明當(dāng)前的采樣值屬多余的。該當(dāng)前值連同所在的容限帶都棄而不顧,保留相應(yīng)于前一時刻采樣值所在的容限帶,以便與下一時刻的容限帶比較。如果兩者不相重合,說明該當(dāng)前采樣值連同它所在的容限帶一起保留。這一當(dāng)前采樣值應(yīng)予儲存或傳送。其容限帶準(zhǔn)備與下一時刻的容限帶比較。如此重復(fù),直到全部醫(yī)學(xué)數(shù)據(jù)處理完即可打印出非多余數(shù)據(jù)和比特壓縮比。圖6-30固定窗口零階預(yù)測器流程圖2.浮動窗口零
13、階預(yù)測器與固定窗口零階預(yù)測器相比,現(xiàn)在寬為2K的容限帶的位置是隨采樣值的大小而浮動的。對每個非多余采樣值,總有一個K的窗口對稱地罩在這些值的上下。圖6-31是將圖6-29的同一波形用浮動窗口零階預(yù)測的原理圖。在23個原始采樣值中,有12個被劃為多余采樣值,11個為非多余采樣值。采樣壓縮比為為了重現(xiàn)數(shù)據(jù),要附加說明每一非多余采樣發(fā)生時刻的時間字。故實際的比特壓縮比遠(yuǎn)小于2.09。例如圖6-31情況,11個非多余采樣要配以11個時間字。設(shè)每一時間用5比特,采樣值用8比特,則比特壓縮比為圖6-31浮動窗口零階預(yù)測原理圖為了增加b,可以用所謂的“游程長度”編碼。即不是傳送11個時刻的時間字,而只傳送在
14、非多余采樣之間的三個多余采樣段的長度。這樣做仍能重現(xiàn)原始數(shù)據(jù),但比特壓縮比可望提高。如仍設(shè)以5比特表示每段游程長度,則此時的比特壓縮比為圖6-32為浮動窗口零階預(yù)測器的計算機(jī)程序流程圖。工作過程如下:圖6-32浮動窗口零階預(yù)測器流程圖初始化后,取出一個采樣值,求出對應(yīng)時刻的預(yù)測值。后者是前次運(yùn)算中存于存儲器內(nèi)的。將這一時刻的采樣值與該時刻的預(yù)測值相減,看其差值的絕對值xt-t是否大于K來決定對當(dāng)前時刻采樣值的取舍。若xt-tK,則xt是非多余的,應(yīng)予保留。同時將它存入專放預(yù)測值的存儲單元,作為下一個采樣的預(yù)測值以備調(diào)用。若xt-tK,則xt是多余采樣,舍去不要。這時僅保存預(yù)測值,將它存入存儲器
15、中供下次使用。3.零階補(bǔ)償預(yù)測器零階補(bǔ)償預(yù)測器是浮動窗口零階預(yù)測器的改型。主要差別在于預(yù)測值的求取。在本法中,當(dāng)前時刻的預(yù)測值是在前一個非多余采樣值上預(yù)先加上一偏置量得到的。即時刻t的預(yù)測值為txt-1K(6.30)式中,xt-1為以前時刻中最新的一個非多余采樣值。K就是偏置量。同前面一樣,容限帶寬度為2K。正、負(fù)號由最新的一個非多余采樣值越出容限帶的方向來決定。若最新的非多余采樣值從容限帶頂部越出,取正號;若從容限帶底部越出,取負(fù)號。這樣,可以照顧數(shù)據(jù)變化的趨勢,壓縮效率就能得以提高。其它工作細(xì)節(jié)與前面所述的浮動窗口零階預(yù)測器相同。圖6-33為其工作原理圖。圖6-33零階補(bǔ)償預(yù)測器原理圖圖6
16、-34給出零階補(bǔ)償預(yù)測器的計算機(jī)程序流程圖。流程圖中(I)表示預(yù)測值,x(J)表示采樣值。第一點(diǎn)x(1),肯定屬非多余采樣值。第一個預(yù)測值補(bǔ)償?shù)姆较蛴蓌(2)是否大于x(1)決定。若x(2)x(1)取+K,否則取-K。這里預(yù)測值的表達(dá)式(I)=x(I)K。應(yīng)注意:(I)實際上就是前面所說的I+1時刻的預(yù)測值。圖6-34波形,經(jīng)零階補(bǔ)償預(yù)測器后得到8個非多余采樣值,故其采樣壓縮比為d=23/82.88。圖6-34零階補(bǔ)償預(yù)測器程序流程圖4.一階預(yù)測器據(jù)式(6.26),一階預(yù)測器的預(yù)測表達(dá)式為t=xt-1+xt-1=2xt-1-xt-2即t時刻的預(yù)測值t等于前一時刻t-1時的采樣值xt-1與再前一
17、時刻t-2的采樣值xt-2之差xt-1。由圖6-28(b)看出,只須將t-1,t-2兩時刻的采樣點(diǎn)的連線延長至?xí)r刻t,即得到預(yù)測值t。這里只討論浮動窗口一階預(yù)測。其余步驟就與浮動窗口零階預(yù)測器相同。圖6-35示出其工作原理。起始第一點(diǎn)與第二點(diǎn)總是作為非多余采樣點(diǎn)。連接這兩點(diǎn)并延長可得到第三時間點(diǎn)的圖6-35一階預(yù)測器原理圖預(yù)測值。在該預(yù)測值上下設(shè)置窗口K,形成寬為2K的容限帶。判斷第三時間點(diǎn)的真實采樣是否落在該容限帶內(nèi)。若否,說明第三采樣點(diǎn)是非多余采樣,應(yīng)予保留。此時第四采樣點(diǎn)的預(yù)測值應(yīng)是將上述第二、三采樣點(diǎn)的聯(lián)線延長后得到的。如果第三時間點(diǎn)的真實采樣值在容限帶內(nèi),則這一采樣值是多余采樣,應(yīng)予
18、剔除。此時,第四采樣點(diǎn)的預(yù)測值應(yīng)為第二采樣點(diǎn)與第三時間點(diǎn)的預(yù)測值(點(diǎn))聯(lián)線延長后得到。循此以往,可得圖6-35中各點(diǎn)。浮動窗口一階預(yù)測器的計算機(jī)程序流程如圖6-36所示。圖中x(I)與x(J)表示相應(yīng)采樣點(diǎn)的采樣值。()()()()()。本式中x(J)為采樣值,為與x(J)相應(yīng)點(diǎn)的預(yù)測值。乘下的步驟在本書用圖形以于表示,讓讀者更能清楚地了解。需注意的是:起始的兩個采樣值總是作為非多余采樣。圖6-36一階預(yù)測計算機(jī)程序流程圖(三)多項式內(nèi)插器零階預(yù)測器要求原始數(shù)據(jù)在相鄰時間間隔內(nèi)相對不變。若數(shù)據(jù)作隨機(jī)的連續(xù)變化或受高頻噪聲干擾,那末在合理的系統(tǒng)精度內(nèi),預(yù)測器的多余度減少的效率一般就要有所降低。如
19、果在鑒別采樣值是否多余時,既利用過去數(shù)據(jù),又利用當(dāng)前數(shù)據(jù),就可以大大提高壓縮效率。這就是多項式內(nèi)插器的實質(zhì)。內(nèi)插器的階數(shù)以零階、一階為最普遍。1.零階內(nèi)插器零階內(nèi)插器與零階預(yù)測器相似,都是用水平線在一定峰值誤差范圍內(nèi)來代替一段連貫的采樣值。兩者的主要差異是:究竟用哪個非多余采樣值來概括多余采樣?零階預(yù)測器用的是多余采樣數(shù)據(jù)組開頭的一個數(shù)據(jù),而在零階內(nèi)插器中則用多余采樣結(jié)束后算得的某個值。其原理可用圖6-37來說明如下:設(shè)從x0開始。在x0處設(shè)置窗口K,形成寬為2K的容限帶。帶中任一點(diǎn)與x0幅度差小于K。再取下一點(diǎn)x1,同樣設(shè)置窗口并形成相同寬度的容限帶。該帶中任一點(diǎn)的值與x1之差小于K,若這兩
20、容限帶沒有重疊,說明在圖中找不到一個點(diǎn)同時與x0及x1之值相差小于K,即x0-x12K,x0就是非多余采樣值。若這兩容限帶重疊,則在重疊帶內(nèi)任一水平線上,對應(yīng)于x0、x1時刻的點(diǎn)與x0、x1的差值肯定小于K。此時應(yīng)接著看x2點(diǎn),仿前在該點(diǎn)處對稱地設(shè)置寬為2K的容限帶。若這一容限帶與x0、x1兩點(diǎn)的重疊帶還有重疊部份,則形成一三個容限帶的重疊帶,在這一重疊帶內(nèi)的任一水平線上,對應(yīng)于x0,x1,x2三時刻的值與它們真實采樣值之差小于K。如此繼續(xù)進(jìn)行下去,直到某點(diǎn)(譬如x4)出現(xiàn)時,其容限帶與前面各點(diǎn)的容限帶沒有重疊部分,這就說明x0,x1,x2,x3四值可由重疊帶內(nèi)的某一值x4來代替,而不致引起大
21、于K的峰值誤差。圖6-37零階內(nèi)插原理圖常令x4等于公共重疊帶上下限的平均值。設(shè)帶的頂端為xu,底部為xl,則x4=(xu+xl)/2。位于t4時刻。如令x0,x1,x2,x3中的最小值為xmin,最大值為xmax,此平均值x4又等于(xmin+xmax)2。于是:至此,x0,x1,x2,x3均可看作多余采樣,而把按上式計算所得的x4定為非多余采樣,或存儲或傳送。它在誤差K范圍內(nèi)頂替從t0起直至t4時刻以前(不包括t4)的數(shù)據(jù)。此后以x4為始點(diǎn)重復(fù)上述鑒別過程。醫(yī)學(xué)數(shù)據(jù)壓縮,特別是心電數(shù)據(jù)等壓縮中,零階內(nèi)插使用得最多。后面要介紹的AZTEC心電數(shù)據(jù)壓縮算法,基本也是基于零階內(nèi)插。這里就不作重復(fù)
22、介紹了。2.一階內(nèi)插器從前面的介紹可以知道,一階內(nèi)插器算法是以一階多項式曲線(直線)來逼近信號波形?;蚋_切圖6-38一階內(nèi)插原理圖圖6-39一階內(nèi)插器流程圖地說,用一直線段取代多余采樣。具體的算法很多,現(xiàn)在介紹其中一種。前節(jié)提到零階內(nèi)插器算法中,零階內(nèi)插用的是水平線段,知道水平線的高度,即可畫出這條水平線。而在一階內(nèi)插情況,所用的斜直線要由2個點(diǎn)才能完全確定。下面要介紹的方法是在內(nèi)插過程中,先把直線的起點(diǎn)固定在某一真實采樣值或計算所得的采樣值,只讓直線的末端自由可變,故稱二自由度一階內(nèi)插,又稱扇形內(nèi)插。還有一種四自由度一階內(nèi)插,它要求調(diào)節(jié)直線段使它在一定誤差范圍內(nèi)包括盡可能多的采樣數(shù)據(jù),以獲
23、得最大的壓縮比,故應(yīng)讓直線的起點(diǎn)和終端都自由,在內(nèi)插的末了才計算出起、終點(diǎn)值。扇形內(nèi)插,根據(jù)其細(xì)節(jié)的不同,又有些細(xì)微差別,我們采用在邏輯上與上述零階內(nèi)插相容的一種算法。如圖6-38,x0為第一個采樣點(diǎn),應(yīng)作為非多余采樣。其后的各原始采樣值為x1、x2、x3。仿前,在x1、x2兩采樣點(diǎn)設(shè)置窗口K。將x0與x1的窗頂及窗底用直線聯(lián)接,形成一輻射扇形。再將x0與x2的窗頂及窗底用直線聯(lián)接,形成另一輻射扇形。如果這兩扇形有重疊部分,則在重疊的三角帶內(nèi)任一射線上,對應(yīng)于x1、x2時刻的值與相應(yīng)時刻的真實采樣值之差必定都小于K。于是認(rèn)為x1是多余采樣。下一個數(shù)據(jù)是x3。仿前,聯(lián)接x0與x3的窗頂及窗底形成
24、一扇形。如該扇形與前面的重疊部分還有交疊,則在該交疊部分內(nèi)任一輻射線上對應(yīng)于x1、x2、x3時刻的值與相應(yīng)的真實采樣值之差都小于K。反之,若該扇形與x1、x2的重疊部分不相交,說明此時需要計算非多余采樣。把x1、x2看作多余采樣,并由重疊帶內(nèi)的某一值替代而不致引起大于K的誤差。這一頂替值為x2=(xuxl)/2,位于t2時刻。xu、xl分別為t2時刻重疊帶的上限與下限值。x2作為非多余采樣值或存儲或傳送。在圖6-38中,這些由計算所得的非多余采樣值用記號“”表出。后面的過程就從這一計算采樣點(diǎn)開始,重復(fù)上述過程。圖中另一非多余采樣點(diǎn)為x5。這樣,x0、x2的聯(lián)接直線和x2、x5的聯(lián)接直線就是原信
25、號在相應(yīng)段內(nèi)的逼近波形。x0、x2、x5是非多余采樣。圖6-40說明圖2.13中符號意義的用圖圖6-41扇形重疊的四種可能情況雖然在內(nèi)容上顯得比較復(fù)雜,但上述過程可用計算機(jī)來實現(xiàn),其流程圖如圖6-39所示。圖中MAX1、MAX2、MIN1、MIN2的意義見圖6-40。MAXn、MINn為前一段扇形的重疊部分在tn處的上下限。為判定前一段扇形重疊部分與xn+1本身相應(yīng)的扇形(圖2.14中虛線部分)有無重疊之處,須將x0至MAXn的聯(lián)線延長至tn+1時刻,得MAX1,并將x0至MINn的聯(lián)線延長至tn+1時刻得MIN1。而在tn+1時刻相應(yīng)于xn+1的扇形的上下限為MAX2xn+1+K,MIN2x
26、n+1-K。由圖更可得到:MAX1=MAXn+(MINn-x0),MIN1=MINn+(MINn-x0)?,F(xiàn)在可以根據(jù)MAX1、MIN1、MAX2、MIN2判別前一段扇形重疊部分與xn+1本身相應(yīng)的扇形有無相重之處。重疊的可能情況有四種。如圖6-41所示。圖6-39邏輯框1,對應(yīng)于判定圖6-41中情況(1),即判定:(MAX1MAX2)(MAX2MIN1)(MIN1MIN2)=1?邏輯框2,對應(yīng)于判定圖6-41中情況(2),即判定:(MAX2MAX1)(MAX1MIN2)(MIN2MIN1)=1?邏輯框3,對應(yīng)于判定圖6-41中情況(3),即判定:(MAX2MAX1)(MIN1MIN2)=1?
27、邏輯框4,對應(yīng)于判定圖2.15中情況(4),即判定:(MAX1MAX2)(MIN2MIN1)=1?任意一種情況成立,均表明形成新的公共重疊帶,應(yīng)將這個帶在tn+1時刻的值存儲起來,作為tn+2時刻的MAXn及MINn。若四種情況均不成立,則應(yīng)計算:作為非多余采樣值存儲。(四)AZTEC算法上述各種預(yù)測器及內(nèi)插器原則上均可用于醫(yī)療數(shù)據(jù)的壓縮。對于心電數(shù)據(jù)壓縮算法中屬于非多余采樣編碼的還有AZTEC,TP,CORTES,LADT法等。以AZTEC為最常用。AZTEC是amplitude-zone-timeepoch-coding的縮寫,1968年由J.R.COX,F(xiàn).M.Nolle等提出,多用于監(jiān)
28、護(hù)儀及ECG數(shù)據(jù)庫。AZTEC實際上是零階內(nèi)插器的變形,同時結(jié)合游程長度編碼,具有很高的壓縮比。經(jīng)過壓縮以后,原始的ECG波形被轉(zhuǎn)換成為一系列臺階和斜線的組合。進(jìn)行壓縮之前,先要規(guī)定一容許差值K,和最大允許采樣個數(shù)Nmax,或最長允許持續(xù)時間Tmax。在壓縮過程中總有一浮動窗口存在,窗頂值為Vmax,窗底值為Vmin。AZTEC對緩變與驟變信號的壓縮實際上是分別處理的。緩變部分用水平線組成的臺階來表示,驟變部分則用斜線來表示。當(dāng)然算法應(yīng)具自動識別緩變、驟變的功能。今將工作原理分述于后。1.水平線表示部分(1)把第一個采樣數(shù)據(jù)V。作為窗頂Vmax、窗底Vmin的初始值,即VmaxVmin=Vo。
29、順便指出,由于AZTEC主要是基于零階內(nèi)插,可選VmaxVmin0也并不影響最后的結(jié)果。(2)下一個采樣數(shù)據(jù)V1到來后,即跟窗頂、窗底的初始值進(jìn)行比較,若V1Vmax=Vo,那末以V1作為新的VmaxV1,即作為新的窗頂,而Vmin仍為Vo。設(shè)若此時V1Vmin=Vo,則以V1作為新的VminV1,而Vmax仍為Vo。如果VminV1Vmax,則窗頂、窗底值不被更新。(3)每次都應(yīng)檢驗Vmax-VminK?若此關(guān)系滿足,則繼續(xù)讀取下一個數(shù)據(jù),并與Vmax、Vmin進(jìn)行比較,再檢驗Vmax-Vmin的值。若采得第n個數(shù)據(jù)后,仍有(Vmax-Vmin)nK(下標(biāo)n,特指第n個時刻的狀態(tài)),而在第n
30、+1個采樣時刻(Vmax-Vmin)n+1K,或發(fā)現(xiàn)采樣個數(shù)已達(dá)到預(yù)置個數(shù)Nmax(例如30),那末應(yīng)結(jié)束這一階段,把第n個時刻以前(包括第n時刻)的采樣數(shù)據(jù)看作多余采樣,并用計算得出的非多余采樣值Vhl=頂替而不致引起大于K的誤差出現(xiàn)。Vhl的位置可認(rèn)為在第n+1時刻。這一過程就是零階內(nèi)插。于是可畫得一高為Vhl,持續(xù)時間為Thl的水平線。Thl應(yīng)算到第n1時刻為止(不包括第n1時刻)。把Vhl、Thl存入計算機(jī)即可重現(xiàn)這部份的數(shù)據(jù)。(4)下一階段以第n1時刻的采樣數(shù)據(jù)Vn作為Vmax、Vmin的初始值,即令Vmax=Vmin=Vn重復(fù)上述的步驟。這是AZTEC算法的第一部分,稱為零階內(nèi)插。
31、2.斜線表示部分如遇變化較快及幅值較大的那部分信號,如QRS復(fù)合波,則采樣數(shù)據(jù)的跳動必然劇烈。若按照水平線方法來處理,勢必形成持續(xù)時間極短的水平線段。對此情況,AZTEC改作斜線來表示。在此之前須規(guī)定一最小采樣個數(shù)Nmin,常取Nmin=3。凡水平線段持續(xù)時間Thl小于3個采樣時間間隔,即可轉(zhuǎn)入斜線處理程序:(1)先將斜線段的幅值用Vsl表示,并把斜線段的持續(xù)時間用Tsl表示(注意Tsl的單位有時取采樣時間間隔)。此外,還需記錄斜率的符號(或-)。(2)若短線段(Thl3個采樣時間間隔)持續(xù)生成,且信號增量的符號不變,則應(yīng)將這些短線段的持續(xù)時間累加歸入Tsl。Vsl則為最近的一個短線段的信號幅
32、值所更新。(3)如遇后續(xù)的水平線段持續(xù)時間大于2個時間間隔(Thl3),或遇相鄰的信號增量改變符號。這時標(biāo)志著一段斜線的結(jié)束,將轉(zhuǎn)入水平線表示部分或轉(zhuǎn)入另一段方向不同的斜線來表示。那末,Vsl就不被更新,應(yīng)將上一斜線的總持續(xù)時間Tsl及最后的Vsl記下以便存儲。存儲之前在Tsl上冠以負(fù)號,標(biāo)志這是斜線的持續(xù)時間,以區(qū)別于水平線段的持續(xù)時間,在重現(xiàn)數(shù)據(jù)時供計算機(jī)來識別。(4)存儲參數(shù)的個數(shù)分兩種情況考慮:若斜線以方向改變?yōu)榻Y(jié)束,且改變方向后的線段長度小于3個采樣時間的間隔(表示轉(zhuǎn)入新的斜線部分),則存儲-Tsl及Vsl,AZTEC接著生成一條新斜線。若斜線以方向改變?yōu)榻Y(jié)束,且改變方向后的線段長度
33、大于2個采樣時間間隔(表示轉(zhuǎn)入水平線表示部分)則除存儲-Tsl、Vsl外還須存儲新生成的水平線的長度Thl及其幅值Vhl。此后AZTEC重新初始化為Vmax及Vmin,開始生成新的水平線段。圖6-42為具體實現(xiàn)AZTEC的計算機(jī)程序流程圖。其中存儲數(shù)組AZT(STR)用來存放水平線段的持續(xù)時間Thl、水平線的高度Vhl、斜線持續(xù)時間Tsl之負(fù)值(即-Tsl)和斜線段的垂直高度Vsl。變量STR為數(shù)組下標(biāo)。Tsl前冠以負(fù)號是為了在數(shù)組元素中來識別屬于斜線的參數(shù)。AZT(STR)中存儲各參數(shù)時必須按一定的次序:對于水平線段,先存Thl,接著存Vhl。對于斜線段,先存-Tsl,接著存Vsl,變量NU
34、M用來記采樣個數(shù)。其它變量或符號的意義如下:ECGn-某一時刻n的心電數(shù)據(jù)。Vmx,Vmn-采樣輸入前老的窗頂、窗底值。Vmx1、Vmn1-采樣輸入后經(jīng)過與Vmx、Vmn比較而后更新的窗頂、窗底值。K-容許差值。Flag-AZTEC進(jìn)入斜線部分的標(biāo)志符。Flag=1,表示工作于斜線段。sign-斜線斜率正、負(fù)指示符。(Vhl-Vsl)sign0,表示斜線的方向轉(zhuǎn)變。程序中規(guī)定的每段水平線的最大長度(即最大采樣數(shù)據(jù)數(shù))Nmax=30。超過30則強(qiáng)制開始另一條新線段。每當(dāng)水平線段的長度Thl2,表示應(yīng)轉(zhuǎn)入斜線來處理。其工作細(xì)節(jié)讀者根據(jù)圖6-43不難了解。圖6-42AZTEC計算機(jī)程序流程圖圖6-4
35、3AZTEC波形示例圖6-43為根據(jù)表6-9中第47點(diǎn)以前的采樣數(shù)據(jù)經(jīng)過AZTEC算法處理后所得到的臺階及斜線。表6-10為存儲數(shù)組中各元素的值。表6-9采用時間點(diǎn)012345678910ECG采樣值(伏)00.150.16-0.1-0.15-0.100.20.40.60.8111213141516171847484950511.01.21.41.050.80.650.30.40.30.20.60.5表6-10STR12345678910AZT(STR)40.033-0.075-71.4-30.6550.35對應(yīng)參數(shù)ThlVhlThlVhl-TslVsl-TslVslThlVhl上述AZTEC
36、的流程圖是最簡單的一種。稍加修改還可借以檢測信號中混雜的偽跡。通常的做法是,考察200ms一段AZTEC的長度。如果發(fā)生下列情況者,即認(rèn)為原信號不正常:(1)AZTEC中水平線段和斜線段段數(shù)之和超過20(含有噪聲)。(2)AZTEC中小于16ms的極值段(某水平線段的絕對值大于左、右兩鄰接線段水平線段或斜線段的絕對值者稱為極值段)的總段數(shù)大于6(高頻振蕩)。(3)所有AZTEC斜線高度的絕對值之和超過某一指定值(工頻干擾)。圖6-43為含有幾個QRS波群的AZTEC波形及原始波形。圖6-44一段經(jīng)過AZTEC算法壓縮后的實際ECG波形(a)原始ECG波形;(b)AZTEC波形3.AZTEC波形
37、的平滑處理由圖6-44(b)可見,AZTEC的波形呈臺階狀,護(hù)士、醫(yī)生對此很不習(xí)慣,最好加以平滑處理。常用的方法是最小二乘多項式擬合。具體做法是:先將AZTEC存儲的水平線與斜線參數(shù)轉(zhuǎn)換為數(shù)據(jù)點(diǎn)來表示,每7個一組(ak-3,ak-2,ak+3)用一拋物線近似表達(dá):P0=(-2ak-2+3ak-2+6ak-1+7ak+6ak+1+3ak+2-2ak+3)式中:P0為新的數(shù)據(jù)點(diǎn)。常用拋物線數(shù)字濾波器來實現(xiàn)這種平滑,詳見第三章。(五)ECG數(shù)據(jù)壓縮的轉(zhuǎn)折點(diǎn)(TP)算法AZTEC算法的優(yōu)點(diǎn)是壓縮比大,缺點(diǎn)是信號波形的尖頂部分會有損失。另外固有的臺階狀波形既使加以平滑,看起來仍不習(xí)慣,程序也較復(fù)雜。這里
38、要講的轉(zhuǎn)折點(diǎn)(TP)算法是一種專為心電圖數(shù)據(jù)壓縮而設(shè)計的算法。該法簡單,壓縮后重現(xiàn)的波形也與原波形視覺形象差別不大,易于為醫(yī)生所接受。且速度快更適用于實時。一般ECG的采樣頻率約需200Hz才能對QRS波的細(xì)節(jié)清晰分辨。若采樣頻率減為100Hz,則QRS波的峰值常要下降,一些細(xì)節(jié)變化,也常容易被丟失,但其它的緩變部分仍保持原有信息。由于QRS僅占整個ECG波形的一小段,因此如能對QRS部分采用200Hz的采樣頻率,而對其緩變部分采用100Hz的采樣頻率,則可兩全其美。本法的基本思想就是企圖利用這種不均勻采樣的想法,結(jié)合內(nèi)插來實現(xiàn)數(shù)據(jù)的壓縮。常說QRS復(fù)合波的細(xì)節(jié)豐富,無非是指它的峰頂與低谷較多
39、,而這些特征均由“轉(zhuǎn)折點(diǎn)”來體現(xiàn)。保住轉(zhuǎn)折點(diǎn)的采樣數(shù)據(jù)就保全了具有臨床意義的重要信息。簡單說來,轉(zhuǎn)折點(diǎn)法就是確保轉(zhuǎn)折點(diǎn)的采樣數(shù)據(jù)不丟失而只減少其它部分的采樣點(diǎn)的一種數(shù)據(jù)壓縮算法。它將原信號的每2個數(shù)據(jù)點(diǎn)壓縮為1個,壓縮比為2。具體算法如下:每3點(diǎn)一組地順次進(jìn)行觀察。第1點(diǎn)肯定保留,并稱為參考點(diǎn),記為X0,下面2點(diǎn)分別為X1、X2。而X0、X1、X2三者的關(guān)系有9種模式,如圖6-45所示。其中模式2、模式4中的X1為轉(zhuǎn)折點(diǎn),應(yīng)予保留。其余模式均無轉(zhuǎn)折點(diǎn),則保留X2。圖中,對需保留的X1或X2外面加了一圈。用計算機(jī)識別保留點(diǎn)的方法是判別下列關(guān)系式:若(X2-X1)(X1-X0)0,則X0=X1(6
40、.31)若(X2-X1)(X1-X0)0,則X0=X2(6.32)式中,X0X1,X0X2,意思是保留X1或X2,并將它作為下一組3個數(shù)據(jù)的參考點(diǎn)。如此繼續(xù)。圖6-45轉(zhuǎn)折點(diǎn)模式圖6-46為上述九種模式在使用式(6.31)、式(6.32)判別后得到的結(jié)果。圖6-47為計算機(jī)流程圖。運(yùn)用轉(zhuǎn)折點(diǎn)算法作第一輪數(shù)據(jù)壓縮之后,原則上還可繼續(xù)應(yīng)用這一算法再作第二輪數(shù)據(jù)的壓縮,使壓縮比變?yōu)?。但第一輪壓縮的結(jié)果,基本上不引起什么信號失真。第二輪壓縮則使QRS復(fù)合波加寬并產(chǎn)生明顯的邊緣。如上所述,轉(zhuǎn)折點(diǎn)算法簡單易行,速度快,一輪壓縮失真小,但壓縮比不夠高。另外要圖6-46各模式對應(yīng)的有關(guān)差值符號圖6-47轉(zhuǎn)折
41、點(diǎn)法流程圖注意所保留的各數(shù)據(jù)點(diǎn)的時間間隔是不等的。(六)ECG數(shù)據(jù)壓縮的CORTEs算法CORTES(coordinate reduction time encoding system)算法是AZTEC和轉(zhuǎn)折點(diǎn)算法兩者的混合,旨在發(fā)揚(yáng)兩法之長而避其短,是較理想的ECG數(shù)據(jù)實時壓縮算法。轉(zhuǎn)折點(diǎn)算法的長處是:100Hz左右的波形經(jīng)壓縮后仍有很高的分辨力,對QRS復(fù)合波的重要特征能予保持,特別是QRS波的幅值,它對某些診斷(例如診斷心室肥大)是很重要的。該法的缺點(diǎn)是ECG等電位段的壓縮比受制于QRS的壓縮比,而不能充分地壓縮。AZTEC算法的優(yōu)點(diǎn)是在ECG等電位區(qū),能剔去無臨床意義的多余數(shù)據(jù),達(dá)到1
42、01甚至201的數(shù)據(jù)壓縮比,其缺點(diǎn)是具有間斷點(diǎn)并伴有重現(xiàn)波形失真。CORTES是這樣一種混合算法,它把AZTEC用于等電位區(qū)段,而在較高頻率段則以轉(zhuǎn)折點(diǎn)算法來代替。在這里,AZTEC中的斜線處理是不用的。具體實現(xiàn)時,CORTES既要注意按轉(zhuǎn)折點(diǎn)算法的要求,采集X0、X1、X2數(shù)據(jù)并判別保留點(diǎn);同時又按AZTEC的要求而設(shè)置窗口K,準(zhǔn)備生成AZTEC水平線段。值得注意的是:在未生成AZTEC水平線段之前,總是先求得轉(zhuǎn)折點(diǎn)算法中應(yīng)保留的數(shù)據(jù)點(diǎn),并將它們暫寄存于數(shù)組中。這些暫存的轉(zhuǎn)折點(diǎn)數(shù)據(jù)的作用有二:確實需作轉(zhuǎn)折點(diǎn)處理;若滿足AZTEC水平線段生成條件(即Vmxl-VmnlK,最后當(dāng)Vmxl-Vmn
43、lK,同時該水平線段的長度大于預(yù)定值Vln)時,則應(yīng)轉(zhuǎn)為AZTEC的參數(shù)(Thl、Vhl)來儲存。不管那種情況,此時的存儲數(shù)據(jù)才是永存數(shù)據(jù),它們是壓縮后的正式結(jié)果。為了區(qū)別暫存與永存數(shù)據(jù),引入數(shù)組指針P1、P2。P1用以指示暫存數(shù)據(jù)的始點(diǎn)。P2指示下一個空(尚未存放數(shù)據(jù))地址。還設(shè)置一標(biāo)志符MRK,以供辨認(rèn)AZTEC與轉(zhuǎn)折點(diǎn)數(shù)據(jù)的轉(zhuǎn)換地點(diǎn),常用不同于A/D變換器輸出電平的某一數(shù)值(如零)來充任。這樣,在8位A/D變換器中,ECG信號的量化級數(shù)就非256級,而變?yōu)?55級了。常令第一個CORTES數(shù)組單元存入MRK。再令P1=1,P2=2(MRK也作為暫存數(shù)據(jù),且是始點(diǎn)。P2所指單元是空單元)。
44、順次地存入數(shù)據(jù)。數(shù)組中每暫存一個數(shù)據(jù),P2就向前推進(jìn)一個地址。圖6-48為CORTES的計算機(jī)流程圖。圖6-48CORTES流程圖按上述要求初始化后。第一個采樣數(shù)據(jù)令其為X0,隨后順次采入第2、3個ECG采樣值分別作為X1及X2。X1或X2采得后,應(yīng)與原窗頂Vmx及窗底Vmn進(jìn)行比較,然后才能確定vmx和Vmn應(yīng)否更新,并判斷新的窗頂、窗底之差值是否大于預(yù)置的窗口寬度K。若小于K,說明尚未最終生成AZTEC水平線。此時應(yīng)檢查轉(zhuǎn)折點(diǎn)算法中關(guān)系式S1=X1-X0及S2=X2-X1,同時暫存X0于P2所指的存儲單元中。然后再根據(jù)S1S2的正負(fù)來確定取X1作保留點(diǎn)還是保留X2。因此時尚未生成AZTEC
45、水平線段,故程序又繼續(xù)采集數(shù)據(jù),得到新的X1,X2。再用AZTEC算法去判別窗頂、底之差值。若此時大于預(yù)置值K,則最終生成一段AZTEC線段長為Thl,幅度為Vhl。將長度Thl與規(guī)定的長度閾值Vln進(jìn)行比較,若ThlVln,說明這一AZTEC水平線段雖已生成,但不能用它,而仍需用轉(zhuǎn)折點(diǎn)數(shù)據(jù),此時F4置1。于是CORTES就置Thl及Vhl于不顧,轉(zhuǎn)向把暫存的轉(zhuǎn)折點(diǎn)數(shù)據(jù)變?yōu)橛来娴霓D(zhuǎn)折點(diǎn)數(shù)據(jù)。這一操作的標(biāo)志是把P1指針移至P2的位置,即令P1=P2,以便從這個新地址再開始暫存新的轉(zhuǎn)折點(diǎn)數(shù)據(jù)。反之,若ThlVln說明所生成的AZTEC水平線段是需要的,此時CORTES就將AZTEC水平線參數(shù)Thl
46、及Vhl(永久性地)存入數(shù)組。所存單元的地址應(yīng)從P11單元開始先存Thl,緊接著在P1+2中存放Vhl,而在P1所指單元中存放轉(zhuǎn)換標(biāo)志符MRK(圖6-49中的“X”)。可見此時原暫存的轉(zhuǎn)折點(diǎn)數(shù)據(jù)被沖掉。下面從P2所指單元開始存放新的暫存數(shù)據(jù)??偟腁ZTEC線段數(shù)用TOT計數(shù)。轉(zhuǎn)折點(diǎn)數(shù)由PT來計數(shù)。圖6-49說明在存儲數(shù)組CORT()內(nèi)暫存數(shù)據(jù)與永存數(shù)據(jù)的轉(zhuǎn)換情況。圖6-49(a)表明上一次永存數(shù)據(jù)為AZTEC參數(shù)(L代表水平線段長度數(shù)據(jù),V代表水平線幅值數(shù)據(jù)),新的永存數(shù)據(jù)也是AZTEC參數(shù)見圖6-49(a)右邊。注意暫存的轉(zhuǎn)折點(diǎn)數(shù)據(jù)T(見圖6-49(a)左邊)被AZTEC參數(shù)沖掉了。圖6-4
47、9(b)說明上一次永存數(shù)據(jù)為AZTEC參數(shù),新的永存數(shù)據(jù)則為轉(zhuǎn)折點(diǎn)數(shù)據(jù)T。注意這種情況下暫存的轉(zhuǎn)折點(diǎn)數(shù)據(jù)(見圖6-49(b)的左邊)轉(zhuǎn)換為“永存”數(shù)據(jù)(見同圖右邊)。圖6-49(c)說明上一次永存數(shù)據(jù)為轉(zhuǎn)折點(diǎn)數(shù)據(jù),新的永存數(shù)據(jù)還是轉(zhuǎn)折點(diǎn)數(shù)據(jù)。圖6-49(d)說明上一次永存數(shù)據(jù)為轉(zhuǎn)折點(diǎn)數(shù)據(jù),新的永存數(shù)據(jù)為AZTEC參數(shù)。注意此時的新數(shù)據(jù)中包括MRK在內(nèi)。圖6-49 CORTES算法數(shù)據(jù)轉(zhuǎn)移示意CORTES數(shù)據(jù)重現(xiàn)不像AZTEC和轉(zhuǎn)折點(diǎn)算法的情況那樣簡單。因為在數(shù)組中,AZTEC線段的長度是以一個采樣時間間隔為單位的。而轉(zhuǎn)折點(diǎn)間的時間距離一般為2個采樣時間間隔。為了兼顧重現(xiàn)波形的視覺要求和重現(xiàn)的方
48、便性,制訂如下的重現(xiàn)規(guī)則:(1)把轉(zhuǎn)折點(diǎn)間的時間距離均作2個采樣時間間隔來處理;(2)如果在AZTEC直線后緊跟轉(zhuǎn)折點(diǎn),則應(yīng)該將AZTEC的長度減1,使縮短后的AZTEC線的端點(diǎn)與轉(zhuǎn)折點(diǎn)間相距一個時間間隔;(3)如果在轉(zhuǎn)折點(diǎn)后緊跟AZTEC數(shù)據(jù),則應(yīng)使最近的一個轉(zhuǎn)折點(diǎn)與AZTEC直線段的起始之間相距二個時間間隔。圖6-50實線是根據(jù)表6-9的采樣數(shù)據(jù)畫得的曲線。虛線為根據(jù)這些數(shù)據(jù)利用CORTES算法壓縮后再重現(xiàn)的波形。壓縮后的實際轉(zhuǎn)折點(diǎn)用圓圈標(biāo)出。AZTEC線段用點(diǎn)劃線標(biāo)明。根據(jù)重現(xiàn)規(guī)則,為使轉(zhuǎn)折點(diǎn)間一律相距2個時間單位,第13個采樣點(diǎn)處的轉(zhuǎn)折點(diǎn)應(yīng)后移一個時間單位(后移得到的轉(zhuǎn)折點(diǎn)用“”標(biāo)于圖
49、上)。第15點(diǎn)跟著后移一個時間單位。轉(zhuǎn)折點(diǎn)與AZTEC線間的銜接也應(yīng)按規(guī)則相距2個時間單位。AZTEC與轉(zhuǎn)折點(diǎn)之間的銜接相距1個時間單位。于是得到圖中虛線所示的重現(xiàn)波形。對應(yīng)于圖6-50情況的CORTES數(shù)組中的數(shù)據(jù)示于圖6-51。圖6-50CORTES算法的重現(xiàn)波形圖6-51相應(yīng)于圖6-50的CORTES數(shù)組綜上所述,在常用的ECG數(shù)據(jù)壓縮算法中的轉(zhuǎn)折點(diǎn)算法最簡單,速度也最快,但壓縮比卻不高。AZTEC具有很高的壓縮比,但重現(xiàn)波形的形態(tài)不易為醫(yī)生所愿意接受。CORTES看來是一個折衷方案,但重現(xiàn)的波形太不直接,并由此帶來誤差。(七)LADT算法上面的各種分段線性化的容差-比較算法有一個共同的
50、特點(diǎn),即其誤差是以采樣點(diǎn)與逼近線段上相應(yīng)點(diǎn)的幅度之差來表達(dá)的。因此,對不同斜率的線段評判其逼近程度時有失公正。如用采樣點(diǎn)至線段的距離來表達(dá)誤差,則更合理。如圖6-52所示,線段jk斜圖6-52采樣點(diǎn)與擬合線段距離示意率小,線段mn斜率大。從i至jk的距離ii差不多等于l至mn的距離ll。因此jk,mn與原波形相應(yīng)段的逼近程度在視覺上相似。但二者在垂直方向(幅值)的誤差差別很大,幾乎差一倍。如預(yù)置容許差值K:iiKll,則i屬冗余采樣,可以剔除。l則需保留。緣于此,Udupa等提出了LADT(linear approximation distance thresholding)算法。該算法與扇形
51、算法相仿,它用不同長度和斜率的直線段來逼近ECG波形,只是在比較時用距離誤差代替幅度誤差。因而用以擬合的折線與原波形在形狀上差異不大,看起來更為合理。算法的原理如下:給定ECG采樣值Y(i),i=1,2,N(圖6-53),在笛卡兒坐標(biāo)Y(i)i下形成一系列采樣點(diǎn)。設(shè)置容許差值Th并設(shè)m0為初始擬合步長。按下法定義距離函數(shù)di。令新的擬合線段從第i個采樣點(diǎn)出發(fā)。暫時終止于第i+k個采樣點(diǎn)。k為相應(yīng)的擬合步長。該線段是否作為最后的擬合線段需視從i至i+k點(diǎn)之間所有采樣點(diǎn)到這一線段的距離di是否小于Th而定。對與i相隔t的采樣點(diǎn)(第i+t點(diǎn)),其距離函數(shù)di(t)為:di(t)=sin(k-t)(6
52、.33)式中(6.34)(6.35)這里Ts為采樣間隔。上式參數(shù)的意義如圖6-53所示。擬合按下列步驟進(jìn)行:a)置k=m0,計算di(t),t=1,2,k-i。若dmax=maxdi(t),t=1,2,k-1.Th則連接i采樣點(diǎn)和i+k號采樣點(diǎn)的線段被認(rèn)定為這一區(qū)間的最終擬合線段。令i+k為i的新值,如iN,重復(fù)步驟a),否則,停止。b)若dmaxTh,找出此時的t=tmax,作為新的k即令k=tmax。初始擬合步長m0太大,將增加處理時間;Th過小,將得不到有效的數(shù)據(jù)壓縮,因此有一個權(quán)衡數(shù)據(jù)。由解析幾何可知:若已知原點(diǎn)至直線L的距離為d0,則任一點(diǎn)(x1i,x2i)至L的距離(圖6-54)為
53、:圖6-53說明LADT算法用圖圖6-54式(6.34)符號說明di=x1icos+x2isin-d0(6.36)為L的法線與x軸的交角。對圖6-53情況,x1it,x1iY(i+t)-Y(i)Et,d00。由此可得:di=tcos+Etsin=(t+Ettan)cos(6.37)因為,所以,以此代入上式,有圖6-55LADT算法實現(xiàn)框圖(6.38)這一算法的實現(xiàn)框圖如圖6-55所示。三、變換編碼法(一)離散傅里葉變換在醫(yī)學(xué)數(shù)據(jù)壓縮中的應(yīng)用在變換編碼法中,以傅里葉變換最為簡單,也最易于理解。離散傅里葉變換(DFT)是最常用的正交變換,其正交函數(shù)集為WknN=e-jkn對于長為N的序列,其DFT為。(6.39)其逆變換為。(6.40)用矩陣形式來表達(dá):FWX(6.41)或(6.42)式中,。式(6.39)、(6.4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年學(xué)校體育器材設(shè)施租賃合同
- 2025年企業(yè)內(nèi)部股權(quán)認(rèn)購合同范本
- 2025年跨區(qū)域金融協(xié)同發(fā)展策劃框架協(xié)議
- 2025年醫(yī)療設(shè)備租賃與維護(hù)合作協(xié)議
- 2025年勞保服裝定制合同樣本
- 2025年企業(yè)合作社交媒體代運(yùn)營合同
- 2025年建筑工程策劃環(huán)境風(fēng)險評估合作協(xié)議
- 2025年中期票據(jù)發(fā)行保證合同樣本
- 2025年中介電子商務(wù)合同
- 2025年農(nóng)村耕地整合策劃協(xié)同協(xié)議
- 微電網(wǎng)運(yùn)行與控制策略-深度研究
- 2025南網(wǎng)科研院系統(tǒng)內(nèi)招聘13人易考易錯模擬試題(共500題)試卷后附參考答案
- 關(guān)于合同知識的全面解讀
- 物業(yè)管理車輛出入管理制度
- 2025年施工項目部《春節(jié)節(jié)后復(fù)工復(fù)產(chǎn)》工作實施方案 (3份)-75
- 五四制青島版三年級數(shù)學(xué)下學(xué)期教學(xué)計劃
- 礦山安全生產(chǎn)工作總結(jié)
- 2024年常德職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫
- 監(jiān)護(hù)人考試20241208練習(xí)試題附答案
- 人教版PEP三年級到六年級單詞以及重點(diǎn)句型
- ABB工業(yè)機(jī)器人應(yīng)用技術(shù) 課件 2.6系統(tǒng)輸入輸出與IO信號的關(guān)聯(lián)
評論
0/150
提交評論