摘 要:復雜環(huán)境下實時人臉跟蹤方法在視覺監(jiān)控系統(tǒng)中具有很重要的意義,但目前的跟蹤算法普遍存在目標遮擋、尺寸變化等過于敏感的不足,限制了其應用范圍。提出了一種人臉檢測、mean-shift算法與卡爾曼濾波器相結合的實時全自動人臉跟蹤算法。實驗結果表明該算法實時性很強,可以實現(xiàn)對運動人臉的快速跟蹤,同時對目標遮擋也有很好的魯棒性。
關鍵詞:人臉跟蹤;mean-shift算法;卡爾曼濾波器;目標遮擋
中圖分類號:TP391 文獻標志碼:A
文章編號:1001-3695(2008)07-2225-03
Real-time algorithm for face tracking based on mean-shift
JIANG Jian-guo,SUN Hong-yan,QI Mei-bin
(School of Computer Information, Hefei University of Technology, Hefei 230009, China)
Abstract:A real-time face tracking under complex environment has significance in visual surveillance system, but one common problem to face tracking algorithms at present is their sensitivity to temporal occlusion and scale variations, which restrict them wide application. This paper proposed a real-time automatic face tracking algorithm which combined face detection and mean-shift algorithm with Kalman filter. In the experiments, the results show the proposed algorithm can track fast moving face successfully and have better robustness of occlusion.
Key words:face tracking; mean-shift algorithm;Kalman filter; temporal occlusion
在復雜環(huán)境下對目標進行實時有效的跟蹤是計算機視覺中的關鍵技術,它涉及到圖像處理、模式識別、人工智能以及自適應控制等多領域問題的綜合。人臉是人類在社會活動中相互辨別的首要依據,提供了大量的視覺信息,如人臉識別、表情識別等。近年來,隨著可視電話、視頻會議、安全監(jiān)控、人機交互等技術的發(fā)展,迫切需要對環(huán)境中的人員進行跟蹤,所以獲得清晰的、完備的人臉圖像是視覺監(jiān)控的一個重要任務,根據人臉特征實現(xiàn)對特定人的連續(xù)跟蹤已經成為新的研究熱點。在過去的幾年中,已經有很多學者提出了不同的人臉跟蹤算法。Mean-shift算法是目前較為流行的無參數(shù)模式快速匹配算法,此算法具有計算量小,實時性好,采用核函數(shù)直方圖建模,對邊緣遮擋和背景運動均不敏感等優(yōu)點[1]。
本文通過基于膚色模型的快速人臉檢測確定初始搜索窗口的位置與大小,改善了mean-shift半自動跟蹤的缺陷,增加相似性測度相對閾值來更新模板,解決尺度變化和人臉轉動在人臉跟蹤中的影響。但是在復雜背景中,由于該算法只利用了顏色信息,對運動物體不作任何預測,抗干擾能力比較差,容易導致跟蹤失敗,需引入估計器預測運動參數(shù)。Kalman濾波是一個在最小協(xié)方差準則下的最優(yōu)估計方法,能利用實際的運動參數(shù)不斷修正未來運動狀態(tài)的估計值,提高估計的精度,兼顧實時性和穩(wěn)健性。本文結合mean-shift算法與Kalman濾波,利用Kalman濾波預測mean-shift搜索窗口中心位置,實驗驗證了此算法的有效性。
1 跟蹤算法描述
Mean-shift算法存在半自動跟蹤的缺陷,在起始跟蹤幀,需要通過手動確定搜索窗口來選擇目標。本文通過基于膚色模型的人臉檢測算法來確定起始幀搜索窗口的位置與大小實現(xiàn)自動跟蹤。首先將起始幀圖像轉換成HSV圖像,再通過H分量閾值膚色區(qū)域分割,建立膚色模型提取出人臉,自動確定初始跟蹤窗口的位置和大小,然后利用mean-shift迭代計算跟蹤窗口的新位置,并將窗口的中心位置作為Kalman濾波的測量值,校正運動目標位置,Kalman濾波器的預測結果用于設置下一幀圖像搜索窗口的中心位置。
1.1 人臉檢測定位
人臉檢測是人臉跟蹤的前提。膚色是人臉恒定特征的重要信息,不依賴于面部的細節(jié)特征,對于旋轉、表情等變化情況均適用,具有相對的穩(wěn)定性,因此膚色特征建模在人臉檢測中是最常用的一種方法[2]。在通常的光照條件下,人臉膚色會聚集在色彩空間中某個特定的區(qū)域內,通過對膚色采樣尋找膚色分布的合適閾值,就能夠將膚色區(qū)域提取出來。
HSV顏色模型就是一種與人眼的視覺特征相匹配的顏色模型。其中,H代表色調,用角度表示,其變化范圍為0~360°;S表示色飽和度,變化范圍為0~1;V為亮度,變化范圍為0~1。它通過對RGB顏色空間進行變換,使信息結構更加緊湊各個分量的獨立性增加,顏色信息丟失減少。圖1即為RGB與HSV顏色空間變換關系。
通常情況下,人臉膚色區(qū)域H值變化范圍比較集中。因此只要選擇合適的H閾值就可以迅速地檢測人臉區(qū)域。根據大量膚色H直方圖統(tǒng)計得出經驗值:H值分布在0.015~0.136的絕大部分膚色圖像代表了通常情況下的人體膚色。考慮實際情況,并使選擇的閾值具有一定的抗噪能力,選取用作膚色分割的H閾值為0.03~0.128。首先將起始幀圖像色彩空間的值轉換到HSV空間,然后提取其中的H分量做一維直方圖,根據經驗閾值進行膚色區(qū)域分割。提取出人臉區(qū)域,確定了初始目標位置和搜索窗口的初始大小,完成了目標選擇,圖2即為自拍的QCIF實驗序列通過人臉檢測初始化跟蹤窗口的結果。
在這里需要考慮H分量的取值范圍的問題,H分量的取值范圍是[0,360],為了能用一個Byte表示這個取值范圍,需要將H值作適當?shù)牧炕幚恚@里將H分量的范圍歸一化到[0,255]。
1.2 Mean-shift算法及改進
Mean-shift的核心思想是:在起始跟蹤幀計算核函數(shù)加權下的搜索窗口的直方圖分布,用同樣的方法計算當前幀候選目標的直方圖分布,用Bhattacharyya系數(shù)來描述兩個分布的相似程度,以兩個分布的相似性最大為原則,通過mean-shift向量的迭代運算,使搜索窗口沿密度增加最大的方向運動,收斂于最佳位置[3~5]。
假設通過人臉檢測獲得的跟蹤窗口中心位于x0,用直方圖分布來描述目標模板則可以表示為
q⌒u=C∑mi=1k(‖xi-x0/h‖2)δ[b(xi)-u]
其中:xi是第i個像素的坐標;k(x)是核函數(shù);h是核函數(shù)的帶寬;函數(shù)b是像素xi在直方圖中的顏色索引;C是一個標準化常量系數(shù),使得所有特征值的概率和為1。
核函數(shù)k(x)是一個凸的單調下降函數(shù),作用是給目標模板區(qū)域的像素設置權值。由于跟蹤目標受到背景和一些遮擋的影響,周邊的像素可靠性低,離中心越遠的像素分配的權值越小,此處理可以提高估計值的魯棒性,提高搜索跟蹤能力。核函數(shù)的選擇可以參考文獻[3]。
候選目標在當前幀中以y為中心,選用相同的核函數(shù)和核半徑,則候選目標模板可以描述為
q⌒u(y)=C∑mi=1k(‖(xi-y/h)‖2)δ[b(xi)-u]
其中:xi、k(x)、h、b、C的含義與目標模板相同。
通常情況下用Bhattacharyya[6]系數(shù)p⌒(y)度量候選目標分布q⌒u(y)與目標分布p⌒u的相似性:ρ⌒(y)≡ρ[p(y),q]=∑mu=1p⌒u(y)q⌒u
因此物體跟蹤可以簡化為通過mean-shift向量反復迭代,目標由當前幀y0位置不斷向y1移動,尋找使得候選目標特征p⌒u(y)與目標特征q⌒u最相似的位置。
其中:g(x)=-k′(x)是核函數(shù)的導數(shù),wi=∑mi=1q⌒u/p⌒u(y0)δ(b(xi)-u)是像素權值。
傳統(tǒng)的mean-shift算法目標模板統(tǒng)計始終選用起始幀來計算目標直方圖分布q⌒u,沒有對目標模板進行實時更新,一段時間間隔過后,候選目標模板p⌒u(y)與初始目標模板q⌒n之間就會產生偏差,容易導致目標跟蹤失敗。同時,由于核函數(shù)半徑h始終不變,無法自適應跟蹤漸變的目標。本文通過增加相似性測度ρ(y)相對變化量γ方法來更新模板,解決目標尺度變化的問題。整個跟蹤過程中,當Bhattacharyya系數(shù)的相對變化量γ超過一定閾值,說明當前候選目標與目標模板已有很大的偏差,這時重新啟動人臉檢測,根據新的跟蹤窗口的大小與位置,對初始目標分布q⌒n進行更新,以提高跟蹤的準確性,同時更新的跟蹤窗口也可以更好地適應跟蹤尺寸變化的目標。如圖3就是通過判斷相似性測度相對改變量γ來更新目標模板。
1.3 Kalman濾波
在復雜背景中當運動目標運動過快或出現(xiàn)遮擋,由于只利用顏色信息,對運動物體不作任何預測,抗干擾能力比較差,容易導致跟蹤失敗,引入二維Kalman濾波器預測窗口中心來解決這個問題。本文將第k幀mean-shift算法迭代的中心位置作為Kalman濾波器的觀測值,首先用Kalman濾波器預測k+1幀目標窗口的中心位置,作為mean-shift算法中搜索窗口的起始位置,mean-shift會在這個位置的鄰域內找到目標最優(yōu)的位置。再以這個窗口中心位置作為Kalman濾波器的觀測值,進行下一幀的預測運算。
設系統(tǒng)狀態(tài)方程:X(K)=AX(k-1)+W(k)
觀測方程:Z(k)=HX(k)+V(k)
其中:X(k)是k時刻的系統(tǒng)狀態(tài);A是系統(tǒng)狀態(tài)轉移矩陣;W(k) 表示過程噪聲,假定其服從零均值的高斯分布,且具有協(xié)方差Q;Z(k)是k時刻的測量值,H為觀測矩陣;V(k)表示測量噪聲。假定其服從零均值的高斯分布,且具有協(xié)方差R。(這里假設Q、R不隨系統(tǒng)狀態(tài)變化而變化)[7]。
跟蹤過程中由于兩幀圖像時間間隔較短,運動目標狀態(tài)變化較小,所以采用勻速運動模型用Kalman濾波器預測窗口中心位置。定義狀態(tài)向量X(k)={x(k),vx(k),y(k),vy(k)}T。其中,x(k)、vx(k)、y(k)、vy(k)分別表示目標中心x、y軸上的位置和速度。根據系統(tǒng)狀態(tài)方程和觀測方程得到狀態(tài)轉移矩陣A和觀測矩陣H為:
其中:T表示兩幀之間的時間間隔。
Kalman預測迭代過程如下:
Kalman迭代初始條件為X(1|0)、P(1|0)如下:
2 跟蹤算法步驟
a)將整個圖像設為搜索區(qū)域,采用人臉檢測自動確定跟蹤目標,初始化搜索窗口的大小和位置。
b)計算搜索窗口內目標特征的概率分布,運行mean-shift算法迭代獲得最佳搜索窗口新的位置。在這個最佳位置上通過判斷相似性測度相對改變量γ是否超出閾值決定是否重新啟動人臉檢測對模板進行更新。
c)將搜索窗口新位置作為觀測值傳遞給Kalman濾波器,運行Kalman濾波器預測下一幀目標搜索窗口的位置。
d)在下一幀視頻圖像中,用c)獲得的位置初始化搜索窗口的大小和位置,跳轉到b)繼續(xù)運行。
3 實驗結果分析
對自拍的QCIF測試序列進行實驗,圖4 是跟蹤過程中存在目標局部遮擋或完全遮擋的兩組視頻序列跟蹤結果。
第一幀用人臉檢測確定跟蹤窗口起始位置,運行mean-shift搜索候選目標,通過Kalman預測降低搜索范圍,實驗表明在發(fā)生目標跟蹤區(qū)域較大部分被遮擋的情況下,利用mean-shift算法與Kalman濾波器相結合,通過預測仍然對人臉運動進行了正確的跟蹤,增強了跟蹤的魯棒性。證明本文提出的算法是成功的。
4 結束語
通過人臉檢測實現(xiàn)運動目標全自動跟蹤,以mean-shift算法輸出的窗口中心位置為測量信號,采用Kalman濾波算法校正窗口中心位置,克服了mean-shift算法的缺陷。實驗表明,利用mean-shift與Kalman濾波結合的方式可以實時準確地跟蹤運動目標,同時可以有效地解決部分遮擋問題。此系統(tǒng)便于移植到DSP,結合控制云臺,易于擴展為全自動動態(tài)人臉跟蹤系統(tǒng)。這也是本文下一步研究的重點。
參考文獻:
[1]DORIN C, PETER M. Robust analysis of feature spaces: color image segmentation[C]//Proc of IEEE Conf on CVPR. Puerto Rico:[s.n.], 1997:750-755.
[2]FIEGUTH P,TERZOPOULOS D.Color-based tracking of heads and other mobile objects at video frame rates[C]//Proc ofIEEE Conference on CVPR. Puerto Rico:[s.n.] 1997:21-27.
[3]COMANICIU D, RAMESH V, MEER P.Real-time tracking of non-rigid objects using mean shift[C]//Proc ofIEEE Conference on CVPR.Hilton Head Island:South Carolina,2000:142-149.
[4]COMANICIU D,RAMESH V.Mean shift and optimal prediction for efficient object tracking[C]//Proc ofIEEE International Conference on Image Processing.Vancouver:[s.n.],2000:70-73.
[5]CHENG Y. Mean-shift, mode seeking and clustering [J]. IEEE Trans on Pattern Analysis and Machine Intelligence, 1995, 17(8):790-799.
[6]DJOUADI A,SNORRASON 0,GARBER F D. The quality of training-sample estimates of the Bhattacharyya coefficient[J].IEEE Trans on Pattern Analysis and Machine Intelligent, 1990, 12:92-97.
[7]KALMAN R E.A new approach to linear filtering and prediction problems [J].Trans of the ASME-Journal of Basic Engineering, 1960:35-45.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”