本發(fā)明涉及低質(zhì)量視頻中的運(yùn)動目標(biāo)跟蹤的技術(shù)領(lǐng)域。
背景技術(shù):
視頻監(jiān)控系統(tǒng)實(shí)現(xiàn)網(wǎng)絡(luò)化與智能化是目前安防領(lǐng)域的主流研究方向。隨著人工智能技術(shù)的發(fā)展以及人力資源成本的提升,市場對視頻監(jiān)控系統(tǒng)的智能化要求的呼聲日益高漲。按視頻智能化算法計(jì)算結(jié)點(diǎn)的部署位置分,智能視頻監(jiān)控系統(tǒng)可分為前端智能化視頻監(jiān)控系統(tǒng)和服務(wù)器端智能化視頻監(jiān)控系統(tǒng)。前端智能化視頻監(jiān)控系統(tǒng)將智能化算法嵌入到前端視頻圖像采集設(shè)備中,直接對圖像傳感器采集的視頻圖像進(jìn)行智能分析,這種系統(tǒng)算法精度高,市場上較為常見。服務(wù)器端智能化視頻系統(tǒng)需要把視頻流通過網(wǎng)絡(luò)傳輸?shù)胶笈_服務(wù)器,后臺服務(wù)器上部署智能化算法能夠?qū)σ曨l分析,這種系統(tǒng)又可根據(jù)傳輸視頻流的網(wǎng)絡(luò)分為專網(wǎng)服務(wù)端視頻智能監(jiān)控系統(tǒng)和共網(wǎng)服務(wù)端視頻智能監(jiān)控系統(tǒng)。專網(wǎng)服務(wù)端視頻智能監(jiān)控系統(tǒng)專門為視頻傳輸部署了高帶寬的光纖網(wǎng)絡(luò),保證服務(wù)器可以獲得高品質(zhì)的視頻流進(jìn)行智能算法分析。這類系統(tǒng)常用于金融、商場、機(jī)場、等重要安防領(lǐng)域。共網(wǎng)服務(wù)端視頻智能監(jiān)控系統(tǒng)通過對視頻圖像進(jìn)行圖像壓縮、減少幀率和視頻編碼等方法,獲得較低的碼率,通過公網(wǎng)把低碼率的視頻流傳送到后臺服務(wù)器端進(jìn)行智能分析。這類系統(tǒng)主要用于零售商店、連鎖商超和個(gè)人家庭,這類系統(tǒng)的特點(diǎn)是成本低,對已有視頻監(jiān)控系統(tǒng)無需更換前端圖像采集硬件低成本升級為智能視頻監(jiān)控系統(tǒng)。
現(xiàn)有的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)工作原理是:通過監(jiān)控現(xiàn)場的前端攝像頭采集監(jiān)控現(xiàn)場原始視頻,對原始視頻圖像序列進(jìn)行壓縮編碼生成適合Internet傳輸?shù)拇a流,運(yùn)用網(wǎng)絡(luò)傳輸技術(shù)把視頻碼流傳送到監(jiān)控中心或視頻服務(wù)器中心,最后實(shí)現(xiàn)視頻流的存儲控制、解碼顯示等操作。視頻圖像壓縮、編碼、傳輸、解碼等各個(gè)操作或過程都會不同程度地丟棄或增加或修改視頻圖像信息。因此,網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)服務(wù)器讀取的視頻圖像經(jīng)常發(fā)生圖像模糊、噪點(diǎn)、雪化、亮度異常、目標(biāo)變化、圖面跳動等現(xiàn)象。前兩者模型相關(guān)參數(shù)或閾值固定,不能得到自適應(yīng);多高斯混合分布具有一定的自適應(yīng)性,但仍不能滿足這種低質(zhì)量視頻的需求;后兩種模型計(jì)算量和內(nèi)存占用量大,影響算法的實(shí)時(shí)性。
2011年O.BARNICH等人提出的VIBE(Visual Background Extractor)模型,該模型對每個(gè)圖像像素點(diǎn)維護(hù)一個(gè)顏色空間樣本集,不需要估計(jì)統(tǒng)計(jì)特征如均值、方差和概率密度函數(shù)。同時(shí),像素點(diǎn)模型的更新還考慮了其領(lǐng)域像素點(diǎn)的影響,模型簡單,計(jì)算量少。不足的是,模型對背景與前景目標(biāo)顏色差別較大的像素點(diǎn)具用很好的區(qū)分性,但顏色較近的兩個(gè)像素點(diǎn)無法區(qū)分。另外,模型只輸出了前景圖像,并沒有輸出背景圖像。
VIBE 算法對圖像中每個(gè)像素點(diǎn),維護(hù)一個(gè)樣本集合SM(x)={v1,v2,..vn},其中x是該像素點(diǎn)位置,v表示顏色空間的顏色矢量,如RGB空間的(r,g,b),灰度空間的亮度值。VIBE前景檢測原理如圖1所示,檢測當(dāng)前圖像的一個(gè)像素點(diǎn)v(x)是否為前景點(diǎn),二維顏色空間中,假設(shè)在二維顏色空間,以v(x)為圓心,R為半徑生成一個(gè)新顏色矢量集合SR(v(x))。q=|SM(x)∩SR(v(x))|,q表示集合SM(x)與集合SR(v(x))交集的元素?cái)?shù)量。如果q>=qmin,則該點(diǎn)為背景像素點(diǎn),否則為前景點(diǎn)。當(dāng)v(x)檢測為背景點(diǎn)時(shí)對該像素點(diǎn)對應(yīng)的背景模型地進(jìn)更新,在整數(shù)區(qū)間(0,T]中,隨機(jī)選擇一個(gè)整型數(shù),如果該整型數(shù)為零,即獲得背景更新機(jī)會,否則放棄更新該像素點(diǎn)對的樣本集合SM(x)。獲得更新機(jī)會后,用v(x)隨機(jī)替換集合SM(x)中的一個(gè)元素,最后仍在整數(shù)區(qū)間(0,T]中,隨機(jī)選擇一個(gè)整型數(shù),如果該整型數(shù)為零,即獲得鄰域更新機(jī)會,否則放棄更新該像素點(diǎn)的鄰域像素點(diǎn)的樣本集合。獲得更新鄰域像素點(diǎn)樣本集合的機(jī)會后,隨機(jī)得從該像素點(diǎn)的8或4鄰域中選擇一個(gè)鄰域像素點(diǎn)v(xn),用v(x)隨機(jī)替換v(xn)對應(yīng)的背景模型樣本集合SM(xn)中的一個(gè)元素。
VIBE算法閾值R和閾值qmin決定了當(dāng)前像素點(diǎn)是否為前景點(diǎn)的關(guān)鍵參數(shù)。如果當(dāng)前像素值與對應(yīng)的背景樣本集SM中的元素的顏色(灰度值)之差小于R的數(shù)目大于等于qmin時(shí),該像素為背景像素。然而,在算法中閾值R是一個(gè)全局常量,對局部背景較暗或較亮條件下,常常會丟失目標(biāo)。
在區(qū)別當(dāng)前像素點(diǎn)是否為前景點(diǎn)時(shí),對所有像素的較比閾值R都是固定的,這會造與背景像素顏色較近的前景目標(biāo)丟失。實(shí)際上人眼對顏色的區(qū)分能力是與背景顏色的亮度值相關(guān)的。韋伯-費(fèi)克納經(jīng)實(shí)驗(yàn)發(fā)現(xiàn)人眼的主觀亮度感覺和客觀亮度成對數(shù)線性關(guān)系如式1所示,式(1)也叫韋伯-費(fèi)克納法則(Weber-Fechner)。利用韋伯比與人眼對高亮度背景和低亮度背景中區(qū)別能力低的特征計(jì)算出灰度值與人眼區(qū)分能力的關(guān)系如圖4所示。因此,可以用背景像素值對應(yīng)的灰度區(qū)別值來代替R。背景像素灰度值不同,其比較閾值也不同。
S=klgI+k0 (1)
式中S為人眼主觀亮度,I為客觀亮度,k,k0是常數(shù)。對式(1)中I求導(dǎo)得到式(2)
Δs=kΔI/I (2)
式(2)中,ΔI/I是相對人眼辨別門限稱為韋伯比,描述了亮度與人眼辨別能力的關(guān)系。在圖像表示過程中,亮度信息可以轉(zhuǎn)化為灰度信息。圖2 人眼分辨能力與圖像灰度級[0,255]的關(guān)系,從圖中可以看到灰度值從32-192之人眼的分辨能力較強(qiáng),可區(qū)別出2灰度級別;灰度值在0,255附近人眼分辨別能力較弱,只能區(qū)分3個(gè)灰度級別。從人眼這個(gè)屬性上看,VIBE算法選擇全局閾值R時(shí),要在32-192、0-32、192-255三個(gè)區(qū)間中都要檢測前景像素點(diǎn),因此閾值R取值過大,在前景點(diǎn)檢測時(shí),就會出現(xiàn)目標(biāo)檢測不完整的問題。
VIBE背景模型輸出灰度背景圖像和二值前景圖像。前景圖像不僅包括運(yùn)動目標(biāo),而且還有其他噪聲,如強(qiáng)光、陰影、亮斑等。這些噪聲的存在會大大降低目標(biāo)分割與后繼的目標(biāo)跟蹤的精度。其中陰影會使目標(biāo)區(qū)域擴(kuò)展,有時(shí)甚至?xí)苟鄠€(gè)目標(biāo)連接在一起,對目標(biāo)分割造成困難。因此,首先要對陰影圖像進(jìn)行檢測。陰影圖像的特征,位于陰影區(qū)域的像素點(diǎn)的灰度值具有比背景圖像亮度略低的特征。其次,由于強(qiáng)光如車燈、陽光束射入監(jiān)控場景等形成的前景圖像塊,具有狹長的特征;最后由于雪化和圖像跳動會生成亮斑,亮斑圖像塊是一個(gè)孤立的圖像塊。
由于網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)后臺服務(wù)器端讀取的視頻質(zhì)量較低,常用的目標(biāo)跟蹤特征如紋理、角點(diǎn)、shift或surf特征都變得不穩(wěn)定,特征容易丟失。輪廓特征適用于剛性目標(biāo)的跟蹤,適用范圍有限。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提出一種簡單且適應(yīng)能力強(qiáng)的位置、位移速度、顏色直方圖對目標(biāo)進(jìn)行跟蹤的方法。
本發(fā)明的具體技術(shù)方案是:一種視頻中的目標(biāo)跟蹤方法,目標(biāo)跟蹤過程中會出現(xiàn)三種常見現(xiàn)象:1、單目標(biāo)跟蹤,從出現(xiàn)到消失,始終為一個(gè)目標(biāo);2、目標(biāo)分離,一開始為一個(gè)目標(biāo),某時(shí)分離成兩個(gè)或多個(gè)目標(biāo);3、目標(biāo)合并,一開始有兩個(gè)或多個(gè)目標(biāo),某時(shí)合并成一個(gè)目標(biāo)。第一種現(xiàn)象,在一定距離的范圍內(nèi),檢測出的只有一個(gè)目標(biāo)blob與跟蹤列表中的某個(gè)tracker距離較近,且再沒有其他的blob和tracker,這種情況直接用blob更新traker的狀態(tài)與預(yù)測器。第二種現(xiàn)象,跟蹤列表中某個(gè)tracker在一定距離內(nèi),有兩個(gè)或多blob,其中有一個(gè)blob與tracker較近,至少有一個(gè)blob除了這個(gè)tracker外,沒有匹配的,則這個(gè)blob為分離目標(biāo),復(fù)制traker成為新的跟蹤單元,并用這個(gè)blob更新,新生成的traker的狀態(tài)。第三種現(xiàn)象,在一定的距離范圍內(nèi),一個(gè)blob,有兩個(gè)或多個(gè)未更新的trakcer,用這個(gè)blob和各個(gè)tracker的預(yù)測器生成的blob交集生成一個(gè)新blob,用這個(gè)新blob更新tracker的狀態(tài)。當(dāng)每個(gè)tracker離開畫面或多次未更新時(shí),跟蹤結(jié)束,輸出路徑。
本文提出的運(yùn)動目標(biāo)檢測和跟蹤算法就是專門針對共網(wǎng)服務(wù)端智能視頻監(jiān)控系統(tǒng)的。系統(tǒng)通過共網(wǎng)Internet進(jìn)行視頻傳輸。因此,系統(tǒng)在服務(wù)器端輸出的視頻具有低分辨率、低幀率、低信噪比、場景復(fù)雜等特征。本文根據(jù)視頻特征首先采用魯棒性較好的的背景模型生成背景和前景圖像;然后陰影檢測、亮斑檢測等方法濾除噪聲,分割出目標(biāo)圖像塊;然后再用適應(yīng)性強(qiáng)的位置、速度、灰度直方圖等統(tǒng)計(jì)特征對目標(biāo)跟蹤;最后,在實(shí)際項(xiàng)目中對算法進(jìn)行驗(yàn)證,算法對多種場景都具有較好的適應(yīng)能力。
附圖說明
圖1.VIBE前景檢測原理圖。
圖2 人眼對灰度的分辨能力。
圖3 前景檢測與背景示意圖。
圖4 陰影檢測流程圖。
圖5目標(biāo)分割示意圖。
圖6 運(yùn)動目標(biāo)跟蹤示意圖。
具體實(shí)施方式
一種可生成背景圖像,增加對較近灰度區(qū)分能力的視頻前景檢測方法。
視頻圖像經(jīng)壓縮、編碼、公網(wǎng)傳輸和解碼等過程,會引入大量圖像像素值的跳動噪聲。這些跳動導(dǎo)致局部圖像的R增加。根據(jù)圖2人眼分辨能力與圖像灰度級的關(guān)系,可以將灰度區(qū)間分為5個(gè)區(qū)間,分別為[0,32)、[32,64)、 [64,128)、 [128,192) 、[192,256)R值用Rn表示。Rn的取值為所處的區(qū)間人眼辨別的門限值、抑制跳動噪聲閾值Hnoise有關(guān)。關(guān)系式如式(3)所示。
Rn=kΔs(n)+ Hnoise (3)
其中,n為灰度值取值[0,255]; k是灰度門限的系統(tǒng),取值[2,4],一般取3; Hnoise是各灰度區(qū)間中的灰度值跳動噪聲閾值。
抑制跳動噪聲閾值Hnoise,可以在沒有運(yùn)動目標(biāo)時(shí),背景像素灰度值在某一區(qū)間如[64,128)中,先求背景像素點(diǎn)灰度值與當(dāng)前圖像對應(yīng)的灰度值差的絕對值,然后,統(tǒng)計(jì)80%的絕對值小于正數(shù)Φ,Hnoise=Φ。
VIBE模型生成背景圖像,當(dāng)前像素v(x)與對像的SM(x)集合的元素比較時(shí),計(jì)算參與比較元素的均值vb(x); 如果v(x)為背景點(diǎn),用v(x)替換背景圖像對應(yīng)點(diǎn)的灰度值,否則用vb(x)替換背景圖像中對應(yīng)點(diǎn)的灰度值。
圖3中第一列為當(dāng)前圖像,第二列為合成的背景圖像,第三列為原始VIBE算法,R=25時(shí)的前景,第三列為改進(jìn)后的VIBE算法,R被Rn替換后,檢測出的前景目標(biāo)。在背景與前景目標(biāo)灰度較近的區(qū)域,改進(jìn)后的算法具有顯著的檢測能力。
目標(biāo)分割:
VIBE背景模型輸出灰度背景圖像和二值前景圖像。前景圖像不僅包括運(yùn)動目標(biāo),而且還有其他噪聲,如強(qiáng)光、陰影、亮斑等。這些噪聲的存在會大大降低目標(biāo)分割與后繼的目標(biāo)跟蹤的精度。其中陰影會使目標(biāo)區(qū)域擴(kuò)展,有時(shí)甚至?xí)苟鄠€(gè)目標(biāo)連接在一起,對目標(biāo)分割造成困難。因此,首先要對陰影圖像進(jìn)行檢測。陰影圖像的特征,位于陰影區(qū)域的像素點(diǎn)的灰度值具有比背景圖像亮度略低的特征。其次,由于強(qiáng)光如車燈、陽光束射入監(jiān)控場景等形成的前景圖像塊,具有狹長的特征;最后由于雪化和圖像跳動會生成亮斑,亮斑圖像塊是一個(gè)孤立的圖像塊。
前景中的陰影圖像是由運(yùn)動目標(biāo)遮擋部分光線造成的,他與光線的強(qiáng)度和背景面反射光線屬性相關(guān)。陰影噪聲導(dǎo)致目標(biāo)分割正確率大幅下降,本文采用圖4所示的陰影檢測方法,消除背景圖像對目標(biāo)分割的影響。
一種視頻陰影檢測方法,采用VIBE模型方法,關(guān)系式如式(4)所示:
(4)
其中,x為像素點(diǎn)在圖像中的坐標(biāo)位置,vf(x)為前景圖像灰度值,vb(x)為背景圖像灰度值,v(x)為當(dāng)前圖像灰度值,vs(x)為1表示x點(diǎn)可能是陰影圖像塊中的一點(diǎn),否則,x點(diǎn)不為陰影圖像塊中的點(diǎn),0<α<β<1,兩個(gè)閾值。
當(dāng)像素點(diǎn)x的前景vf(x)、背景vb(x)、當(dāng)前v(x)圖像灰度值,滿足式(4)時(shí),以x為中心,分別從背景圖像和當(dāng)前圖像中截取16X16的圖像塊,統(tǒng)計(jì)圖像塊中0度,45度,90度,135度方向的歸一化差分值,每個(gè)差分值[0,25),[0.25-0.6),[0.6-1],分為三類,共形成兩個(gè)3x4個(gè)bin的差分特征直方圖,背景圖像塊差分直方圖pbbin[12]和當(dāng)前圖像塊差分直方圖pcbin[12],然后計(jì)算背景圖像塊差分直方圖pbbin[12]和當(dāng)前圖像塊差分直方圖pcbin[12]的相關(guān)性,相關(guān)系數(shù)大于0.8時(shí),當(dāng)前x點(diǎn)為陰影像素點(diǎn),反之亦然;修訂α,β的值,統(tǒng)計(jì)陰影像素點(diǎn)所對背景與當(dāng)前圖像的歸一化差值t,與陰影像素點(diǎn)數(shù)的統(tǒng)計(jì)直方圖ptbin[50],計(jì)算ptbin []中其包含的各個(gè)bin之和最大的波峰,波峰左則第一個(gè)bin的值大于平均-0.3*方差,處對應(yīng)修訂后的α[n],波峰右則第一個(gè)大于均值-0.3*方處對應(yīng)修訂后的β[n]。求多或(100)組α和β,最現(xiàn)頻次最多的或α[n]排序后的中值為修訂后的α。 β同理。由于算法增加了α,β的修訂部分,使得初始α,β的取值要求降低,只要取一個(gè)大概范圍即可,增加了算法的魯棒性。
對除去陰影的前景圖像,求圖像塊的輪闊,如圖5所示,a1,b1為原始圖,a2,b2為VIBE背景檢測圖,a3,b3為滿足式(4)的疑似陰影圖,a4,b4為陰影的圖。在圖a4中左上角為孤立的或狹長的圖像塊,右上角為一個(gè)斑點(diǎn),圖a4,b4中用矩形框標(biāo)記出目標(biāo)blob。形成目標(biāo)圖像。
目標(biāo)跟蹤:
由于網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)后臺服務(wù)器端讀取的視頻質(zhì)量較低,常用的目標(biāo)跟蹤特征如紋理、角點(diǎn)、shift或surf特征都變得不穩(wěn)定,特征容易丟失。輪廓特征適用于剛性目標(biāo)的跟蹤,適用范圍有限。
本發(fā)明的簡單且適應(yīng)能力強(qiáng)的位置、位移速度、顏色直方圖對目標(biāo)進(jìn)行跟蹤的方法。
目標(biāo)跟蹤過程中會出現(xiàn)三種常見現(xiàn)象:1、單目標(biāo)跟蹤,從出現(xiàn)到消失,始終為一個(gè)目標(biāo);2、目標(biāo)分離,一開始為一個(gè)目標(biāo),某時(shí)分離成兩個(gè)或多個(gè)目標(biāo);3、目標(biāo)合并,一開始有兩個(gè)或多個(gè)目標(biāo),某時(shí)合并成一個(gè)目標(biāo)。第一種現(xiàn)象,在一定距離的范圍內(nèi),檢測出的只有一個(gè)目標(biāo)blob與跟蹤列表中的某個(gè)tracker距離較近,且再沒有其他的blob和tracker,這種情況直接用blob更新traker的狀態(tài)與預(yù)測器。第二種現(xiàn)象,跟蹤列表中某個(gè)tracker在一定距離內(nèi),有兩個(gè)或多blob,其中有一個(gè)blob與tracker較近,至少有一個(gè)blob除了這個(gè)tracker外,沒有匹配的,則這個(gè)blob為分離目標(biāo),復(fù)制traker成為新的跟蹤單元,并用這個(gè)blob更新,新生成的traker的狀態(tài)。第三種現(xiàn)象,在一定的距離范圍內(nèi),一個(gè)blob,有兩個(gè)或多個(gè)未更新的trakcer,用這個(gè)blob和各個(gè)tracker的預(yù)測器生成的blob交集生成一個(gè)新blob,用這個(gè)新blob更新tracker的狀態(tài)。當(dāng)每個(gè)tracker離開畫面或多次未更新時(shí),跟蹤結(jié)束,輸出路徑。
結(jié)果分析:
用分辨率為CIF(352X288)、最大幀率為10FPS的實(shí)際監(jiān)控系統(tǒng)中的視頻對算法測試。從視頻監(jiān)控系統(tǒng)服務(wù)器上讀取多個(gè)視頻場景的視頻圖像序列測試本文算法,測試結(jié)果如下圖6所示。圖6中scene1室內(nèi)場景,對進(jìn)出場景的行人進(jìn)行跟蹤。α,β初始參數(shù)分別為0.02和0.85,經(jīng)100幀后,α,β被分別修訂為0.21和0.42;scene2是室外場景,對行室的車輛進(jìn)行跟蹤,α,β初始參數(shù)不變?nèi)匀环謩e為0.02和0.85,100幀后,α,β被分別修訂為0.52和0.72 。并且算法在實(shí)際項(xiàng)目如客流統(tǒng)計(jì),視頻摘要等項(xiàng)目中進(jìn)行了應(yīng)用。
結(jié)論:
采用改進(jìn)的VIBE背景模型,在原由計(jì)算量和抗擾動能力的基礎(chǔ)上,增加了在較亮、較暗背景中目標(biāo)的區(qū)分能力;具有自修訂閾值范圍的陰影檢測算法,在實(shí)現(xiàn)項(xiàng)目中根據(jù)場景光線亮度信息,自動動態(tài)的設(shè)置一個(gè)較大的預(yù)設(shè)值范圍,算法運(yùn)行一段時(shí)間后,會自動修訂到量精細(xì)的范圍內(nèi);目標(biāo)跟蹤主要以位置、速度、大小信息以及局部顏色統(tǒng)計(jì)信息對目標(biāo)進(jìn)行跟蹤,減少對紋理、興趣點(diǎn)等高級特征的依賴,增加了目標(biāo)合并,分離檢測機(jī)制有效解決短時(shí)間內(nèi)目標(biāo)遮擋問題,算法在低質(zhì)量網(wǎng)絡(luò)視頻中可以穩(wěn)定的跟蹤目標(biāo)。在實(shí)際IP網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)智能應(yīng)用算法表現(xiàn)出較強(qiáng)的適應(yīng)能力、較高的魯棒性。