一種基于dm8148開發(fā)板的運動目標(biāo)檢測與跟蹤方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及DM8148開發(fā)板上的圖像處理應(yīng)用技術(shù),屬于智能視頻監(jiān)控裝置,適用于安全智能監(jiān)控中的行人、車輛等運動目標(biāo)的檢測與跟蹤。
【背景技術(shù)】
[0002]運動目標(biāo)檢測,是指從視頻圖像中將變化的區(qū)域從靜態(tài)背景中提取出來的技術(shù)。利用這一技術(shù),可對場景中的行人、車輛、運動物體等目標(biāo)進行檢測與跟蹤,實現(xiàn)對可疑人物的跟蹤、異常事件檢測等效果。它在安全監(jiān)控、交通流量監(jiān)控等領(lǐng)域有著廣括的應(yīng)用前景。目前,傳統(tǒng)的運動目標(biāo)檢測方法主要有幀差法、光流法和背景分離法(參見《基于三幀差法的運動目標(biāo)檢測方法研究》和《嵌入式系統(tǒng)中的圖像前景檢測技術(shù)的研究與實現(xiàn)》等)。而隨著圖像處理技術(shù)的快速發(fā)展,運動目標(biāo)檢測技術(shù)更多地依靠統(tǒng)計特征和分類算法等。如利用 H0G 特征和 SVM 算法(參見《Histograms of Oriented Gradient for HumanDetect1n))等),Haar特征和Adaboost算法以及積分圖特征和級聯(lián)分類等(參見《RapidObject Detect1n using a Boosted Cascade of Simple Feature》和《Robust Real-TimeFace Detect1n》等)。
[0003]隨著視頻智能監(jiān)控技術(shù)的發(fā)展,在嵌入式開發(fā)板上的DSP核(數(shù)字信號處理器)上做運動目標(biāo)檢測算法已成為一個較熱門的領(lǐng)域,國內(nèi)外也有很多研究機構(gòu)專注這方面的研究。例如可以充分發(fā)揮DSP計算能力,在DM8168的DSP核中做視頻圖像的處理及人臉檢測(參見《基于多核DSP處理器DM8168的視頻處理方法》和《基于DM8168的人臉檢測系統(tǒng)設(shè)計》等)。目前,智能視頻監(jiān)控領(lǐng)域應(yīng)用的開發(fā)板主要是由TI公司提供的,包括DM36x、DM8127、DM8147、DM8148、DM8168、DM64xx等等。這些開發(fā)板一般是多核的S0C(片上系統(tǒng)),其中的DSP核主要用于算法處理,其計算速度能夠達到PC機的幾倍甚至幾十倍;ARM核是主控核,用于控制核間通信;其他核則用于圖像采集、編解碼、顯示等。DM8148開發(fā)板是四核的高清開發(fā)板,它的DSP核應(yīng)用能達到與DM8168相同的效果,此外,此開發(fā)板的成本低,兼容性和可擴展性很好,因此在此開發(fā)板上做算法處理具有明顯的優(yōu)勢。
[0004]傳統(tǒng)的運動目標(biāo)檢測方法相較于當(dāng)前的檢測技術(shù),不需要依靠大量的訓(xùn)練和測試,更適合應(yīng)用于開發(fā)板上,但其處理復(fù)雜度大,且DM8148開發(fā)板自身資源有限,存儲空間較小,實時性要求較高等,從而大大增加了開發(fā)的難度。
【發(fā)明內(nèi)容】
[0005]當(dāng)前,基于開發(fā)板的視頻智能監(jiān)控研究,主要集中在視頻編解碼、傳輸?shù)鹊奶幚怼τ谠贒SP核做運動目標(biāo)檢測相對較少,且主要集中在DM8168、DM64xx等開發(fā)板上,而DM8148的研究卻較少。同時,DM8148相較于DM8168開發(fā)板成本低,且在保證與DSP核處理性能相近的情況下,具有更好的兼容性與擴展性?;谝陨显?,為應(yīng)對視頻智能監(jiān)控發(fā)展趨勢,本發(fā)明提出基于DM8148的運動目標(biāo)檢測方案。
[0006]本發(fā)明采用的技術(shù)方案如下:
[0007]一種基于DM8148開發(fā)板的運動目標(biāo)檢測與跟蹤方法,通過DM8148開發(fā)板采集視頻圖像信息,然后利用DM8148開發(fā)板的DSP核對視頻圖像信息進行處理,處理步驟包括:
[0008]1)利用幀間差分法將前后背景分離;
[0009]2)利用Sobel邊緣檢測方法對前后背景分離的信息做初步處理;
[0010]3)利用圖像形態(tài)學(xué)處理方法進一步對前后背景分離的圖像信息進行處理;
[0011]4)利用連通域分析算法實現(xiàn)運動目標(biāo)的檢測和跟蹤。
[0012]進一步地,步驟1)包括如下子步驟:
[0013]a)對于第一幀視頻,直接將視頻幀中的灰度圖像信息存儲到開辟的preframe內(nèi)存空間中,然后不做處理,正常輸出顯示;
[0014]b)對第二幀及其后面的視頻幀信息處理流程相同,即先將視頻幀中的灰度信息保存到臨時開辟的tempframe內(nèi)存空間中,然后利用當(dāng)前幀的灰度圖像信息減去preframe內(nèi)存空間中的前一幀灰度信息,將相減得到的圖像信息值與適當(dāng)?shù)拈撝颠M行比較,當(dāng)大于閾值時,將其賦白色像素值,否則賦黑色像素值;然后將tempframe內(nèi)存空間中的當(dāng)前幀信息復(fù)制到preframe中,并釋放tempframe內(nèi)存空間。
[0015]進一步地,步驟3)所述圖像形態(tài)學(xué)處理方法包括:膨脹和腐蝕操作,進行邊緣去陰影,減少前后背景空洞。
[0016]進一步地,步驟4)通過所述連通域分析算法進行區(qū)域的劃分,得到連通區(qū)域的基本特征,包括區(qū)域的位置、長寬和密度;然后依據(jù)得到的區(qū)域,通過控制其面積、長寬比、密度進行刷選,并繪制矩形框,從而實現(xiàn)對運動目標(biāo)的檢測和跟蹤。
[0017]—種采用上述方法的運動目標(biāo)檢測與跟蹤裝置,包括DM8148開發(fā)板,通過DM8148開發(fā)板采集視頻圖像信息,然后利用DM8148開發(fā)板的DSP核對視頻圖像信息進行處理,處理步驟包括:利用幀間差分法將前后背景分離;對視頻信息進行Sobel邊緣檢測,以進一步分離前后背景;利用圖像形態(tài)學(xué)處理方法對前后背景分離的圖像信息進行處理;利用連通域分析算法實現(xiàn)運動目標(biāo)的檢測和跟蹤。
[0018]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果如下:
[0019]雖然DM8168的研究和應(yīng)用更加廣泛,但是DM8148比DM8168成本低,且DSP核的處理速度相差不大,在一定程度上能達到相同的效果。而且DM8148可以作為DM368的升級版,可以作為IP攝像頭或其他照相設(shè)備的重要組件,故本發(fā)明具有節(jié)約成本、兼容性、擴展性良好等優(yōu)點。此外,與PC下用同樣的方法做運動目標(biāo)檢測相比,在DM8148的DSP核中做運動目標(biāo)檢測,其檢測精度相差不大,但圖像處理和檢測速度卻有顯著地提高。除此之外,此發(fā)明可擴展性良好,不僅可以對運動目標(biāo)檢測,也可針對特定的目標(biāo),如行人、車輛等做檢測和跟蹤。
【附圖說明】
[0020]圖1.DM8148硬件結(jié)構(gòu)圖。
[0021]圖2.DM8148中鏈路文件流程圖。
[0022]圖3.運動目標(biāo)檢測算法整體流程圖。
【具體實施方式】
[0023]為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面通過具體實施例和附圖,對本發(fā)明做進一步說明。
[0024]本發(fā)明針對安全智能監(jiān)控中的運動目標(biāo)檢測與跟蹤技術(shù),提供了一種基于DM8148開發(fā)板的運動目標(biāo)檢測跟蹤方法和裝置,通過DM8148攝像頭采集視頻圖像信息,然后利用DSP核對圖像信息進行處理,來實現(xiàn)對運動目標(biāo),如行人、車輛等的檢測,對采集到的視頻幀信息進行運動目標(biāo)檢測處理,此處理主要集中在DM8148的DSP核中進行。通過對檢測目標(biāo)分析,提取其外形特征(如長寬比、面積等),可以做特定目標(biāo)的檢測。
[0025]圖1描述了 DM8148的硬件整體結(jié)構(gòu)圖,DM8148是四核全高清開發(fā)板,其中的Cortex-A8處理器是主控核,主要用于控制和協(xié)調(diào)核間通信等;HDVPSS核主要用于視頻的采集、縮放、去噪、顯示等;HDVICP協(xié)處理器主要用于視頻信息的編解碼處理等,而DSP核則主要用于快速計算,對視頻信息進行特定的分析、運算處理等。
[0026]對于DM8148開發(fā)板上的運動目標(biāo)檢測與跟蹤算法的開發(fā),主要有兩個方案。其一,直接在DM8148軟件平臺的正確位置處,實現(xiàn)運動目標(biāo)檢測算法,然后調(diào)用算法中的函數(shù)即可。比如直接用標(biāo)準(zhǔn)的C語言實現(xiàn)算法,然后將其添加在DM8148開發(fā)軟件平臺的合理位置處,并正確地調(diào)用,然后針對出現(xiàn)地問題進行調(diào)試,測試等。其二,將運動目標(biāo)檢測算法保存成與DSP核相一致的庫,然后在DM8148平臺中調(diào)用庫函數(shù),從而達到同樣的效果。比如利用CCS (Code Composer Stud1)集成開發(fā)環(huán)境,將寫好的算法打包成與DM8148的C64x的DSP相對應(yīng)的庫文件,然后將生成的庫文件和頭文件放在DM8148開發(fā)軟件平臺的正確位置,通過修改其中的Makefile文件,調(diào)用頭文件中的算法函數(shù),來成功實現(xiàn)算法開發(fā)。由于第二種算法與第一種方法相比,調(diào)試與修改算法較麻煩,所以本發(fā)明主要采用的是第一種方法。
[0027]圖2描述在DM8148中做運動目標(biāo)檢測的整體鏈路文件流程,其中不同核之間的通信,是通過A8核來協(xié)調(diào)和處理的。圖3描述了在DM8148的DSP核中,做運動目標(biāo)檢測的算法流程。DSP核中的詳細(xì)處理方案如下:先利用幀間差分法(兩幀)將前后背景分離;然后對處理后的視頻信息進行Sobel邊緣檢測,進一步分離前后背景;再利用圖像形態(tài)學(xué)處理方法,對分離的圖像信息進行去噪、去空洞等處理;最后利用連通域分