程 恭 劉 皞 程永茂
(海軍裝備部1) 北京 100080)(海軍航空工程學(xué)院研究生3隊2) 煙臺 264001)
模糊c-均值(FCM)算法最初是由Dunn在1973年提出的,后來由Bezdek進(jìn)行了改進(jìn)并推廣到實際應(yīng)用中去[1]。它可用于識別N維空間中球狀的點集,是模糊聚類分析中最靈敏的方法之一,它不僅被模糊工程的研究者所接受,而且也被推廣到其它一些科學(xué)的分枝,如醫(yī)學(xué)診斷,計算機(jī)可視化、通訊及過程感測等。
FCM是一種依據(jù)最小二乘法原理,采用迭代法優(yōu)化目標(biāo)函數(shù)來獲得數(shù)據(jù)劃分的方法,它的損失(目標(biāo))函數(shù)定義如下[2]:
這里數(shù)據(jù)集合X={x1,x2,…,xn},xi∈Rs,n是待聚類數(shù)據(jù)點的總數(shù),c是聚類中心數(shù),指數(shù)m>1是用來調(diào)節(jié)模糊類之間分得隸屬度的程度,增大m將增加函數(shù)的模糊性,使數(shù)據(jù)點的隸屬度降低。在此算法中所要做的就是追求Jm的最小化。根據(jù)“如果函數(shù)Jm最小,則其對各個變量的偏導(dǎo)數(shù)為0”做如下推導(dǎo):
由上式即可獲得聚類中心矩陣V={v1,v2,…,vc},這里每個vi都是有s個特征(指標(biāo))的一個聚類中心,即vi∈Rs。模糊分類矩陣就可由以下公式來獲得:
如果‖xk-vi‖=0,那么uik=1且對于?j≠i,有uik=0。其中U要滿足標(biāo)準(zhǔn)化條件:
模糊分類矩陣U被隨機(jī)初始化,聚類中心矩陣可由對所有數(shù)據(jù)點運(yùn)用式(3)來產(chǎn)生,算法步驟如下:
步驟1 隨機(jī)初始化模糊分類矩陣Uk,置當(dāng)前代數(shù)k=0;
步驟2 用式(3)計算聚類中心矩陣Vk;
步驟3k=k+1;
步驟4 按式(4)更新模糊分類矩陣Uk+1;
步驟5 按式(3)修正聚類中心矩陣Vk+1;
如果‖Vk+1-Vk‖<ε,則停止迭代,否則轉(zhuǎn)步驟3。
1)設(shè)系統(tǒng)的狀態(tài)向量為Xm(k)=[x(k),˙x(k),y(k),˙y(k)]T,x(k)和y(k)分別是圖像中的橫、縱坐標(biāo),˙x(k)和˙y(k)分別是圖像中的橫縱方向的速度分量。并設(shè)速度在橫、縱坐標(biāo)的轉(zhuǎn)移標(biāo)量為ax(t)和ay(t),T為序列圖像幀間的時間間隔。則狀態(tài)轉(zhuǎn)移矩陣Fm(k)為[3]:
2)對每幀圖像中選定的連通區(qū)域(即各個目標(biāo)區(qū)域)記錄如下區(qū)域特征[4]:目標(biāo)區(qū)域平均灰度gki、區(qū)域像素面積ski、目標(biāo)區(qū)域中心坐標(biāo)(xki,yki)。其中k為幀數(shù),i為對應(yīng)的區(qū)域標(biāo)記,0≤k≤NF,1≤i≤Mk,這里,NF為視頻的總幀數(shù),Mk為當(dāng)前幀的多目標(biāo)總數(shù)。
1)設(shè)起始幀有M0個目標(biāo),首先初始化這M0個目標(biāo)起始狀態(tài),并記錄本幀的目標(biāo)區(qū)域特征T0{gi,si,(xi,yi)}。其中:T0·gi為平均灰度、T0·si為區(qū)域像素面積、目標(biāo)區(qū)域中心坐標(biāo)(T0·xi,T0·yi)。
2)對接下來的第二幀同樣記錄M1個目標(biāo)區(qū)域及其特征T1{gi,si,(xi,yi)},利用 FCM 來關(guān)聯(lián)本幀和首幀間的區(qū)域。具體來說,定義目標(biāo)函數(shù)為
3)對接下來的第M2幀同樣記錄M2個目標(biāo)區(qū)域及其特征T2{gi,si,(xi,yi)},利用 FCM 來關(guān)聯(lián)本幀和前一幀間的區(qū)域和確定L2個航跡后驗關(guān)聯(lián)概率。通過實現(xiàn)最小化目標(biāo)函數(shù)J1(g,s,(x,y))來關(guān)聯(lián)前后幀圖像各個區(qū)域目標(biāo)。航跡后驗關(guān)聯(lián)概率的計算是根據(jù)區(qū)域間的特征關(guān)聯(lián)程度,從中找出航跡后驗關(guān)聯(lián)概率最大的假設(shè)航跡作為本幀每個目標(biāo)區(qū)域的確認(rèn)航跡[7]。
利用前一幀預(yù)測的本幀位置與本幀實際位置的差異來更新系統(tǒng)噪聲方差陣(k),其定義為:(k)=Q0+ΔQm(k)。其中,Q0為初始系統(tǒng)噪聲方差陣,ΔQm(k)為控制調(diào)整方陣。
這里定義控制增量:
當(dāng)(yi(k)-(k))(xi(k)-(k))>0,r=1;否則,r=-1。
同樣根據(jù)PMHT算法步驟⑸來預(yù)測各個目標(biāo)下一步的位置{((3),(3))。
這里與本小節(jié)步驟2不同的是,對PMHT算法步驟(5)的式(3)作如下修改:
也就是在誤差協(xié)方陣中增加系統(tǒng)噪聲方差陣項來更新、調(diào)整和修正系統(tǒng)運(yùn)動模型。
4)對隨后的所有幀同樣記錄Mk(k>3)個目標(biāo)區(qū)域及其特征Tk{gi,si,(xi,yi),ai}。這里,與前三幀不同的是:所定義的目標(biāo)函數(shù)包含了目標(biāo)運(yùn)動過程中的運(yùn)動方向(即航跡方向),其定義為J2(g,s,(x,y),a):
通過實現(xiàn)最小化目標(biāo)函數(shù)J2(g,s,(x,y),a)來關(guān)聯(lián)前后幀圖像各個區(qū)域目標(biāo)和確定Lk個航跡后驗關(guān)聯(lián)概率。對每個目標(biāo)區(qū)域,選擇航跡后驗關(guān)聯(lián)概率最大的假設(shè)航跡作為本幀的確認(rèn)航跡。并且,通過預(yù)測的位置與本幀實際位置的差異不斷修正運(yùn)動模型參數(shù)(即系統(tǒng)噪聲方差)。
圖1 運(yùn)動目標(biāo)跟蹤模擬流程圖
圖1中,黑色圓端點表示運(yùn)動目標(biāo)的實際位置,實線表示運(yùn)動目標(biāo)的真實航跡,虛線則是文中算法預(yù)測的航跡。從圖中可以看出,通過預(yù)測的位置與本幀實際位置的差異不斷修正運(yùn)動模型參數(shù),使得對目標(biāo)能夠?qū)崿F(xiàn)正確、有效的跟蹤。
5)k=k+1,轉(zhuǎn)到第4)步。
算法與傳統(tǒng)PMHT進(jìn)行雷達(dá)數(shù)據(jù)跟蹤方法不同之處和改進(jìn)的地方是:
1)通過區(qū)域特征,采用模糊聚類的思想來關(guān)聯(lián)各個區(qū)域。并在其中加入了運(yùn)動的航跡特征,這樣既可以提高跟蹤的準(zhǔn)確率,又可以減少運(yùn)算量;
2)根據(jù)預(yù)測的位置與實際目標(biāo)運(yùn)動位置的差異來更新運(yùn)動模型,而不需要通過PMHT循環(huán)迭代方法使系統(tǒng)收斂,從而實現(xiàn)對多目標(biāo)的跟蹤。這樣大大減少了運(yùn)算量。
3)通過對下一幀目標(biāo)位置的預(yù)測,既能提高下一幀中各個目標(biāo)區(qū)域間的關(guān)聯(lián)準(zhǔn)確率,又能不斷修正目標(biāo)的運(yùn)動模型,使得運(yùn)動模型更接近目標(biāo)實際運(yùn)動過程,這樣反過來提高了目標(biāo)的預(yù)測精度,從而進(jìn)一步提高了多目標(biāo)區(qū)域間在前后幀中的關(guān)聯(lián)準(zhǔn)確率。從這方面來看,該方法處理過程是一個良性循環(huán)過程。
N次累積后,根據(jù)目標(biāo)特性,按照指定規(guī)則對預(yù)選的多目標(biāo)進(jìn)行排序,如果以目標(biāo)灰度和區(qū)域面積為參考進(jìn)行排序[8],令
采用分辨率為320*240、響應(yīng)波段為8~14μm、幀頻為25幀/秒的紅外成像設(shè)備進(jìn)行紅外弱小多目標(biāo)跟蹤實驗和算法檢驗。實驗內(nèi)容是跟蹤港口中的四個弱小目標(biāo)船只。在海天線提取的基礎(chǔ)上[9,11],根據(jù)候選目標(biāo)的特征和先驗知識,可以得到平均灰度在區(qū)間(100,180)、像素面積在區(qū)間(5,30)內(nèi)如圖4顯示的三個候選目標(biāo){T1,T2,T3}。后續(xù)圖像中,目標(biāo)T4在第162幀出現(xiàn)在圖像場景中,在第833幀目標(biāo)T3與T2合并。圖2~圖4分別為第10、172、833幀原始紅外圖像;圖5~圖7分別為第10、172、833原始圖像中海天線提取圖像;圖8~圖10分別為對應(yīng)圖2~圖4運(yùn)用文中提出的基于FCM和改進(jìn)PMHT算法的紅外弱小多目標(biāo)跟蹤與檢測圖像。
圖2 第10幀圖像
圖3 第172幀圖像
圖4 第833幀圖像
圖5 海天線提取圖
圖6 海天線提取圖
圖7 海天線提取圖
圖8 多目標(biāo)跟蹤圖
圖9 多目標(biāo)跟蹤圖
圖10 多目標(biāo)跟蹤圖
整個跟蹤過程中,目標(biāo)1和目標(biāo)2停泊在岸邊靜止不動,目標(biāo)4快速地從場景左邊出現(xiàn)直至從場景右邊消失,同時目標(biāo)3以相對較慢的速率從場景的右邊向左邊緩慢運(yùn)動。
應(yīng)用基于FCM和改進(jìn)PMHT算法步驟實現(xiàn)對以上四個目標(biāo)的連續(xù)跟蹤。通過目標(biāo)區(qū)域特征和運(yùn)動航跡特征,采用模糊聚類的思想來關(guān)聯(lián)前后幀各個子區(qū)域。利用前一幀預(yù)測的本幀位置與本幀實際位置的差異來更新系統(tǒng)噪聲方差陣(k),通過不斷修正目標(biāo)的運(yùn)動模型,使得模型系統(tǒng)噪聲方差達(dá)到最優(yōu),實現(xiàn)對目標(biāo)檢測模型的尋優(yōu),達(dá)到自適應(yīng)處理的功能。圖11顯示了四個目標(biāo)的實際運(yùn)動航跡(白色為T3,綠色為T1,紅色為T4,藍(lán)色為T2),圖12顯示了文中算法的預(yù)測航跡。
圖11 實際運(yùn)動軌跡
圖12 預(yù)測運(yùn)動軌跡
實驗表明:文中提出算法的跟蹤偏差小、誤警率低、運(yùn)算復(fù)雜度隨目標(biāo)數(shù)增長呈線性變化、易于硬件實現(xiàn),是一種解決紅外小目標(biāo)跟蹤和檢測問題較好的實現(xiàn)方法。
[1]Selim S Z,Ismail M A.K-means Type Algorithm[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1994,6(1):81~87
[2]Bezdek C James.Convergence Theory for Fuzzy C-means:Counter Examples and Repairs[J].IEEE Transactions on Systems,Man and Cybernetics,1987(17):873~877
[3]王俊卿,史澤林,黃莎白.序列圖像中運(yùn)動目標(biāo)檢測[J].光電工程,2005,32(12):6~8
[4]丁艷,趙一帆.運(yùn)動目標(biāo)的檢測技術(shù)研究[J].光學(xué)技術(shù),2002,28(4):311~312
[5]Rago C,Willett P,Streit R.Direct Data Fusion Using the PMHT[C]//Proceedings of the 1995American Control Conference,1995
[6]Rago C,Willett P,Streit R.A Comparison of the JPDAF and PMHT Tracking Algorithm[C]//Proceedings of the 1995International Conference on Acoustics,Speech and Signal Processing,1995
[7]張全都,程詠梅,梁彥,等.模糊自適應(yīng)PMHT機(jī)動目標(biāo)跟蹤算法[J].火力與指揮控制,2008,33(12):17~21
[8]劉建華,畢篤彥,劉親社.一種紅外弱小目標(biāo)的檢測方法[J].激光與紅外,2008,38(7):732~736
[9]溫佩芝,史澤林,于海斌.復(fù)雜海面背景紅外小目標(biāo)自動檢測方法[J].紅外與激光工程,2003,32(6):590~593
[10]邱陵.FCM與PDA相結(jié)合的多傳感器多目標(biāo)跟蹤算法[J].計算機(jī)與數(shù)字工程,2008,36(11)
[11]劉松濤,沈同圣,韓艷麗,等.艦船目標(biāo)海天線提取方法研究[J].激光與紅外,2003,33(1):51~53