《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于BF561的智能視頻監(jiān)控儀的設(shè)計(jì)
基于BF561的智能視頻監(jiān)控儀的設(shè)計(jì)
來(lái)源:電子技術(shù)應(yīng)用2010年第7期
曾 軍1, 黃 華1, 唐湘成2, 劉 怡2
1. 四川大學(xué) 電氣信息學(xué)院, 四川 成都 610065; 2.西南技術(shù)物理研究所, 四川 成都 610041
摘要: 介紹了一種基于BF561的智能視頻監(jiān)控器的設(shè)計(jì)和實(shí)現(xiàn)。給出了系統(tǒng)的總體結(jié)構(gòu)、系統(tǒng)各部分的硬件組成以及系統(tǒng)的主要算法和軟件實(shí)現(xiàn)。測(cè)試結(jié)果表明,本設(shè)計(jì)具有良好的實(shí)時(shí)性、穩(wěn)定性和準(zhǔn)確性,可用于視頻監(jiān)控業(yè)務(wù)。
中圖分類號(hào): TP37
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2010)07-0131-03
A design of intellectualized surveillance system based on BF561
ZENG Jun1, HUANG Hua1, TANG Xiang Cheng2, LIU Yi2
1. School of Electrical Engineering and Information, Sichuan University, Chengdu 610065, China;2. Southwest Institute of Technical Physics, Chengdu 610041, China
Abstract: The design and implementation of intellectualized video surveillance equipment based on BF561 platform was introduced. The system structure and the hardware of the system were introduced, then the algorithm and the software were presented. The experiment result proves that the design has better real-time performance, stability and accuracy. So that it can be used in video supervisory business.
Key words : BF561; intellectualized surveillance; target tracking

    傳統(tǒng)的監(jiān)控系統(tǒng)需要安保人員實(shí)時(shí)監(jiān)控畫面或事后回放視頻記錄進(jìn)行人工分析,不但成本高,而且效率低。目前很多視頻監(jiān)控系統(tǒng)也只是做到了網(wǎng)絡(luò)化,而且由于受網(wǎng)絡(luò)帶寬的限制,造成數(shù)據(jù)的延遲或丟失,也給監(jiān)控系統(tǒng)帶來(lái)很大的風(fēng)險(xiǎn)。針對(duì)以上問(wèn)題,本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于BF561的智能視頻監(jiān)控儀,可以與現(xiàn)有的監(jiān)控系統(tǒng)實(shí)現(xiàn)無(wú)縫連接,實(shí)現(xiàn)目標(biāo)的自動(dòng)監(jiān)控與跟蹤,有效地提高了監(jiān)控效率。
1系統(tǒng)硬件框架結(jié)構(gòu)
 由于在實(shí)時(shí)視頻處理系統(tǒng)中,底層算法的數(shù)據(jù)量大,運(yùn)算結(jié)構(gòu)相對(duì)比較簡(jiǎn)單,對(duì)速度有很高的要求。而高層處理算法控制結(jié)構(gòu)復(fù)雜,數(shù)據(jù)量較底層算法少,故本文采用FPGA+DSP的結(jié)構(gòu), 其系統(tǒng)的硬件框架如圖1所示。本設(shè)計(jì)采用ADI公司的嵌入式多媒體處理器BF561(BlackFin561)作為算法處理和控制核心,采用EP3C25F324C8對(duì)圖像進(jìn)行預(yù)處理和圖像的背景提取等算法。BF561擁有2個(gè)600 MHz的DSP內(nèi)核,每個(gè)內(nèi)核提供兩套乘法器和ALU,有專門的視頻處理硬件單元和視頻處理指令,具有豐富的DMA通道和大容量高速的SRAM。BF561采用MSA結(jié)構(gòu),可作為RISC處理器使用,也可以作為DSP使用[1]。

FPGA+DSP的結(jié)構(gòu)

1.1視頻采集和輸出模塊
   本文采用解碼芯片SAA7111將攝像頭輸出的PAL制信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。SAA7111是飛利浦公司推出的9位視頻解碼器,提供6路模擬輸入和2個(gè)增強(qiáng)型的模數(shù)轉(zhuǎn)換器。通過(guò)配置SAA7111將PAL制式的模擬基帶信號(hào)轉(zhuǎn)化為ITU-R BT656的4:2:2格式的YUV信號(hào),并將其送入FPGA中進(jìn)行預(yù)處理。經(jīng)過(guò)預(yù)處理后的圖像數(shù)據(jù)再由FPGA重新打包成BT656格式的數(shù)據(jù)送入到BF561的PPI口。具體連接圖如圖2所示。圖中,VPD[0..7]是數(shù)據(jù)輸出管腳與FPGA相連,時(shí)鐘同步信號(hào)BF561采用MDMA的方式將原始圖像信號(hào)存入SDRAM中,供視頻跟蹤算法使用。視頻輸出模塊采用飛利浦公司視頻編碼芯片SAA7105將輸出信號(hào)轉(zhuǎn)化為PAL制式的CVBS信號(hào)。標(biāo)準(zhǔn)的YUV數(shù)據(jù)從FPGA的引腳輸出,送到SAA7105的數(shù)據(jù)管腳上,場(chǎng)、水平和垂直同步信號(hào)分別接到FPGA的控制引腳上。SAA7105的參數(shù)配置都是通過(guò)FPGA產(chǎn)生I2C總線來(lái)實(shí)現(xiàn)的。

1.2 存儲(chǔ)模塊
    BF561的片上存儲(chǔ)器分為兩個(gè)部分:每個(gè)內(nèi)核各使用100 KB的專用、高速L1存儲(chǔ)器和128 KB的大容量共享L2存儲(chǔ)器。本系統(tǒng)通過(guò)EBIU接口外擴(kuò)了SDRAM和Flash兩種存儲(chǔ)器。選取2片MT48L32M16A2來(lái)構(gòu)成SDRAM存儲(chǔ)器,μClinux操作系統(tǒng)的映像、圖像處理數(shù)據(jù)和圖像處理中間結(jié)果可存儲(chǔ)在SDRAM中。系統(tǒng)擴(kuò)展了64 MB的Flash,選用S29GL064M90T芯片存放操作系統(tǒng)的Bootloader和內(nèi)核程序。
1.3 外圍接口模塊
    外圍接口模塊包括串口接口、以太網(wǎng)接口和部分通用接口等。本文主要用到串口接口和以太網(wǎng)接口。串口接口的功能是控制云臺(tái)運(yùn)動(dòng),使運(yùn)動(dòng)目標(biāo)隨時(shí)在視場(chǎng)范圍內(nèi),本文選用MAX488芯片實(shí)現(xiàn)BF561內(nèi)的UART接口的電平轉(zhuǎn)換;網(wǎng)絡(luò)接口的功能是通過(guò)系統(tǒng)的嵌入式Web服務(wù)器,實(shí)現(xiàn)智能監(jiān)控儀的遠(yuǎn)程配置、傳遞監(jiān)控參數(shù)等,采用DM9000即可滿足系統(tǒng)需要。
1.4 DSP雙核以及FPGA之間的通信
    在本系統(tǒng)中,涉及到BF561兩個(gè)核之間的通信以及BF561與FPGA之間的通信。FPGA給DSP提供圖像數(shù)據(jù)和經(jīng)過(guò)背景提取之后的二值化圖像數(shù)據(jù),DSP將繪制的波門數(shù)據(jù)傳輸?shù)紽PGA,F(xiàn)PGA將波門疊加到原始圖像后送給SAA7105H顯示。常見(jiàn)的雙核通信主要采用中斷、輪詢兩種通信方式[2]。中斷是利用2個(gè)核的中斷機(jī)制來(lái)實(shí)現(xiàn)FPGA與DSP之間的通信;輪詢是通過(guò)在雙核的共享寄存器里設(shè)置一些信號(hào)量,供雙核通信與訪問(wèn)??紤]到本系統(tǒng)的應(yīng)用條件,本文采用輪詢的通信方式,將信號(hào)量定義存放在L2空間。DSP的異步存儲(chǔ)器的地址空間映射到FPGA,通過(guò)FPGA操作數(shù)據(jù)線和地址線,即可完成FPGA與DSP之間的數(shù)據(jù)交互。
2 軟件算法實(shí)現(xiàn)
 在本設(shè)計(jì)中,A核運(yùn)行μClinux操作系統(tǒng),B核運(yùn)行視頻監(jiān)控算法。μClinux操作系統(tǒng)主要實(shí)現(xiàn)以太網(wǎng)芯片DM9000的驅(qū)動(dòng)、Flash的驅(qū)動(dòng)、嵌入式Web服務(wù)器BOA的實(shí)現(xiàn)和B核的驅(qū)動(dòng)程序。
2.1 算法
 本文實(shí)現(xiàn)的智能視頻分析儀主要用在視頻監(jiān)控中,智能視頻監(jiān)控的核心內(nèi)容之一是對(duì)特定目標(biāo)進(jìn)行自動(dòng)跟蹤。目標(biāo)跟蹤分為運(yùn)動(dòng)目標(biāo)檢測(cè)、行為識(shí)別和目標(biāo)跟蹤3個(gè)主要步驟。
 運(yùn)動(dòng)目標(biāo)檢測(cè)是從圖像序列中將變化區(qū)域從背景圖像中提取出來(lái),本文采用目前最常用的運(yùn)動(dòng)檢測(cè)算法即背景消除法。此部分算法主要在FPGA中實(shí)現(xiàn),采用基于改進(jìn)的自適應(yīng)混合高斯模型的背景建模方法[3]來(lái)得到背景圖像。為了節(jié)省存儲(chǔ)空間和提高運(yùn)算速度,在背景建模時(shí),將YUV信號(hào)轉(zhuǎn)化為圖像的灰度值。通過(guò)高斯建模得到背景圖像B及原始圖像A后,為了克服樹枝擾動(dòng)、陽(yáng)光反射等干擾,采用如下策略進(jìn)行處理:
  

    然后采用數(shù)學(xué)形態(tài)學(xué)的方法對(duì)二值化圖像C進(jìn)行處理,得到運(yùn)動(dòng)目標(biāo)的連通域,從而進(jìn)一步得出運(yùn)動(dòng)目標(biāo)的質(zhì)心、大小、位置等信息,建立目標(biāo)鏈。
    行為識(shí)別:遍歷目標(biāo)鏈的每個(gè)目標(biāo),判斷連續(xù)各幀之間運(yùn)動(dòng)目標(biāo)的質(zhì)心位移方向和距離,得出目標(biāo)的運(yùn)動(dòng)軌跡。根據(jù)設(shè)置好的規(guī)則和運(yùn)動(dòng)軌跡,判斷目標(biāo)是否滿足觸發(fā)報(bào)警的條件。
    目標(biāo)跟蹤:在許多監(jiān)控場(chǎng)景,要求攝像頭隨著運(yùn)動(dòng)目標(biāo)移動(dòng),防止目標(biāo)運(yùn)動(dòng)超出攝像頭的視場(chǎng)范圍內(nèi),從而要求云臺(tái)隨著目標(biāo)的運(yùn)動(dòng)而運(yùn)動(dòng)。在本設(shè)計(jì)中,這種情況下只能由多目標(biāo)跟蹤轉(zhuǎn)為單目標(biāo)跟蹤。目前用于圖像跟蹤的方法比較多,相關(guān)跟蹤是一種常用的、有效的和快速的目標(biāo)跟蹤方法。本文采用改進(jìn)的多模板匹配法對(duì)目標(biāo)進(jìn)行跟蹤,使用多子模板匹配[4]和二值化信息不斷修正模板的方法有效地解決了由于模板滑動(dòng)帶來(lái)的模板更新問(wèn)題;采用歸一化互相關(guān)系數(shù)度量模板的相似度;為了克服遮擋問(wèn)題和提高跟蹤的準(zhǔn)確性和實(shí)時(shí)性,采用Kalman濾波器估計(jì)目標(biāo)的運(yùn)動(dòng)狀態(tài)[5],有效地縮小了目標(biāo)的搜索范圍。目標(biāo)在單位時(shí)間內(nèi)(本文的間隔時(shí)間是3幀)其運(yùn)動(dòng)狀態(tài)變化較小,可以認(rèn)為在單位時(shí)間間隔內(nèi)目標(biāo)是做勻速運(yùn)動(dòng)的,可以建立卡爾曼濾波器模型。觀測(cè)向量為模板匹配運(yùn)算后目標(biāo)的位置,狀態(tài)向量為目標(biāo)實(shí)際位置和當(dāng)前的水平垂直速度,為了提高運(yùn)算速度,分別對(duì)水平方向位置和垂直方向位置進(jìn)行卡爾曼預(yù)測(cè)。
2.2 軟件流程
    BF561的視頻監(jiān)控處理流程如圖3所示。首先BF561收到FPGA傳來(lái)的1幀圖像,接著BF561讀取本幀圖像的二值化信息,通過(guò)腐蝕膨脹函數(shù)和取連通域函數(shù)target_mark(),得到當(dāng)前幀運(yùn)動(dòng)目標(biāo)的大小、重心和位置等信息,然后通過(guò)target_update()函數(shù)更新目標(biāo)鏈,采用基于區(qū)域的算法,判斷連續(xù)的各幀之間運(yùn)動(dòng)物體的質(zhì)心位移方向和距離,判斷目標(biāo)的狀態(tài),判斷是新目標(biāo)、原有目標(biāo)、目標(biāo)發(fā)生合并、目標(biāo)發(fā)生遮擋和目標(biāo)丟失等。完成目標(biāo)鏈的更新后,進(jìn)入規(guī)則檢測(cè)函數(shù)rule_check(),根據(jù)目標(biāo)的軌跡信息判斷目標(biāo)鏈中的目標(biāo)是否滿足報(bào)警條件,若滿足報(bào)警條件,給出各種報(bào)警信號(hào),若不滿足,則返回,等待下一次循環(huán)。通過(guò)對(duì)物體運(yùn)動(dòng)軌跡的記錄,可以實(shí)現(xiàn)入侵檢測(cè),人、車數(shù)量統(tǒng)計(jì),遺留物體檢測(cè),攝像頭非法遮擋和移位報(bào)警等功能。若要實(shí)時(shí)跟蹤目標(biāo),則進(jìn)入target_track()函數(shù),采用卡爾曼濾波器對(duì)目標(biāo)位置進(jìn)行預(yù)測(cè)和改進(jìn)的多子模板匹配算法得到目標(biāo)的實(shí)際位置,控制云臺(tái)運(yùn)動(dòng)保證目標(biāo)的連續(xù)跟蹤。實(shí)驗(yàn)結(jié)果如圖4所示,表明本設(shè)計(jì)能準(zhǔn)確、實(shí)時(shí)地跟蹤目標(biāo)。

    本設(shè)計(jì)實(shí)現(xiàn)了智能視頻監(jiān)控儀。其獨(dú)立的硬件設(shè)計(jì)結(jié)構(gòu)和豐富的接口,使本平臺(tái)不僅可用于智能化當(dāng)前監(jiān)控系統(tǒng),也可獨(dú)立構(gòu)建新的網(wǎng)絡(luò)化、智能化的監(jiān)控系統(tǒng)。
參考文獻(xiàn)
[1] Analog Device. ADSP-BF561 processor hardware refefence [EB/OL].[2008-02-05] http://www.analog.com
[2] 彭征,朱秀昌.雙核DSP BF-561上XGA視頻編碼的實(shí)現(xiàn)[J].電視技術(shù),2009,33(1):32-34.
[3] STAUFFER C, GRIMSON W. Adaptive background mixture  models for real-time tracking.In:Proc[C]. IEEE Conference on Computer Vision and Pattern Recognition, Fort Collins, Colrado,1999:246-252.
[4] 熊旭杰.圖像相關(guān)跟蹤算法的改進(jìn)研究[D].武漢:華中科技大學(xué),2007:21-32.
[5] 孫海燕,傅得勝.視頻監(jiān)控系統(tǒng)中的多目標(biāo)跟蹤技術(shù)[J].計(jì)算機(jī)應(yīng)用與軟件,2005(11):22-23.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。