宋 宇, 李 嵩, 游海龍, 翁新武
(長(zhǎng)春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,吉林 長(zhǎng)春 130012)
動(dòng)態(tài)背景下目標(biāo)檢測(cè)技術(shù)是機(jī)器視覺(jué)領(lǐng)域中一個(gè)非常重要的課題,同時(shí)也是機(jī)器視覺(jué)系統(tǒng)關(guān)鍵的底層技術(shù),目的是通過(guò)運(yùn)用機(jī)器視覺(jué)和圖像處理等理論方法從運(yùn)動(dòng)的背景圖像中提取有興趣的目標(biāo),更進(jìn)一步對(duì)興趣目標(biāo)的位置信息和姿態(tài)信息實(shí)現(xiàn)快速實(shí)時(shí)的檢測(cè)[1]。
在通常的視頻圖像序列中,視頻圖像一般由前景圖像和背景圖像組成,其中的攝像機(jī)自身位置參數(shù)變化導(dǎo)致整個(gè)圖像變化可以看做是背景圖像運(yùn)動(dòng),即所謂的全局運(yùn)動(dòng),而由于所拍攝場(chǎng)景中物體運(yùn)動(dòng)導(dǎo)致的圖像變化可以看作為前景圖像運(yùn)動(dòng),即所謂的局部運(yùn)動(dòng)。在實(shí)際的工程應(yīng)用中,能夠正確的在視頻序列中區(qū)分全局運(yùn)動(dòng)和局部運(yùn)動(dòng),并且分別對(duì)其進(jìn)行處理有著非常重要的意義,如視頻壓縮、場(chǎng)景分析、運(yùn)動(dòng)目標(biāo)檢測(cè)和分割等[2]。
對(duì)于航拍圖像,在目標(biāo)運(yùn)動(dòng)的同時(shí),由于攝像機(jī)運(yùn)載平臺(tái)也在運(yùn)動(dòng),造成拍攝場(chǎng)景不斷變化,從而形成動(dòng)態(tài)背景,因此需要進(jìn)行運(yùn)動(dòng)補(bǔ)償。為了彌補(bǔ)由于攝像機(jī)運(yùn)動(dòng)造成的背景全局性運(yùn)動(dòng)對(duì)以后目標(biāo)檢測(cè)和跟蹤帶來(lái)的影響,文中采取了基于特征匹配的全局運(yùn)動(dòng)估計(jì)方法。該方法的基本思路是先建立攝像機(jī)運(yùn)動(dòng)模型,通過(guò)對(duì)攝像機(jī)模型進(jìn)行全局運(yùn)動(dòng)估計(jì),得出攝像機(jī)全局運(yùn)動(dòng)參數(shù)運(yùn)用到攝像機(jī)全局運(yùn)動(dòng)補(bǔ)償之中,使得由攝像機(jī)運(yùn)動(dòng)引起的背景運(yùn)動(dòng)得到補(bǔ)償,補(bǔ)償后的圖像序列可以認(rèn)為是重建的靜態(tài)的背景序列,之后就可以用常規(guī)靜態(tài)方法來(lái)檢測(cè)出興趣目標(biāo)了。
全局運(yùn)動(dòng)估計(jì)是指對(duì)視頻序列中造成背景運(yùn)動(dòng)的攝像機(jī)運(yùn)動(dòng)進(jìn)行估計(jì),目的就是要從視頻序列中找出造成全局運(yùn)動(dòng)的攝像機(jī)運(yùn)動(dòng)規(guī)律,從而將動(dòng)態(tài)序列間的背景對(duì)準(zhǔn)消除,檢測(cè)出前景目標(biāo)[3]。不管是直接分析造成背景圖像變化的攝像機(jī)運(yùn)動(dòng)規(guī)則,還是對(duì)前景圖像進(jìn)行檢測(cè)和跟蹤,全局運(yùn)動(dòng)估計(jì)都是進(jìn)行處理的基礎(chǔ)。
為了便于對(duì)序列圖像進(jìn)行運(yùn)動(dòng)估計(jì),通常要對(duì)景物運(yùn)動(dòng)提出一些假設(shè)或者約束條件,即對(duì)運(yùn)動(dòng)建模。常用的模型包括非參數(shù)模型和參數(shù)模型兩種。非參數(shù)模型通常要對(duì)運(yùn)動(dòng)場(chǎng)施加某種約束(如平滑約束),然后進(jìn)行運(yùn)動(dòng)估計(jì)。例如光流法、塊匹配法、像素遞歸法等就屬于此類(lèi)。參數(shù)模型法是通過(guò)對(duì)景物運(yùn)動(dòng)建模來(lái)描述景物的三維運(yùn)動(dòng)與其在圖像平面上的正交或透視投影的二維運(yùn)動(dòng)之間的關(guān)系。這種模型通常用一組參數(shù)表示,運(yùn)動(dòng)估計(jì)就是估計(jì)出這些參數(shù)。全局運(yùn)動(dòng)是由攝像機(jī)的運(yùn)動(dòng)引起的,因此和攝像機(jī)的結(jié)構(gòu)與運(yùn)動(dòng)(平移、旋轉(zhuǎn)、縮放等)密切相關(guān),因此,特別適合用參數(shù)模型加以描述,于是文中采取了基于參數(shù)模型的全局運(yùn)動(dòng)估計(jì)。
一般參數(shù)模型的參數(shù)越多全局運(yùn)動(dòng)的估計(jì)越精確,但其計(jì)算量也越大,雖然八參數(shù)透視模型能夠更好地描述攝像機(jī)的運(yùn)動(dòng),但它的計(jì)算復(fù)雜度相對(duì)于六參數(shù)仿射模型更大,而且想要對(duì)連續(xù)幀間的攝像機(jī)運(yùn)動(dòng)參數(shù)進(jìn)行疊加,所造成的累積誤差也更加嚴(yán)重,不適合在航拍視頻中的實(shí)時(shí)性。當(dāng)場(chǎng)景中物體的相對(duì)深度變化和攝像機(jī)的縮放幅度都接近于0時(shí),六參數(shù)仿射模型能很好地表示攝像機(jī)的旋轉(zhuǎn)、縮放以及位移運(yùn)動(dòng)。而四參數(shù)的模型只適用于平移等簡(jiǎn)單的運(yùn)動(dòng)中,雖然計(jì)算簡(jiǎn)單但仍不能很好地適用于航拍的大環(huán)境中。所以,文中放棄一般采用的能夠精確檢測(cè)跟蹤卻缺乏實(shí)時(shí)性的八參數(shù)模型,而是選取六參數(shù)仿射模型對(duì)幀間場(chǎng)景變化的攝像機(jī)進(jìn)行建模。
攝像機(jī)的運(yùn)動(dòng)狀態(tài)主要包括平移、旋轉(zhuǎn)和縮放等,我們用仿射模型來(lái)近似表示[4]。介于準(zhǔn)確性和運(yùn)算復(fù)雜度的折衷考慮,采用六參數(shù)仿射模型,如下式:
式中:(a1,a2,a3,a4,t1,t2)——攝像機(jī)的旋轉(zhuǎn)和縮放運(yùn)動(dòng);
(t1,t2)——攝像機(jī)的平移運(yùn)動(dòng);
其中F=(q1,q2,…,qN)T,
求解六參數(shù)仿射模型只需3個(gè)匹配點(diǎn)對(duì)就可以,但求解的點(diǎn)數(shù)過(guò)少會(huì)使計(jì)算結(jié)果不準(zhǔn)確,所以文中對(duì)大量冗余匹配點(diǎn)對(duì)采用最小二乘法求解。
對(duì)于運(yùn)動(dòng)估計(jì),從光流場(chǎng)的角度可以大概分為3種情況:基于像素的方法、基于塊的方法和基于特征的方法[5]。在這些方法中,基于特征的方法是通過(guò)選取圖像中具有代表性的特征(點(diǎn)特征、直線(xiàn)特征、塊特征、輪廓特征、邊緣特征等),通過(guò)圖像的配準(zhǔn)獲取圖像間的變換關(guān)系,從而完成目標(biāo)圖像模型的參數(shù)求解?;谔卣鞯倪\(yùn)動(dòng)估計(jì)方法能更好地反映出運(yùn)動(dòng)物體的物理結(jié)構(gòu)特征,同時(shí),因?yàn)橹贿x取特征信息而非大量的圖像灰度信息,所以計(jì)算量會(huì)大大減少。
基于特征的運(yùn)動(dòng)估計(jì)方法主要有兩個(gè)步驟,即特征的提取與特征的匹配。首先對(duì)相鄰幀間圖像進(jìn)行特征提取,接著采用一定的約束條件完成特征匹配,由匹配好的特征對(duì)計(jì)算出運(yùn)動(dòng)相關(guān)參數(shù),完成運(yùn)動(dòng)估計(jì)。在這里假設(shè)同一個(gè)物體的相同特征在兩幅圖像中都能出現(xiàn)并被檢測(cè)出來(lái)。由映射關(guān)系即可計(jì)算出攝像機(jī)的運(yùn)動(dòng)參數(shù),從而將待處理圖像變換到參考圖像的坐標(biāo)系,這樣便消除了攝像機(jī)的運(yùn)動(dòng),使得兩幅圖像還原在相同的背景下,方便后續(xù)的繼續(xù)處理。
1.2.1 角點(diǎn)簡(jiǎn)介
特征提取是計(jì)算機(jī)視覺(jué)研究中一個(gè)重要的環(huán)節(jié),而且角點(diǎn)作為圖像的一個(gè)重要特征,決定了圖像中目標(biāo)的形狀,因此在目標(biāo)描述、運(yùn)動(dòng)估計(jì)、圖像匹配、識(shí)別與跟蹤等領(lǐng)域,角點(diǎn)特征都具有非常重要的意義[6]。角點(diǎn)指的是圖像中物體梯度變換比較明顯的點(diǎn)。用于角點(diǎn)檢測(cè)的方法有很多,大致可以分為兩種[7]:一種是先對(duì)圖像進(jìn)行邊緣檢測(cè),然后再提取角點(diǎn);另一種是在灰度圖像中直接提取角點(diǎn)特征。文中采用Harris算法進(jìn)行角點(diǎn)檢測(cè),Harris角點(diǎn)的提取方法有以下幾方面的優(yōu)點(diǎn):
1)Haris算子包含圖像中的每個(gè)點(diǎn),能夠提取均勻合理的特征點(diǎn);
2)因?yàn)樵贖arris算子的最后一步存在對(duì)局部極值點(diǎn)的排序操作,所以可以按需要提取特征點(diǎn)的數(shù)目;
3)由于計(jì)算公式中只有一階導(dǎo)數(shù)被涉及到,所以計(jì)算簡(jiǎn)單且對(duì)攝像機(jī)的姿態(tài)變化及噪聲、光照變化影響等不敏感。
1.2.2 角點(diǎn)算法
1988年,C.Harris和M.J.Stephens在Moravec算法[8]的基礎(chǔ)上提出了一種基于信號(hào)的點(diǎn)特征提取算子——Harris檢測(cè)算子。它的基本思想就是首先計(jì)算像素所在位置梯度構(gòu)成的自相關(guān)矩陣M,然后由矩陣M的特征值大小來(lái)檢測(cè)角點(diǎn)。通過(guò)分析M的兩個(gè)特征值,可能有以下3種結(jié)果:
1)在光滑區(qū)域,各個(gè)方向上的灰度變化很??;
2)在物體邊緣,與邊緣平行方向上灰度變化很小,但在與邊緣垂直方向上變化很大;
3)對(duì)于圖像中的角點(diǎn),則在各個(gè)方向上灰度變化值都很劇烈。
Harris算子的計(jì)算公式如下:
式中:gx,gy——分別為x和y方向上的梯度;
G(?s)——高斯模板;
R——每個(gè)像素點(diǎn)的興趣值;
det——矩陣的行列式;
trace——矩陣的跡;
k——默認(rèn)常數(shù),一般取0.04~0.06。
設(shè)定閾值τ,若R>τ,則將此像素點(diǎn)判定為角點(diǎn),反之則不是。
1.2.3 實(shí)驗(yàn)結(jié)果
Harris新模型算法和傳統(tǒng)Moravec算法提取特征點(diǎn)結(jié)果如圖1所示。
圖1 Harris新模型算法和傳統(tǒng)Moravec算法提取特征點(diǎn)結(jié)果
圖1 (a)為Harris新模型算法提取特征點(diǎn)的結(jié)果,由圖中可以看出,提取的特征點(diǎn)可靠性不錯(cuò)。圖1(b)是傳統(tǒng)的Moravec算法提取特征點(diǎn)的結(jié)果,計(jì)算過(guò)程易于實(shí)現(xiàn),但提取的特征點(diǎn)較少,有用的信息不多,抗干擾能力較弱。所以,選擇把可靠的Harris特征點(diǎn)對(duì)代入?yún)?shù)模型中,即可求得參數(shù),為接下來(lái)的補(bǔ)償工作奠定了堅(jiān)實(shí)基礎(chǔ)。
在求得最優(yōu)化運(yùn)動(dòng)模型參數(shù)后,對(duì)于全局運(yùn)動(dòng)的補(bǔ)償和運(yùn)動(dòng)對(duì)象的檢出就比較簡(jiǎn)單了。首先,用得到的最優(yōu)全局運(yùn)動(dòng)參數(shù)對(duì)第K幀進(jìn)行全局運(yùn)動(dòng)補(bǔ)償,即把(xi,yi)坐標(biāo)修改成(),然后將得到的像素灰度值再和第K+1幀的對(duì)應(yīng)位置像素fk+1=(xi,yi)進(jìn)行差分運(yùn)算,便得到了經(jīng)過(guò)全局運(yùn)動(dòng)補(bǔ)償后的差分圖像:
該差分圖像就是已經(jīng)消除了背景運(yùn)動(dòng)(全局運(yùn)動(dòng))影響的前景圖像,也就是運(yùn)動(dòng)對(duì)象。如果把運(yùn)動(dòng)對(duì)象的邊界疊加到第K+1幀圖像上,便得到了靜止背景和運(yùn)動(dòng)對(duì)象的分割結(jié)果。所以,全局運(yùn)動(dòng)的補(bǔ)償和運(yùn)動(dòng)對(duì)象檢測(cè)以及序列圖像分割是密不可分的。
由攝像機(jī)與背景的相對(duì)運(yùn)動(dòng)引起的全局運(yùn)動(dòng)增加了運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤的難度。為了消除全局運(yùn)動(dòng)的影響,采用角點(diǎn)特征匹配的方法來(lái)計(jì)算全局運(yùn)動(dòng)參量。首先計(jì)算圖像的角點(diǎn)特征,在其相鄰幀中找到與之匹配的像素點(diǎn),計(jì)算兩幀圖像中匹配的位置變化。此變化即為全局運(yùn)動(dòng)參量。用此參量對(duì)圖像進(jìn)行匹配,消除全局運(yùn)動(dòng)的影響。實(shí)驗(yàn)證明,文中所用的方法能夠很好地計(jì)算出全局運(yùn)動(dòng)參數(shù),且能實(shí)現(xiàn)實(shí)時(shí)、準(zhǔn)確的圖像補(bǔ)償。
[1] 賈云得.機(jī)器視覺(jué)[M].北京:科學(xué)出版社,2002.
[2] 王維合,王宏志,趙蘭英.運(yùn)動(dòng)目標(biāo)檢測(cè)跟蹤方法研究[J].長(zhǎng)春工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2007,28(4):411-414.
[3] Beymer D,Konolig K.Real-time tracking of multiple people using continuous detection[C]//Proc.International Conference on Computer Vision.2007.
[4] 李王偉,雷蘊(yùn)奇.基于圖像匹配的運(yùn)動(dòng)背景補(bǔ)償方法[J].福建電腦,2006(3):92-93.
[5] 黃新生,楊慶偉,王亦平,等.圖像序列運(yùn)動(dòng)估計(jì)技術(shù)綜述[J].計(jì)算機(jī)仿真,2008,25(5):180-183.
[6] 王德超,涂亞慶,張鐵楠.一種多尺度Harris角點(diǎn)檢測(cè)方法[J].計(jì) 算 機(jī) 應(yīng) 用 軟 件,2008,25(12):242-243.
[7] 范秋鳳,楊國(guó)勝,王應(yīng)軍,等.Freeman鏈碼角點(diǎn)和面積比角點(diǎn)檢測(cè)的比較研究[J].計(jì)算機(jī)工程與應(yīng)用,2005,10(15):219-121.
[8] Moravec H P.Towards automatic visual obstacle avoidance[C]//Proceeding of the 5th International Joint Conference on Artificial Intelligence.Cambridge,USA:Cambridge,MA,2005:584-589.
[9] 楊文明.時(shí)空聯(lián)合的視頻對(duì)象分割[D]:[博士學(xué)位論文].杭州:浙江大學(xué),2006.
[10] 張光玉.視頻對(duì)象分割算法研究[D]:[博士學(xué)位論文].成都:電子科技大學(xué),2006.