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