在信號處理中,往往需要從帶有雜訊的信號中提取原始信號。一般是用濾波處理方法來濾除或削弱雜訊幹擾以及其他不需要的信號。對於迭加性組合信號可以用線性濾波器將它們分離開。在實際應用中,還經常碰到不屬於迭加性組合的信號,如乘積性信號和褶積性信號,靠線性濾波器來分離或處理這些信號分量無法達到預期的效果,這時最好採用非線性濾波。有一類特殊的非線性系統,服從廣義的迭加原理。在代數運算上,這類系統可以用輸入和輸出的向量空間之間的線性變換來表徵,因而稱為同態系統。用這類系統統進行信號處理,就稱為同態信號處理。在語音、圖像、雷達、聲吶、地震勘探以及生物醫學工程等領域中,同態信號處理獲得廣泛的應用。

  同態系統服從廣義迭加原理 用符號 T[·]表示系統變換,用“囗”表示輸入信號的組成分量的廣義迭加,用“:“表示輸入信號矢量與標量C之間的一種廣義乘法運算,用“○”和“

”分別表示輸出信號的組成分量的廣義相加和標乘的運算,於是這類同態系統可以用三個子系統 D 相級聯組成(圖1)。其中第一個子系統 D 具有如下性質:

D [ x 1( n)□ x 2( n)]= D [ x 1( n)]+ D [ x 2( n)]

=X̂ 1( n)+X̂ 2( n)

D [ C: x 1( n)]= C D [ x 1( n)]= C1( n)

  可見,子系統D服從廣義迭加原理,其輸入運算是“囗”,輸出運算是“+”。子系統D的作用是將由信號分量按運算法則“囗”組合起來的信號變換成按常規線性相加的信號分量D[x1(n)]和D[x2(n)]。因此,D是一個同態系統。

  系統L是一個普通的線性系統,於是有

L[X̂ 1( n)+X̂ 2( n)]= L[X̂ 1( n)]+ L[X̂ 2( n)]

=ŷ 1( n)+ŷ 2( n)

L[ C1( n)]= C L[X̂ 1( n)]= Cŷ 1( n)
最後一個子系統 D 0 -1是將系統 L的輸出按運算規則“○”進行逆運算變換為系統輸出,有

D0 -11( n)+ŷ 2( n)]= D 0 -1ŷ 1( n)]+ D 0 -12( n)]

y 1( n)+ y 2( n)

D 0 -1[ Cŷ( n)]= C D 0 -1[ŷ( n)]= C ŷ( n)

由於子系統D是按運算“囗”和“:“確定的一種特征系統,因此稱為對運算“囗”的特征系統。同樣,D0是對運算“○“的特征系統。顯然,具有相同運算規則的第一子系統和第三子系統的所有同態系統,隻是其線性系統部分有所不同。換言之,特征系統確定之後,剩下的就是線性濾波問題瞭。例如,要從信號x(n)=x1(n)□x2(n)中恢復出有用信號x1(n),首先就要找出一個特征系統D,它能把x(n)變為

D [ x( n)]= D [ x 1( n)]+ D [ x 2( n)]

=X̂ 1( n)+X̂ 2( n)
然後,適當選擇和設計線性系統 L,隻讓 D [ x( n)]中的X̂ 1( n)= D [ n 1( n)]分量通過,理想的情況是

ŷ( n)=X̂ 1( n)= D [ x 1( n)]
然後,取 D 0D ,得到逆特征系統的輸出為

y( n)= D 0 -1[ŷ( n)]= D 0 -1D [ x 1( n)]}= x 1( n)
因此,為瞭分離 x 1( n)和 x 2( n),必須用一個線性濾波器 L來完全分離 x 1( n)和 x 2( n)。理想的分離取決於運算法則“囗”以及輸入信號分量 x 1( n)和 x 2( n)的性質。

  同態濾波處理系統 在輸入和輸出運算相同的情況下,同態系統可分為相乘信號的同態濾波處理和褶積信號的同態濾波處理兩種。

  相乘信號的同態濾波處理 在許多實際問題中,信號為兩個或多個分量的乘積。例如,在有衰落的傳輸信道中,衰落效應可以看作是一個緩變分量和傳輸信號相乘。又如,調幅信號可表示為載頻信號與包絡函數的乘積,在接收機內需要分離載波和包絡。在這一類相乘信號中,用線性系統來分離信號各成分或單獨地改善某一信號成分往往是無效的。但利用相乘信號的同態濾波處理,就可以取得較好的濾波效果。

  假設信號

,且對所有 n值, x 2( n)>0,則有

log[ x 1( nx 2( n)]=log{ x 1( n)+log[ x 2( n)]}
但是,輸入信號 x( n)不一定是正的,而且往往是復數信號。這時,就要用到復對數函數,於是輸入和輸出均為乘法的同態系統,如圖2所示,其中序列 x( n)、X̂( n)、ŷ( n)及 y( n)一般均為復數。

  令x(n)=|x(n)|exp{jarg[x(n)]}表示一個復數序列,則x(n)的復對數為

log[ x( n)]=log| x( n)|+jarg[ x( n)]復對數log[ x( n)]
的逆是復指數,即

y( n)=exp{log[ x( n)]}

=exp[log| x( n)|]·exp{jarg[ x( n)]}

  復對數的虛部arg[x(n)]加上2π的任意整數倍,並不改變上式的結果。因此,如果不另加限制,復對數並不是唯一性變換,會出現多值性問題。為此,必須選擇能消除模糊的arg[x(n)]。但是系統log[x(n)]服從廣義迭加原理,x(n)=x1(n)x2(n)必須存在下列關系

log| x( n)|=log| x 1( n)|+log| x 2( n)|

arg[ x( n)]=arg[ x 1( n)]+arg[ x 2( n)]
隻要保證上述相角關系成立,就能消除arg[ x( n)]中的模糊。

  褶積信號的同態濾波處理 在多徑或混響環境中進行通信、定位或記錄,產生失真的效果可以看成是幹擾與所需信號的褶積。在語音信號處理中,經常要分離激勵源與聲道沖激響應,至少在一段短時間內可以認為語音波形是由兩者的褶積構成的。地震記錄數據是地震子波與含有巖層結構信息的反射系數序列的褶積組合。離散褶積組合信號可以表示為

x( n)= x 1( n)* x 2( n)
利用同態濾波處理可以解褶積(圖3)。特征系統 D *具有如下性質:
D *[ x 1( n)* x 2( n)]=D *[ x 1( n)]+D *[ x 2( n)]

=X̂ 1( n)+X̂ 2( n)

D *[ C: x( n)]= CD *[ x( n)]= CX̂( n)
系統L是一個線性系統, D * -1D *的逆系統。

  褶積的Z變換是

x( Z)= x 1( Z) x 2( Z)
Z變換運算也可以看作是一個系統,它的輸入運算為褶積,輸出運算是乘法的同態變換。因此,利用 Z變換就能把褶積組合變換成乘法組合,從而可以利用上述乘法同態濾波系統來處理。但是,通常函數 x( Z)是個復數,故不得不采用復對數運算。

  

參考書目

 何振亞著:《數字信號處理的理論與應用》,人民郵電出版社,北京,1983。