吳京輝,唐林波,趙保軍,鄧宸偉,蔡曉芳
(北京理工大學(xué) 信息與電子學(xué)院,北京 100081)
?
基于非遞歸迭代投影的實時深空目標(biāo)檢測算法
吳京輝,唐林波,趙保軍,鄧宸偉,蔡曉芳
(北京理工大學(xué) 信息與電子學(xué)院,北京 100081)
針對深空目標(biāo)信噪比低、干擾多、傳統(tǒng)方法無法檢測準(zhǔn)確性低的問題,提出一種基于非遞歸迭代投影的快速實時深空目標(biāo)檢測算法.該算法采用由粗到細的檢測流程,首先根據(jù)圖像特征自適應(yīng)確定迭代投影次數(shù)提取所有疑似目標(biāo),然后通過鄰域判決對目標(biāo)進行軌跡關(guān)聯(lián)剔除虛假目標(biāo),從而實現(xiàn)目標(biāo)的準(zhǔn)確檢測.此外,為了提高算法的實時性,針對FPGA并行流水的特點,利用非遞歸編程架構(gòu)對算法進行優(yōu)化,提高了算法的并行度和運行效率.在SOPC硬件平臺上的實驗表明,該算法能夠準(zhǔn)確實時檢測深空目標(biāo),對懸浮實驗的圓滿成功起到了決定的作用.
深空目標(biāo);目標(biāo)檢測;迭代投影;軌跡關(guān)聯(lián)
隨著航天技術(shù)的發(fā)展,深空目標(biāo)的檢測成為近年來圖像處理領(lǐng)域的研究熱點,對軍事和民用具有重要意義[1-3].深空目標(biāo)在圖像上表現(xiàn)為點目標(biāo),幾乎沒有可用的紋理信息和形狀特征,因此需要利用目標(biāo)的連續(xù)運動信息來檢測.常用的運動目標(biāo)檢測方法包括幀差法[4]、投影法[5]、光流法[6]和基于小波的檢測方法[7-8]等.幀差法結(jié)構(gòu)簡單,但對序列圖像目標(biāo)運動速度較快、背景變化較大的情況,將無法得到較好的檢測效果.投影法計算簡單且易于實現(xiàn),但是多個目標(biāo)出現(xiàn)遮擋時容易造成漏檢.光流法利用運動目標(biāo)的光流特性進行檢測,對噪聲敏感且運算復(fù)雜.利用小波多分辨率分析能夠檢測出局部階躍點,從而有效檢測出潛在目標(biāo);但是運算復(fù)雜,沒有特定的硬件支持一般很難滿足實時處理的要求.
本文提出了一種基于非遞歸迭代投影的實時深空目標(biāo)檢測算法.該算法首先用自適應(yīng)閾值分割對圖像進行二值化處理;然后根據(jù)圖像特征分別在目標(biāo)區(qū)域的水平和垂直方向反復(fù)進行迭代投影,直到得到所有目標(biāo)的位置,為了便于硬件實現(xiàn),迭代過程采用了非遞歸的編程思想;最后根據(jù)目標(biāo)運動的連續(xù)性利用鄰域判決去除圖像虛假目標(biāo).對大量實際圖像的檢測和跟蹤實驗證明本文提出的快速算法很好地解決了檢測效果和實時性之間的矛盾.
傳統(tǒng)交叉投影算法[4]只進行垂直和水平二次投影,實現(xiàn)簡單,節(jié)約計算量和存儲量,然而,當(dāng)垂直或者水平方向出現(xiàn)目標(biāo)遮擋時,只進行二次投影得到的區(qū)域中會存在多個干擾目標(biāo).因此,進行一次交叉投影不能分離所有的目標(biāo).本文對交叉投影算法進行改進,在水平和垂直方向采用迭代投影的方法,最終能夠檢測出所有目標(biāo)的準(zhǔn)確位置.
1.1 自適應(yīng)閾值分割
由于深空圖像背景灰度變化緩慢,因此可以對原始圖像進行預(yù)處理濾除背景和一部分噪聲,并將其轉(zhuǎn)化為二值圖像,從而減少迭代投影的計算量.本文采用自適應(yīng)閾值法把目標(biāo)和背景進行二值分割,此算法可以適應(yīng)于不同的背景圖像.閾值門限按下式設(shè)置:
(1)
式中:T為閾值門限;m為圖像灰度均值;σ為圖像灰度均方差;k根據(jù)圖像的信噪比決定,k=Ck×RSN.其中Ck為調(diào)節(jié)因子,經(jīng)驗值為Ck∈(0.25,0.85),RSN為圖像幅值信噪比,其定義為
(2)
式中f(x,y)為圖像的灰度最大值.
1.2 迭代投影算法1.2.1 傳統(tǒng)的交叉投影算法
傳統(tǒng)交叉投影算法提取目標(biāo)的過程如圖1所示.首先對二值圖像進行豎直投影運算,并檢測投影灰度值大于0的坐標(biāo)區(qū)間,則得到相應(yīng)目標(biāo)的橫坐標(biāo)區(qū)間.在每個區(qū)間范圍內(nèi),對圖像進行水平投影檢測,進而確定該坐標(biāo)區(qū)間內(nèi)相應(yīng)目標(biāo)的縱坐標(biāo)范圍.這樣,經(jīng)過一次豎直和水平的交叉投影,便可以檢測得到相應(yīng)目標(biāo)外接4邊形的4個頂點坐標(biāo).該迭代過程的公式如下:
(3)
(4)
其中:H和W分別為圖像的高度和寬度;P(x)和P(y)分別為圖像在垂直和水平方向灰度值總和.如果P(x)>0或P(y)>0,則其對應(yīng)的坐標(biāo)區(qū)域為目標(biāo)區(qū)域.
對于干擾目標(biāo)比較少的圖像經(jīng)過一次交叉投影就可以檢測到各個目標(biāo)的位置.但是對于比較復(fù)雜的圖像,會出現(xiàn)多個目標(biāo)遮擋的情況,如圖2所示,只經(jīng)過一次交叉迭代無法檢測出多個目標(biāo).
1.2.2 改進的迭代投影算法
針對有目標(biāo)遮擋的情況,對交叉投影算法進行改進.
投影公式記為
(5)
(6)
式中:下標(biāo)S表示投影區(qū)域;S(y)是投影區(qū)域內(nèi)所有縱坐標(biāo)的集合;S(x)為投影區(qū)域內(nèi)所有橫坐標(biāo)的集合;PS(x)和PS(y)分別為投影區(qū)域內(nèi)垂直和水平方向灰度值總和.改進的迭代投影算法是根據(jù)圖像內(nèi)容,利用投影方程式(5)(6)通過迭代的方式不斷尋找所有包含目標(biāo)的投影區(qū)域,直到找到所有目標(biāo),迭代終止.
改進迭代投影的具體實現(xiàn)步驟如下:
① 首先對整幅圖像進行垂直投影,記錄得到的垂直方向上的目標(biāo)區(qū)域Si,記為1級目標(biāo)區(qū)域;
② 在Si區(qū)域中再進行水平投影,得到目標(biāo)區(qū)域Sij,記為2級目標(biāo)區(qū)域.
③ 判斷每個1級目標(biāo)區(qū)域Si中2級目標(biāo)區(qū)域的個數(shù)Sij:若為1,則投影結(jié)束;若不是,則在2級目標(biāo)區(qū)域Sij內(nèi)繼續(xù)進行垂直投影和水平投影,重復(fù)前面的操作,如此迭代直到投影結(jié)束.
④ 根據(jù)迭代投影得到的外接4邊形的坐標(biāo)就能確定相應(yīng)目標(biāo)的位置信息,從而實現(xiàn)了所有目標(biāo)的檢測.
可以看出,以上投影過程不必為所有水平或垂直方向上的像素都進行求和運算,只需對指定區(qū)域內(nèi)像素求和.這種處理方法可以大大節(jié)省求和運算時間,提高了系統(tǒng)的工作效率.
步驟③的循環(huán)有遞歸和非遞歸兩種實現(xiàn)方式.遞歸方法就是將一次垂直投影和一次水平投影作為函數(shù)體循環(huán)調(diào)用,遞歸終止條件為垂直投影和水平投影的目標(biāo)區(qū)域數(shù)均為1.流程圖如圖3所示.
遞歸實現(xiàn)具有結(jié)構(gòu)清晰、可讀性好、易于理解等優(yōu)點.然而遞歸程序較之非遞歸程序無論是空間需求還是時間需求都更高,另外,有些編譯器沒有提供遞歸的機制和手段,如SOPC(system on programmable chip)的Nios Ⅱ硬件加速編譯器就不支持遞歸機制.為了節(jié)省存儲空間和可以充分利用DSP和FPGA并行流水實現(xiàn),提高算法的并行度和運行效率,有必要采用非遞歸方法實現(xiàn)上述迭代投影算法,其流程圖如圖4所示.
從圖4中可以看出,非遞歸算法實現(xiàn)流程較圖3所示的遞歸算法結(jié)構(gòu)復(fù)雜,但是非遞歸算法不需要存儲投影區(qū)域,對步驟③的投影過程是流水進行的.因此非遞歸算法節(jié)省了存儲空間,提高了投影算法的運行效率.
1.3 軌跡關(guān)聯(lián)
由于深空圖像信噪比低且對目標(biāo)干擾較多,因此單幀的迭代投影目標(biāo)檢測算法無法完全提取出真正的目標(biāo),需要利用序列圖像目標(biāo)運動的連續(xù)性即多幀軌跡關(guān)聯(lián)進一步剔除噪聲提取出真正的目標(biāo),本文采用鄰域判決的檢測算法[9],基于迭代投影的鄰域判決檢測算法步驟如下:
① 開始輸入連續(xù)的N幀圖像,初始化計數(shù)器為0;② 將第一幀圖像作為當(dāng)前幀,若第一幀為圖像序列中的首幀,則對整幅圖像進行上述的迭代投影,否則,在以上一次的檢測結(jié)果為中心的鄰域內(nèi)進行迭代投影,找出二值圖像中所有候選目標(biāo),記錄它們的形心坐標(biāo)位置;③ 對候選目標(biāo),在下一幀圖像中以其形心位置為中心對應(yīng)的鄰域內(nèi)進行迭代投影,觀察是否有候選目標(biāo)點存在:如果有,則記錄該幀中可疑目標(biāo)形心的位置,計數(shù)器加1,并將其設(shè)為當(dāng)前位置,重復(fù)前面的操作,如果沒有,則跳過該幀,轉(zhuǎn)到下幀繼續(xù)搜索;④ 重復(fù)執(zhí)行步驟③的操作,直到N幀圖像全部搜索完畢;⑤ 處理完N幀圖像后,判斷計數(shù)器的輸出值:如果計數(shù)器值≥i,則判定為真實目標(biāo),并標(biāo)記其位置;否則將其剔除;⑥ 轉(zhuǎn)至下一個候選目標(biāo)形心位置,對其執(zhí)行③~⑤各步操作,直到當(dāng)前幀圖像中的所有侯選目標(biāo)都被處理過一遍;⑦ 更新N幀圖像,轉(zhuǎn)至步驟②繼續(xù)執(zhí)行判決過程,直至處理完整個圖像序列.
關(guān)聯(lián)的幀數(shù)N由處理時間和緩存空間共同決定,i=CiN,其中Ci為調(diào)節(jié)因子,經(jīng)驗值為Ci∈(0.6,0.8),鄰域窗口大小可根據(jù)實際情況進行調(diào)整,目標(biāo)運動速度較慢時,可減小窗口的大小,以便節(jié)省時間,目標(biāo)運動速度較快時,要適當(dāng)擴大窗口的大小,以保證真實的目標(biāo)點落在鄰域范圍內(nèi).其流程圖如圖5所示.
本文用VC++6.0產(chǎn)生模擬的圖像序列,序列大小為128×128,目標(biāo)按照橢圓軌跡運動,并在圖像序列中加入干擾和噪聲.在所研制的基于SOPC的硬件平臺上進行實驗驗證,結(jié)構(gòu)框圖如圖6所示.
其中,成像器負責(zé)采集和傳輸數(shù)字圖像;FPGA對圖像進行預(yù)處理,對原始圖像進行自適應(yīng)閾值分割; SOPC核Nios Ⅱ CPU完成目標(biāo)檢測,主要完成迭代投影算法和基于鄰域判決的軌跡關(guān)聯(lián)算法,并在檢測到的目標(biāo)位置畫十字;DPRAM存儲中間結(jié)果;SRAM緩存圖像數(shù)據(jù);通信模塊負責(zé)主控計算機和板卡的通信及控制,通信模塊收到主控計算機的數(shù)據(jù)后,進行命令解析,按照解析后的指令向開關(guān)量發(fā)送控制信息.同時將目標(biāo)位置和目標(biāo)狀態(tài)參量發(fā)送給主控計算機.
實驗中N=4,Ci=0.75,則i=3,即只關(guān)聯(lián)了4幀連續(xù)圖像,鄰域窗口選取32×32的窗口.仿真結(jié)果如圖7所示.
圖7(a)是用VC++6.0產(chǎn)生的原始圖像,圖7(b)是自適應(yīng)閾值分割的結(jié)果;圖7(c)和 7(d)分別是用遞歸和非遞歸方式得到的目標(biāo)檢測結(jié)果,方框點為真實目標(biāo),其余點都是干擾;圖7(e)~7(h)為從序列圖像中隨機抽取的部分檢測結(jié)果.由圖7可知,自適應(yīng)閾值分割處理能濾除大部分噪聲,運用遞歸和非遞歸方法實現(xiàn)迭代交叉投影檢測方法均能準(zhǔn)確檢測出所有的目標(biāo)點,運用鄰域判決的方法進行4幀軌跡關(guān)聯(lián)最終準(zhǔn)確檢測出真實的目標(biāo).
可以看出,本文的方法在干擾較多的情況下,仍然能夠準(zhǔn)確檢測目標(biāo),由于目標(biāo)較小,因此檢測到目標(biāo)的位置不會出現(xiàn)偏差.為突出本文算法的性能,分別從檢測率和虛警率[10]方面與傳統(tǒng)投影算法進行比較.實驗共產(chǎn)生了500幅含有目標(biāo)和噪聲的圖像,對500幅圖像進行目標(biāo)檢測,統(tǒng)計檢測率和虛警率,結(jié)果如表1所示.
表1 檢測率和虛警率對比
從表1可以看出,檢測率比傳統(tǒng)投影算法提高了5.8%,虛警率降低了3.2%.因此改進后的算法的檢測性能有明顯提高.
為了測試本文算法的優(yōu)化效果,分別對遞歸和非遞歸實現(xiàn)的兩段代碼進行多次執(zhí)行,并記錄執(zhí)行時間.實驗結(jié)果如表2所示.
表2 遞歸和非遞歸方法的執(zhí)行時間
Tab.2 Execution time of recursive and non-recursive approaches
程序執(zhí)行次數(shù)遞歸方法/ms非遞歸方法/ms1003116100040678100004109797
從表2可以看出,程序執(zhí)行100次,非遞歸方法的執(zhí)行速度是遞歸方法的1.9倍;程序執(zhí)行1 000次,非遞歸方法的執(zhí)行速度是遞歸方法的5.2倍;程序執(zhí)行10 000次,非遞歸方法的執(zhí)行速度是遞歸方法的5.1倍.實驗結(jié)果表明,非遞歸方法比遞歸方法效率至少提高1.9倍.
算法實時性要求目標(biāo)檢測可以在一幀圖像的消隱期完成.通過以上計算時間的分析,可以看出程序執(zhí)行一次的時間在1 ms以內(nèi),滿足實時性要求.
提出了一種改進的非遞歸迭代交叉投影深空目標(biāo)檢測算法,該方法根據(jù)深空目標(biāo)圖像的信噪比進行自適應(yīng)閾值法分割,然后采用結(jié)合迭代投影的鄰域判決方法進行多幀軌跡關(guān)聯(lián),可以實現(xiàn)在深空背景下沿特定軌跡運動的目標(biāo)的準(zhǔn)確檢測.相對于傳統(tǒng)的交叉投影法,迭代投影能夠適用于更復(fù)雜的圖像,適用范圍更廣.為了滿足FPGA并行流水實現(xiàn)的特點,本文在算法的實現(xiàn)上采用了非遞歸機制進行優(yōu)化,可以實現(xiàn)硬件加速,提高了算法的執(zhí)行效率,達到了實時性要求.
VC軟件平臺仿真結(jié)果表明,在深空背景下目標(biāo)沿橢圓軌跡運動時,該算法取得了較好的檢測效果.基于SOPC硬件平臺的實驗結(jié)果表明,該算法具有很強的抗干擾能力,滿足圖像處理的實時性要求,具有較好的移植性.
[1] Lipton A J,F(xiàn)ujiyoshi H,Patil R S.Moving target classification and tracking from real-time video[C]∥Applications of Computer Vision Proceedings of Fourth IEEE Workshop on.[S.l.]: IEEE,1998:8-14.
[2] 高建偉,李磊,姚睿,等.基于卡爾曼濾波的弱小目標(biāo)實時檢測與跟蹤[J].計算機工程,2012,38(2):4-7.
Gao Jianwei,Li Lei,Yao Rui,et al.Real-time detection and tracking for dim-small target based on Kalman filtering[J].Computer Engineering,2012,38(2):4-7.(in Chinese)
[3] 葉有時,唐林波,趙保軍.一種基于聚類的深空紅外多目標(biāo)快速檢測算法[J].電子與信息學(xué)報,2011,33(1):77-84.
Ye Youshi,Tang Linbo,Zhao Baojun.A fast deep-space infrared multi-target detection algorithm based on clustering[J].Journal of Electronics &Information Technology,2011,33(1):77-84.(in Chinese)
[4] 甘明剛,陳杰,劉勁,等.一種基于三幀差分和邊緣信息的運動目標(biāo)檢測方法[J].電子與信息學(xué)報,2010,32(4):894-897.
Gan Minggang, Chen Jie, Liu Jin, et al.Moving object detection algorithm based on three-frame-differencing and edge information[J].Journal of Electronics &Information Technology,2010,32(4):894-897.(in Chinese)
[5] 王兆魁,張育林.一種CCD星圖星點快速定位算法[J].空間科學(xué)學(xué)報,2006,26(3):209-214.
Wang Zhaokui,Zhang Yulin.Algorithm for CCD star image rapid locating[J].Chinese Journal of Space Science,2006,26(3):209-214.(in Chinese)
[6] 周斌,王軍政,沈偉.動態(tài)跟蹤中背景補償與目標(biāo)運動估計[J].北京理工大學(xué)學(xué)報,2010,30(11):1305-1309.
Zhou Bin,Wang Zhengjun,Shen Wei.Background compensation and motion estimation for dynamic tracking[J].Transactions of Beijing Institute of Technology,2010,30(11):1305-1309.(in Chinese)
[7] 張旭光,韓廣良,孫巍,等.復(fù)雜背景下運動目標(biāo)的提取[J].光電工程,2006,33(4):10-13.
Zhang Xuguang,Han Guangliang,Sun Wei, et al.Extraction of moving objects in clutter background[J].Opto-Electronic Engineering,2006,33(4):10-13.(in Chinese)
[8] 盛文,鄧斌,柳健.一種基于多尺度距離像的紅外小目標(biāo)檢測方法[J].電子學(xué)報,2002,30(1):42-45.
Sheng Wen,Deng Bin,Liu Jian.Multi-resolution distance map based small target infrared image[J].Acta Electronica Sinica,2002,30(1):42-45.(in Chinese)
[9] 王鵬,陳國瑛.可見光圖像序列中運動弱小目標(biāo)檢測方法研究[J].現(xiàn)代防御技術(shù),2008,36(1):114-120.
Wang Peng,Chen Guoying.Research of moving weak small target detection method in optical image sequences[J].Modern Defense Technology,2008,36(1):114-120.(in Chinese)
[10] 張弘,趙保軍,史彩成.對低信噪比下的紅外點目標(biāo)高檢測率的研究[J].系統(tǒng)工程與電子技術(shù),2001,23(3):58-60.
Zhang Hong,Zhao Baojun,Shi Caicheng.The study of high detecting probability of infrared point target under low SNR[J].Systems Engineering and Electronics,2001,23(3):58-60.(in Chinese)
(責(zé)任編輯:劉芳)
Deep-Space Object Detection Based on Non-Recursion Iterative Projection
WU Jing-hui,TANG Lin-bo,ZHAO Bao-jun,DENG Chen-wei,CAI Xiao-fang
(School of Information and Electronics,Beijing Institute of Technology,Beijing 100081,China)
Traditional method could not detect all objects, when the deep-space image is low SNR and full of distortion.To tackle this problem, a fast and real-time deep-space object detection approach was proposed, which was based upon modified iterative projection and non-recursion programming method.In this algorithm, a coarse-to-fine detection process was used.Firstly, the number of projection was determined adaptively in accordance with the image unique properties to detect all objects.Then the trajectory matching was undergone by neighborhood decision approach to achieve accurate objects detection.To implement the algorithm in real time, a non-recursion program method was used to optimize the structure of the hardware.So, the proposed algorithm was easy to implement by FPGA.Experimental results on SOPC hardware platforms show that it can perform real-time detection accurately for the deep-space objects, and it plays a decisive role for the success of the experiment on suspension.
deep-space objects;object detection;iterative projection;trajectory matching
2013-11-08
國家“八六三”計劃項目
吳京輝(1984—),男,博士生,E-mail:wjinghui@bit.edu.cn.
TP 391
A
1001-0645(2016)03-0314-06
10.15918/j.tbit1001-0645.2016.03.017