羅伍峙,許少秋,李偉彤,蔡 念,潘 晴
(廣東工業(yè)大學 信息工程學院,廣東 廣州 510006)
將視頻中的運動前景從背景中檢測出來是目標跟蹤、現(xiàn)場監(jiān)控、行為分析等應(yīng)用的基礎(chǔ)。目前,高斯混合模型(GMM)[1]和核密度估計模型(KDE)[2]是背景建模的兩種常用方法,兩者都考慮了每個像素的多模態(tài)特征的分布,且都能夠適應(yīng)逐漸的、局部的背景變化。其中GMM需要指定建模的高斯數(shù)個數(shù)和參數(shù),在處理復雜的場景空間變化時,性能不夠理想;KDE能夠較好地處理復雜的背景空間變化,但計算量大且需要大容量的存儲器,對硬件有較高的要求。參考文獻[3]中的算法通過簡化KDE算法,使數(shù)據(jù)運算量和數(shù)據(jù)存儲量大幅減少,但其顏色空間轉(zhuǎn)換和歐式距離的量化劃分仍比較耗時,不利于硬件實現(xiàn)。
本文通過改進參考文獻[3]中的算法進一步降低其對硬件內(nèi)存和運算速度的要求,達到與本文嵌入式硬件系統(tǒng)結(jié)合的目的。系統(tǒng)采用三星公司ARM11內(nèi)核的S3C6410[4]SoC芯片為控制核心構(gòu)建一個嵌入式視頻監(jiān)控系統(tǒng),該系統(tǒng)對操作系統(tǒng)支持良好,開發(fā)流程簡單,軟硬件可裁剪,易于在同類型平臺下的移植和升級。軟件采用簡化KDE背景建模算法對場景背景進行建模和學習,能較好地區(qū)分出運動前景和動態(tài)背景,可用于復雜的場景,在視頻監(jiān)控領(lǐng)域有較好的應(yīng)用前景。
動態(tài)背景分割系統(tǒng)由ARM11嵌入式硬件系統(tǒng)和軟件系統(tǒng)組成,系統(tǒng)結(jié)構(gòu)原理圖如圖1所示。CMOS傳感器采集的視頻輸入S3C6410片上系統(tǒng)對視頻進行處理,構(gòu)建現(xiàn)場背景模型,分割出運動前景,通過JPEG壓縮運動前景圖片,保存到SD卡進行數(shù)據(jù)存儲,以便用戶查看。
本嵌入式系統(tǒng)配置1 GB的NAND Flash固化UBOOT、內(nèi)核和文件系統(tǒng),8 GB的SD卡存儲運動前景圖片,128 MB MOBILE DDR提供系統(tǒng)內(nèi)存。CMOS攝像頭采用OmniVision公司的彩色攝像頭OV9650,分辨率達 130萬像素,具有自動曝光控制、自動增益、自動白平衡等功能,速度可達 60 f/s。
軟件系統(tǒng)采用V4L2接口構(gòu)建視頻采集系統(tǒng),完成圖像采集、簡化KDE背景建模、運動分割和圖片的保存等任務(wù)。V4L2是Linux 2.6內(nèi)核下開發(fā)視頻設(shè)備的一套API接口,有極好的靈活性和擴展性。
如圖2所示,系統(tǒng)開始后先對硬件系統(tǒng)初始化,然后通過V4L2操作視頻設(shè)備,步驟如下:
(1)打開視頻設(shè)備
fd=open(“/dev/video0”,O_RDWR);
(2)查詢設(shè)備信息
ret=ioctl(fd,VIDIOC_QUERYCAP,&caminf);(3)設(shè)置視頻捕獲格式
作業(yè)的布置要分層次,分為基礎(chǔ)題與提高題,以滿足不同學生的需求,做到因材施教,使每個學生都能揚長避短,獲得最佳的發(fā)展.
ret=ioctl(fd,VIDIOC_S_FMT,&fmt);
系統(tǒng)設(shè)置圖像采集分辨率為640×480,圖像格式為RGB565。
(4)啟動圖像采集
ret=ioctl(fd,VIDIOC_STREAMON,&type);
(5)讀取圖像數(shù)據(jù)
size=read(fd,img_buf,640×480×2)。
系統(tǒng)啟動視頻采集后,對采集的視頻幀進行簡化KDE背景建模,再對新采集的視頻幀進行簡化KDE背景建模來完成場景的運動前景分割和背景模型更新。若判斷出有運動前景出現(xiàn),則通過JPEG壓縮該幀圖片保存到SD卡。
假設(shè)x1,x2,…,xN是連續(xù)視頻中關(guān)于一個像素點A的一組強度或顏色值樣本,則可以對像素點A的任意強度或顏色值進行核密度估計得到其概率分布。如式(1)所示,給定t時刻像素點 A的強度或顏色值xt,則其核密度估計定義為:
其中,K(·)是帶寬為h的核函數(shù)。高斯函數(shù)是常用函數(shù)可表示為:
其中,d為維數(shù),σj為第 j維的帶寬,在實時視頻下,樣本的數(shù)量有限。而不同的帶寬反映不同的樣本特征。因此核函數(shù)的帶寬選擇十分重要[2],帶寬求解如下:
式(3)是一種用相鄰樣本的絕對差中位數(shù)m來計算圖像的自適應(yīng)帶寬的方法。若:
則xt所代表的點為前景,th為圖像的全局閾值。通過式(5)可知,KDE算法需對像素點A的歷史記錄x1,x2…,xN進行存儲,并對該點新增值xN+1進行核密度估計,由此加大了系統(tǒng)的儲存量和運算量,難以滿足復雜場景的實時性。
KDE的簡化可通減少樣本數(shù)量和減少模型計算次數(shù)來實現(xiàn),若仍采用復雜的KDE計算模型,在一定的場景下,計算量仍龐大。參考文獻[3]中的算法采用背景的近似概率分布模型來替代KDE的模型,不僅減少了背景建模過程中的樣本數(shù)量和樣本計算次數(shù),而且降低了模型本身的計算復雜度。原理如下,依照貝葉斯決策規(guī)則進行前景和背景的劃分,若:
則具有特征 ν=[Hν,Sν,Iν]的像素點 A 被劃分為前景。假設(shè)νk為像素點 A 的特征 ν 的量化特征,則 νk={ν:Q(ν)=νk}。觀察一段時間后,像素點A所得的N個模型可用V={νk;k=1,…,N}表示,像素特征 v屬于背景 b的后驗概率P(b|v),可以通過式(7)、(8)來估計。
將式(7)帶入式(6),則貝葉斯決策規(guī)則變?yōu)椋?/p>
[3]不同的是,本文算法采用RGB顏色特征,避免了把每個像素點從RGB空間轉(zhuǎn)到HSI空間帶來的時間和內(nèi)存方面的消耗;采用RGB空間的棋盤距離對νk進行量化劃分,避免了歐式距離平方開方的繁雜運算。具體步驟如下:
(1)像素特征描述
本算法采用像素點的RGB顏色值作為其特征值。像素點 A的當前特征 ν=[Rν,Gν,Bν], 若該點已具有 N個顏色模型,則第 k個模型的特征表示為 νk=[Rk,Gk,Bk],k=1,…,N。
(2)ν 與 νk的距離和量化劃分
ν與νk的距離采用棋盤距離,如式(10)所示:
棋盤距離 dk用來描述 ν與{νk}Nk=1的相似度,距離越大,相似度越低??赏ㄟ^設(shè)置一個閾值定義所允許的相似度差異,如果超過這個閾值,則認為當前特征值不屬于任意一個已有的模型,必須增加新模型;如果不超過這個閾值,則認為當前特征值可用與之最相似的那個模型來表示。
(3)在線學習
其中,Pt(b|νk)為觀察到的特征 νk在 t時刻的后驗概率,Pt(b|νk)初始值為 0,Mk在式(8)中賦值,Nd是兩個相同模型νk中間間隔時間出現(xiàn)的幀數(shù)。α、β分別為學習率和遺忘率,Nt、Nf分別表示模型學習與遺忘時間內(nèi)觀測到的相應(yīng)幀個數(shù)。在線學習算法表明,如果能夠觀測到某個時刻的模型,則其后驗概率將按照學習率的指數(shù)倍增加,否則按照遺忘率的指數(shù)倍減小。模型發(fā)生越頻繁,越屬于背景的一部分。
通過利用系統(tǒng)在戶外進行實驗,并比較傳統(tǒng)KDE算法、參考文獻[3]算法和本文算法的運行結(jié)果。該實驗視頻持續(xù)時間為4 h 25 min 8 s,分割結(jié)果如圖3所示??梢钥闯觯瑓⒖嘉墨I[3]算法、本文算法和傳統(tǒng)KDE算法分割出的運動物體前景基本相同,不同的是前兩者都出現(xiàn)了分布較均勻的細小背景噪聲點,這些噪聲點可通過形態(tài)學處理去除干凈,不影響運動物體的分割。其中,參考文獻[3]算法與本文算法分割結(jié)果相似,只有局部細小差異。因此,本文算法的分割結(jié)果良好,能夠清晰地辨別出運動前景。
表1統(tǒng)計出圖3實驗中對應(yīng)動態(tài)背景分割算法每個像素點的運行時間和模型個數(shù)。其中,參考文獻[3]的算法和本文算法的視頻序列中的模型最大個數(shù)分別為4、8,主要集中在隨風擺動背景樹葉處。背景模型個數(shù)越多,像素點所需運行時間越長,最大時間的消耗就發(fā)生在這些點上。如表1所示,傳統(tǒng)KDE算法平均時間是參考文獻[3]算法平均時間的35倍,左右參考文獻[3]算法平均時間是本文算法平均時間的1.5倍左右。
參考文獻[3]算法和本文算法通過對像素點的量化劃分和在線學習完成近似的核密度估計,代替?zhèn)鹘y(tǒng)KDE計算中必須考慮像素點在觀察時間段內(nèi)所有特征值這個缺點,從而大幅度降低了算法的運算復雜度。另外,只需保存已建立的模型特征值,減少對內(nèi)存容量的需求,特別是當背景比較簡單的時候這個優(yōu)點更是突出。不同的是量化后樣本粒度稍大,是背景場景的近似概率密度分布,出現(xiàn)了分布較均勻的細小背景噪聲點。本文算法和參考文獻[3]的算法相比,不用轉(zhuǎn)換顏色空間,簡化了量化劃分方式,兩者在分割結(jié)果相似的基礎(chǔ)上本文算法在速度上優(yōu)于參考文獻[3]的算法,更滿足嵌入式系統(tǒng)內(nèi)存小、主頻一般的情形。
表1 實驗數(shù)據(jù)
本文設(shè)計的基于簡化KDE的動態(tài)背景分割系統(tǒng),通過量化特征以及在線學習策略來簡化KDE背景建模算法,大幅度降低了運算的復雜度和對內(nèi)存容量的需求。實驗驗證,算法運行結(jié)果良好,速度遠高于傳統(tǒng)KDE算法和參考文獻[3]的簡化算法,滿足了需要動態(tài)背景分割的現(xiàn)場監(jiān)控應(yīng)用。
參考文獻
[1]STAFFER C,GRIMSON W E L.Adaptive background mixture models for real-time tracking[A].In:Proceedings of the Computer Society on Computer Vision and Pattern Recognition.FortCollins,USA,1999.
[2]ELGAMMAL A,DURAISWAMI R,HARWOOD D,et al.Background and foreground modeling using nonparametric kernel density estimation for visual surveillance[J].Proc.of the IEEE,2002,90(7):1151-1163.
[3]Xu Shaoqiu.Dynamic background modeling for foreground segmentation[C].8th IEEE/ACIS International Conference on Computer and Information Science(ICIS 2009),Shanghai,China,2009:599-604.
[4]Samsung Electronics Inc.S3C6410X,risc microprocessor[Z].(REV 1.10)User′s Manual 2008.