文丨劉 博 郭若偉 王 巍
利用AdaBoost算法解決電視節目人物面部智能檢測問題
文丨劉 博 郭若偉 王 巍
本文在對人臉面部特點分析的基礎上,比較了幾種常用的面部智能檢測方法,提出利用AdaBoost技術解決面部智能檢測的基礎問題。設計了面部智能檢測流程,并對重要人物判別機制進行了設計。
面部智能檢測; 面部特點; Adaboost; 智能監測
電視媒體作為最具影響力的大眾傳媒之一,擔負著宣傳黨的方針政策,傳達政令,引導輿論等多項社會職能。然而,發展迅猛的廣播電視業也面臨著諸多問題,如一些節目內容低俗引起了社會關注。因此,如何利用技術手段,杜絕被限制的人物出鏡,防止違規節目播出,是電視節目智能監測領域的新課題。AdaBoost算法在面部智能檢測方面的應用,恰好為電視節目人物智能監測提供可靠的技術支持。
面部包含著很多的特點信息,其中一些特點有:幾何特點、膚色特點和運動特點等。靜止圖像中的面部智能檢測主要采用幾何特點和膚色特點;電視節目中的面部智能檢測主要采用運動特點。
基于幾何特點的面部智能檢測是提取面部一些簡單的特點,然后對特點進行基于知識層面的分析[1]。基于膚色特點對于彩色的面部圖像而言。基于運動特點,可以通過比較面部或者面部區域相對背景的位置移動就可以定位面部,比如利用面部簡單的運動來定位面部。
面部智能檢測從不同的角度可以有很多種分類方法。主要思想就是對要檢測的面部進行建模,比較待檢測的區域和面部模型的匹配度,通過對匹配度的考察來得到可能存在的面部區域。下面是三種有代表性的面部智能檢測方法。幾何方法是根據人臉結構的已有信息,利用向量來代表這些特點;膚色也是面部的一個顯著的特點;統計方法是將面部智能檢測看成一般的模式識別的問題,通過判斷這個數學高維向量所在的區域屬于哪個模式即可完成對面部的檢測[2]。
面部只能檢測的主要評估指標有:誤檢率、檢測率、檢測速度以及魯棒性四個方面。誤檢率指的是將非面部窗口誤認為面部數目與圖像中檢測出的面部數值進行對比取值;檢測率指的是正確檢測出的面部數值與圖像中總面部的數值對比;檢測速度指的是面部檢測過程中消耗的時間,在檢測率較高、誤檢率較低的情況,速度越快越好;魯棒性指的是檢測系統對各種情況的適應能力,如面部姿態變化、背景噪聲干擾及面部遮擋等情況。以上的四項指標相輔相成的。
Adaboost 是一種迭代算法,通過從大量的弱分類器中選取最具有分類能力的那些組合,構成一個強分類器。其基本原理是針對不同的訓練對象調教同一個分類器(弱分類器),之后,將這些不同訓練集上的得到的分類器聯合起來,構成一個綜合分類器(強分類器)。
多級分類器的結構如圖1所示,前面一層的分類器對子窗口的圖像進行分類后,如果分類結果為“是”,那么可能包含面部的窗口就傳遞到下一個分類器,并且觸發下一個分類器進行處理,如此下去直到最后一個分類器。

圖1 多級分類器結構
目前面部智能檢測作為一個獨立的研究課題,其應用背景已經遠遠超出了面部智能檢測的范疇,面部信息處理成為基于內容的電視節目智能監測研究中的一個焦點問題。
本文設計的面部智能檢測的步驟是這樣的:首先用大量人物圖像用Adaboost算法進行訓練,得到一個AdaBoost算法形成的最終分類器,用最終分類器去區分面部和非面部;如果檢測結果為面部區域,就對檢測到的面部區域用膚色判別方法統計區域上的皮膚顏色的比例,從而判別其是否為面部圖像;經過膚色比對的驗證并確認為面部區域,接著運用特點比對進行人物判別,如果視頻人物眾多,可以優先比對重要人物的面部特點。面部智能檢測的流程如圖2所示。

圖2 面部智能檢測的流程
對各種識別算法,面部圖像的預處理和標準化是面部智能檢測一個必要的前期步驟,預處理的效果將會對后續的識別過程有非常大的影響。目前國內外針對面部智能檢測的圖像預處理多傾向于對面部的標準化,即通過面部的灰度、投影等信息確定面部邊晃,并對圖像進行剪裁和縮放,使得面部的關鍵部位在圖像中的相對位置一致。
在一些電視節目中往往會出現人物眾多的情況,而其中一些的面部角色與電視節目毫無關系,而且有些人物不知道其身份,如果探測所有的面部并加以標識無關緊要又不現實。我們把人物的范圍縮小,主要針對電視節目中的重要人物,比如國家領導人以及限制出境的人物等,這樣就能在一定程度上探測出面部并進行過濾,將無關緊要人物濾掉。判斷重要任務主要注重以下幾點:
(1)人物面部在電視節目中出現的頻率以及時間長短。一般來說,重要的人物曝光率較高,而且都會伴有重要事件出現,面部在鏡頭上持續的時間較長。根據以上特點,我們認為鏡頭出現的次數較多,持續時間較長的面部則代表著重要人物。此標準的界定與實現涉及到面部跟蹤及面部識別的問題,因為面部出現的次數需要判定面部相關性的問題,即驗證出現的面部是否是同一人,判斷持續時間需要對面部出現的開始幀與結束幀的信息,從而產生面部跟蹤報告。
(2)通過面部區域的出現位置判定人物的重要性。通過對電視節目的觀察,發現重要人物的面部一般出現在圖像的中央部位,不會出現在節目的邊界處,因此可以根據人物出現的位置來界定其人物的重要性。
(3)根據面部區域的大小來識別重要人物。電視節目中的重要人物雖然可能不是特寫鏡頭,但是面部的尺寸、在圖像所占比例也有一定特點。
本文利用Adaboost算法,設計了快速面部檢測判別流程。利用該算法,我們可以方便的在電視節目中識別出目標人員的面部特點。有助于廣電監測部門迅速、準確地獲取電視節目人物的臉部圖像,對提高監測人員的工作效率、加強廣播電視監管有重要意義。
[1] 郭志波 嚴云洋 楊靜宇.一類視頻序列中的人臉檢測與實時跟蹤算法.計算機工程與應用2007.43(28)
[2] 馮冬青 丁鍇.視頻中基于膚色模型的人臉檢測.計算機應用與軟件.2010.27(2)
(國家廣播電影電視總局哈爾濱監測臺,哈爾濱 150089)