基于TW2834視頻控制器的運動檢測
引言
視頻監(jiān)控系統(tǒng)是物聯(lián)網(wǎng)安全防范系統(tǒng)的重要組成部分,它是一種防范能力較強的綜合系統(tǒng)。視頻監(jiān)控以其直觀、準(zhǔn)確、及時和信息內(nèi)容豐富而廣泛應(yīng)用于電力系統(tǒng)的變電站、交通運輸、超市防盜、軍事安全、小區(qū)安防等諸多領(lǐng)域。
視頻監(jiān)控系統(tǒng)在人們?nèi)粘I钪械膹V泛使用,大大提高了生產(chǎn)效率,同時也提高了公共環(huán)境的安全防護(hù)效果。20多年來,視頻監(jiān)控系統(tǒng)經(jīng)歷了從第一代百分之百的模擬系統(tǒng),到第二代部分?jǐn)?shù)字化的系統(tǒng),再到第三代完全數(shù)字化的系統(tǒng)以及現(xiàn)代物聯(lián)網(wǎng)技術(shù)的發(fā)展演變。其實,在第三代視頻監(jiān)控系統(tǒng)中,智能化技術(shù)就已經(jīng)滲透到視頻監(jiān)控系統(tǒng)中,如運動圖像的檢測就有利于可疑活動的判斷,從而及時告知監(jiān)控中心。因此,運動檢測的研究,對于視頻監(jiān)控系統(tǒng)的研究和完善,具有重要的參考意義和實用價值。
1運動檢測
運動分析與估計是數(shù)字視頻處理的基本內(nèi)容,也是視頻處理研究的難點和熱點。目前,用于運動檢測的方法有圖像序列差分法、塊匹配算法、光流法等。其中,圖像序列差分法分為幀間差分法和背景差分法兩種算法,本文基于TW2834的運動檢測方法就是基于背景差分法實現(xiàn)的。
2TW2834的運動參數(shù)檢測
2.1屏蔽區(qū)域和檢測區(qū)域
基于TW2834實現(xiàn)的運動檢測算法使用全屏視頻數(shù)據(jù)并檢測每個單元(以16X12像素為單元)的運動狀況。用于運動檢測的全屏視頻數(shù)據(jù)由每行704個像素組成,NTSC格式的視頻為240行,PAL格式的視頻為288行。在水平方向的起始像素個數(shù)可通過MD_ALIGN寄存器設(shè)置為0~15的某個值。每個檢測單元可以通過MD_MASK寄存器設(shè)置是否屏蔽。當(dāng)對應(yīng)單元的屏蔽位被設(shè)為1時,則該單元不做運動檢測。MD_MASK寄存器在讀模式和寫模式下有不同的功能。在寫模式下,設(shè)置MD_MASK為1,則對應(yīng)的單元不做運動檢測;在讀模式下,MD_MASK寄存器則根據(jù)MASK_MODE寄存器的不同值提供兩類信息。當(dāng)MASK_MODE=1時,MD_MASK寄存器提供檢測單元的屏蔽信息;當(dāng)MASK_MODE=0時,MD_MASK寄存器提供檢測單元的運動檢測結(jié)果,MD_MASK=1表示對應(yīng)的檢測單元有運動,否則沒有運動。
2.2靈敏度控制
運動檢測單元通過4個靈敏度參數(shù)來控制運動檢測的閾值,通過MD_LVSENS寄存器可設(shè)置亮度靈敏度,通過MD_SPSENS寄存器和MD_CELSENS寄存器可設(shè)置空間靈敏度,而通過MD_TMPSENS寄存器則可設(shè)置時間靈敏度。
內(nèi)置的運動檢測算法可通過當(dāng)前場和參考場的亮度差來判斷是否有運動發(fā)生。當(dāng)亮度差大于MD_LVSENS的值時,表示已檢測到運動。運動檢測單元的靈敏度隨MD_LVSENS值的減小而增強,但是,如果MD_LVSENS的值太小,則運動檢測模塊的抗干擾能力會減弱。
由于運動檢測僅通過亮度差來判斷,因此,抗空間隨機(jī)噪聲的能力很差。為了防止由于隨機(jī)噪聲而弓起的運動檢測錯誤,TW2834使用了空間濾波器。MD_SPSENS定義了一場視頻檢測到運動的運動檢測單元的個數(shù)。增大MD_SPSENS的值,可以增強空間隨機(jī)噪聲的抗干擾能力。每一個檢測單元有4個子單元,每個檢測單元是否檢測到運動取決于其4個子單元。MD_CELSENS定義了被檢測單元檢測到運動時的子單元檢測到運動的個數(shù)。同樣,增大MD_CELSENS的值,可以提高視頻小區(qū)域內(nèi)的抗空間隨機(jī)噪聲的能力。
時間濾波器用于濾除時間隨機(jī)噪聲引起的虛假運動,MD_TMPSENSE濾波器用于控制時間靈敏度,增大MD_TMPSENS的值可以增強抗時間隨機(jī)噪聲的能力。
2.3速度控制
運動的物體具有不同的速度,較快的運動物體在相鄰場視頻出現(xiàn)和消失的速度比較快,反之,速度則慢。由于內(nèi)置的運動檢測算法僅根據(jù)相鄰場的亮度差來判斷,因此,較快的運動物體相對比較慢的運動物體更利于運動的檢測。為了解決這個問題,MD_SPEED參數(shù)可以將用于運動檢測的相鄰場視頻增加到64場。MD_SPEED參數(shù)設(shè)置用于亮度比較的兩場視頻的間隔。因此,對于較快的運動物體,MD_SPEED需要設(shè)置得較小,而較慢的運動物體則需要設(shè)置得較大。MD_SPEED的值必須比MD_TMPSENS的值要大。另外,TW2834用1個參數(shù)控制參考場的選擇。MD_FLD寄存器是一個場的選擇參數(shù),如奇數(shù)、偶數(shù)、任何場或幀等。MD_REFFLD寄存器用于控制更新參考場的周期。MD_REFFLD=0時,當(dāng)前場與參考場的間隔始終為MD_SPEED的值,也就是說,參考場隨每場視頻的變化而更新。MD_REFFLD=0時,當(dāng)前場與參考場的關(guān)系如圖1所示。
當(dāng)MD_REFFLD=1時,參考場只是在MD_SPEED所指示的時間間隔才更新參考場。在這種情況下,TW2834可以在一定的靈敏度檢測不同速度的運動物體。MD_REFFLD=1時,當(dāng)前場與參考場的關(guān)系如圖2所示。
TW2834通過MD_STRB_EN和MD_STRB寄存器來控制參考場/幀的更新時間。MD_STRB_EN=0時,參考場/幀自動更新并保存;MD_STRB_EN=1時,參考場/幀只有當(dāng)MD_STRB=1時才能被更新和保存。
圖1MD_REFFLD=0時當(dāng)前場與參考場的關(guān)系
圖2MD_REFFLD=1時當(dāng)前場與參考場的關(guān)系
3基于TW2834的運動檢測設(shè)計
3.1基于TW2834運動檢測的硬件設(shè)計
通過微處理器與TW2834相結(jié)合的方法實現(xiàn)運動檢測,具有硬件結(jié)構(gòu)簡單、編程靈活等特點,可以根據(jù)檢測環(huán)境的變化改變單片機(jī)的控制程序,從而使系統(tǒng)具有較強的適應(yīng)性。
在利用TW2834實現(xiàn)運動檢測的系統(tǒng)中,單片機(jī)與TW2834的硬件連接電路如圖3所示。
圖3TW2834實現(xiàn)運動檢測的硬件框圖
TW2834通過NMIRQ管腳提供中斷請求。當(dāng)檢測到運動圖像時,TW2834將NMIRQ管腳的電平置低直到相應(yīng)的控制寄存器被清零。通過向中斷清除寄存器IRQCLR_NOVID、IRQCLR_MDBD的對應(yīng)位寫入高電平,可清除中斷請求。主機(jī)在清除IRQCLR_NOVID、IRQCLR_MDBD寄存器之前,可通過讀取該寄存器的值來判斷中斷請求,從而判斷是否檢測到運動圖像。如果需要屏蔽中斷請求,則可以通過IRQENA_NOVID、IRQENA_MOTION和IRQENA_BLIND寄存器屏蔽相應(yīng)的中斷請求。
3.2基于TW2834運動檢測的軟件設(shè)計
實現(xiàn)運動檢測需要對TW2834進(jìn)行運動檢測的速度、靈敏度、檢測區(qū)域及屏蔽區(qū)域等參數(shù)進(jìn)行設(shè)置。因此,運動檢測模塊分為速度控制子模塊、靈敏度控制子模塊、檢測/屏蔽區(qū)域控制子模塊、視頻檢測查詢子模塊等幾個子模塊。各子模塊的功能如下:
速度控制子模塊主要根據(jù)系統(tǒng)對運動檢測物體的初始速度要求,來設(shè)置TW2834的速度控制參數(shù),使運動檢測的速度參數(shù)適合待檢測物體的速度要求。
靈敏度控制子模塊可根據(jù)檢測系統(tǒng)對檢測目標(biāo)靈敏度的要求來設(shè)置TW2834的靈敏度參數(shù),即TW2834的時間靈敏度和空間靈敏度參數(shù)。
檢測/屏蔽區(qū)域控制子模塊用于設(shè)置運動檢測目標(biāo)的檢測區(qū)域和屏蔽區(qū)域,以選擇感興趣的檢測區(qū)域,屏蔽不關(guān)心是否運動的區(qū)域。
視頻檢測查詢子模塊:由于TW2834通過NMIRQ提出的中斷請求可能是檢測到運動或視頻丟失等原因?qū)е?,因?通過查詢相關(guān)的寄存器確定弓起中斷的原因。
在運動檢測系統(tǒng)中,TW2834的NMIRQ與單片機(jī)(本文選用SST89E516RD2單片機(jī))的P4.2相連,即與單片機(jī)的外部中斷3(INT3)相連。因此,當(dāng)TW2834向單片機(jī)發(fā)出中斷請求時,將運行外部中斷3的中斷服務(wù)子程序。在中斷服務(wù)子程序中,系統(tǒng)通過視頻檢測標(biāo)志位(mt_det)告知主系統(tǒng)TW2834提出了中斷請求。實現(xiàn)運動檢測的程序框圖如圖4所示。
圖4運動檢測的實現(xiàn)程序框圖
4基于TW2834運動檢測的優(yōu)點分析
通過對TW2834實現(xiàn)運動檢測的分析以及和其它實現(xiàn)運動檢測方法的對比,可以看出,運用TW2834實現(xiàn)運動檢測的方法具有以下優(yōu)點:
(1)實時性好。TW2834實現(xiàn)運動檢測的算法是基于背景差分的檢測算法,背景差分算法屬于圖像序列差分法。在目前用于運動檢測的算法中,圖像序列差分法具有最好的實時性。因此,運用TW2834實現(xiàn)運動檢測的方案具有實時性好的優(yōu)點。
(2)參考背景自動更新。由于利用TW2834進(jìn)行運動檢測的參考幀是當(dāng)前幀之前的某一幀,其值可以通過寄存器進(jìn)行設(shè)置,因此,利用TW2834實現(xiàn)運動檢測的方案參考背景具有自適應(yīng)性。
(3)抗噪聲能力強。TW2834可根據(jù)監(jiān)控環(huán)境的噪聲大小設(shè)置不同的靈敏度參數(shù),以適應(yīng)環(huán)境的變化。因此,環(huán)境適應(yīng)性較好,抗噪聲性能較強。
(4)可檢測不同運動速度的物體。通過速度控制參數(shù)的設(shè)置,可以使該系統(tǒng)適用于不同運動速度物體的檢測,因而克服了三幀差分法對慢速運動物體檢測困難的問題。
(5)可屏蔽不關(guān)心檢測區(qū)域。通過對檢測/屏蔽區(qū)域的控制設(shè)置,可以使該運動檢測系統(tǒng)對不關(guān)心的區(qū)域不予檢測,因而比較適用于背景區(qū)域具有某種固有運動的檢測場合。
(6)硬件電路簡單。TW2834內(nèi)部具有視頻解碼模塊,可直接輸入模擬視頻。同時,TW2834內(nèi)部也具有視頻編碼模塊,故可直接輸出模擬視頻。本方案相對于利用DSP實現(xiàn)運動檢測的方案,不需要外接視頻解碼芯片和視頻編碼芯片,因此,實現(xiàn)運動檢測具有硬件結(jié)構(gòu)簡單的特點。
(7)軟件開發(fā)簡單。本方案可通過控制TW2834的寄存器實現(xiàn)運動檢測,而不需要編寫運動檢測算法。因此,實現(xiàn)運動檢測的軟件開發(fā)比較簡單。
(8)成本低。本方案實現(xiàn)運動檢測不需要外接視頻解碼芯片和視頻編碼芯片,硬件成本低。同時,系統(tǒng)軟件編寫簡單,軟件開發(fā)費用相對較低。因此,本方案實現(xiàn)運動檢測具有開發(fā)成本低的優(yōu)點。
5結(jié)語
本文采用TW2834實現(xiàn)運動檢測的方法具有實時性好、參考背景可自動更新、硬件電路和軟件開發(fā)簡單、成本低等優(yōu)點。本文提出的運動檢測實現(xiàn)方法,對視頻監(jiān)控系統(tǒng)的進(jìn)一步完善和研究具有重要的參考價值。
20210917_6144187f0457f__基于TW2834視頻控制器的運動檢測