基于ICA的混合圖像盲分離算法
盲信號處理(BSP)是目前信號處理中最熱門的學(xué)科之一,它具有可靠的理論基礎(chǔ)和許多方面的應(yīng)用潛力。事實(shí)上,BSP已成為重要的研究課題,并在許多領(lǐng)域得到發(fā)展。多源混合信號的盲分離技術(shù)在通訊、語音信號處理、生物醫(yī)學(xué)信號處理、陣列信號處理以及通用信號分析等方面有著非常重要的應(yīng)用價(jià)值。獨(dú)立分量分析(Independent Component-Analysis,簡稱ICA)是近年來由盲信源分解技術(shù)發(fā)展而來的多道信號處理辦法。通過假定傳感器陣列所采集到的信號是多個(gè)具有統(tǒng)計(jì)獨(dú)立性的內(nèi)在信源信號的線性疊加,再采用某種特定的優(yōu)化準(zhǔn)則將所謂的獨(dú)立分量一一分解出來。該方法的基本思路是以非高斯信號為研究對象,在獨(dú)立性假設(shè)的前提下,對多路觀測信號進(jìn)行盲源分離。在滿足一定的條件下,能夠從多路觀測信號中,較好地分離出隱含的獨(dú)立源信號。盲信號分離可以用于對二維數(shù)據(jù),如圖像的處理。在圖像恢復(fù)和重構(gòu)問題中,主要任務(wù)就是從被污染的圖像中恢復(fù)出原本的面目。有各種可能造成圖像的污染,如相機(jī)抖動(dòng)、鏡頭變換、傳輸噪聲疊加等,這些因素都是未知的。本研究在仿真試驗(yàn)中,用ICA成功分離出原始圖像。
1 ICA基本原理
獨(dú)立分量分析旨在對獨(dú)立信源產(chǎn)生且經(jīng)過未知混合的觀測信號進(jìn)行盲分離,從而重現(xiàn)原獨(dú)立信源,其應(yīng)用主要集中在盲源分離和特征提取兩方面。ICA問題可簡單描述為:
設(shè)有N個(gè)未知的源信號Si(t),i=1,…,N構(gòu)成一個(gè)列向量S(t)=[S1(t),…,SN(t)]T,其中,t是離散時(shí)刻,取值為0,1,2,…。設(shè)A是一個(gè)M×N維矩陣,一般稱為混合矩陣(mixing matrix)。設(shè)X(t)=[Xl(t),…,XM(t)]T是由M個(gè)可觀察信號Xi(t),i=1,…,M,構(gòu)成的列向量,且滿足下列方程:
X(t)=AS(t),M≥N (1)
BSS的問題是,對任意t,根據(jù)已知的X(t)在A未知的條件下求未知的S(t)。這構(gòu)成一個(gè)無噪聲的盲分離問題。設(shè)N(t)=[Nl(t),…,NM(t)]T是由M個(gè)白色、高斯、統(tǒng)計(jì)獨(dú)立噪聲信號Ni(t)構(gòu)成的列向量,且X(t)滿足下列方程:
X(t)=AS(t)+N(t),M≥N (2)
則由已知的X(t)在A未知時(shí)求S(t)的問題是一個(gè)有噪聲盲分離問題。
ICA的目的是對任何t,根據(jù)已知的X(t)在A未知的情況下求未知的S(t),ICA的思路是設(shè)置一個(gè)N×N維反混合陣W=(wij),X(t)經(jīng)過W變換后得到N維輸出列向量Y(t)=[Yl(t),…,YN(t)]T,即有
Y(t)=WX(t)=WAS(t) (3)
整個(gè)過程可以表示成如圖l:
如果通過學(xué)習(xí)得以實(shí)現(xiàn)WA=I(I是N×N維單位陣),則Y(t)=S(t),從而達(dá)到了源信號分離目標(biāo)。
2 FastICA算法
FastICA算法本質(zhì)上是一種最小化估計(jì)分量互信息的神經(jīng)網(wǎng)絡(luò)方法,利用最大熵原理來近似負(fù)熵,并通過一個(gè)合適的非線性函數(shù)g使其達(dá)到最優(yōu)。其算法具有很多神經(jīng)算法里的優(yōu)點(diǎn):并行的、分布的、計(jì)算簡單、要求內(nèi)存小。如果要估計(jì)多個(gè)分量,我們可以按如下步驟計(jì)算:
1)對觀測數(shù)據(jù)進(jìn)行中心化,使它的均值為0;
2)對數(shù)據(jù)進(jìn)行白化,X→Z。
3)選擇需要估計(jì)的分量的個(gè)數(shù)m,設(shè)迭代次數(shù)p←1。
4)選擇一個(gè)初始權(quán)矢量(隨機(jī)的)Wp。
5)令Wp=E{Zg(WTpZ)}一E{g’(WTpZ)}W,非線性函數(shù)g的選取見前文。
8)假如Wp不收斂的話,返回第5步。
9)令p=p十l,如果p≤m,返回第4步。
3 試驗(yàn)仿真結(jié)果及主要Matlab代碼
盲源分離已經(jīng)在圖像處理領(lǐng)域得以應(yīng)用,在仿真數(shù)據(jù)下驗(yàn)證FastICA算法對圖像盲分離的效果如圖2所示。原始圖像為3幅彩色圖像,產(chǎn)生隨機(jī)混合矩陣,將原始圖像混合后得到混合圖像,可見原始圖像已經(jīng)看不出來。用FastICA對上面的混合圖像進(jìn)行盲分離,即假定在未知源圖像和混合矩陣下對混合圖像進(jìn)行分離,得到分離后的結(jié)果,由于ICA問題本身具有一些不確定因素,包括:1)分離后結(jié)果的排序與源信號會不一致;2)分離后的信號可能會與源信號相差一個(gè)負(fù)號。由于仿真實(shí)驗(yàn)在源圖像未知情況下進(jìn)行,因此我們在分離后的圖形中可能會發(fā)現(xiàn)圖像的排序發(fā)生變化,不過這些不會影響該算法對實(shí)際問題的處理。
評論