摘 要:本文提出了一種在救援機器人中實現人臉檢測、定位和跟蹤的可行方案。首先通過攝像頭將救援機器人周圍的場景轉化成數字圖像,進行預處理后,使之成為易于檢測和定位的圖像,然后運用圖像分割技術找到感興趣的目標并進行定位,最后使用CamShift算法跟蹤運動的人臉并驅動電機轉動。
關鍵詞:機器人;人臉識別;人臉檢測與定位;人臉跟蹤;CamShift
1 引言
目前,機器人的高度智能化和自主化是機器人學中兩個重要的研究方向,隨之而來的應用也越來越廣泛。2008年北京奧運會曾使用過三種機器人:福娃機器人、翻譯機器人和安保機器人。2011年3月,里氏9.0級地震引發日本福島第一核電站發生核泄漏事故,圖1為遙控機器人“Packbot”正在福島第一核電站3號反應堆所在建筑內進行拍照、測量放射水平等工作。
1.1 救援機器人的基本功能模塊
作為救援機器人,一般有用戶控制,自主決策控制,傳感/基礎決策,運動/執行等幾個子系統組成[1],其結構如圖2所示。其中視覺系統實現對環境的實時感知,是救援機器人系統組成的重要部分。救援機器人通過攝像機等視覺傳感器獲取現場環境的二維圖像,并利用視覺處理器進行分析和解釋,讓救援機器人能夠識別物體并確定其位置。運動控制系統和執行系統遠端PC和車載PC的控制命令完成執行動作,車載PC則對各個系統進行協調和控制,并與遠端PC共同實現智能化的推理和決策。
本文提出了一種將人臉檢測、定位和跟蹤功能加入到視覺系統中的可行的模型,即通過主動攝像機從各種不同的場景中檢測出人臉的存在并確定其位置,然后驅動攝像頭做出反應。
1.2 研究的目的和意義
本研究基于救援機器人視覺系統中的人臉檢測、定位和跟蹤,但卻有著人臉識別的普遍意義[2],主要以下兩個方面:
1.2.1 促進相關學科發展
人臉檢測、定位和跟蹤問題的解決既涉及到模式識別,圖像處理、分析與理解、計算機視覺、計算機圖形學、人工智能、人機交互等計算機相關領域,也采用了認知科學、神經計算、生理學、心理學等相關專業知識。它的解決對構建這些學科領域的基礎實驗平臺,用于嘗試新方法,驗證新理論,解釋新現象非常有利。它還是一個非常好的教學平臺,通過它可以使學生將理論與實踐相結合,提高學生的動手能力、創造能力和綜合能力,符合目前國家提倡的課程改革與素質教育的要求。
1.2.2 具有巨大的應用前景
如今,需要進行身份認證的地方越來越多,如在銀行的ATM上進行金融業務時需要輸入密碼,進入自己的計算機系統則需要輸入用戶名和密碼,登錄電子郵箱時的用戶名和密碼等等。但是,目前采用的身份證、鑰匙、用戶名、密碼等方式,安全性、可靠性和方便性較差。人臉識別作為一種典型的生物特征識別技術,以其自然性、高可接受性等優點受到了人們的青睞,可應用于各行各業中,具體來說可分為如下幾類:
⑴訪問控制。在安全性要求較高的地方如政府、醫院,或某些公共場所,可以建立無門衛的門禁系統。
⑵司法應用。常見的是嫌犯(mug shot)識別,基本方法是對比目標特征和數據庫存貯特征的相似性。
⑶電子商務。在在線金融、貿易活動中,人臉識別可以提供客戶的身份認證,并保證商業活動無拒付地良性運轉。
⑷視頻監控。利用人臉識別技術,監控者可以從大街上或進入大樓、機場的人群中找到自己要找的人。
2 圖像處理
2.1 人臉檢測與定位系統的構成
人類感知外部世界是通過視覺、聽覺、觸覺和嗅覺等感覺器官,對于救援機器人,則是通過視覺系統來模擬人類視覺功能,其中大量運用了數字圖像處理、計算機圖形學等技術。救援機器人視覺系統主要包括數字圖像獲取、圖像預處理、特征提取和圖像識別等幾個功能模塊,如圖3所示。
在數字圖像獲取階段,通過光學成像和數字化將救援機器人周圍的場景轉化成數字圖像;在預處理部分,利用圖像濾波、幾何變換、像素插值等方法將數字圖像進行初步調整,使之成為易于檢測和定位的圖像;在特征提取部分,對圖像進行抽象化,從而將圖像的紋理特征、顏色特征、形狀特征[3]等提取出來;在識別部分,系統將上一步獲得的特征與數據庫中的特征進行模式匹配,從而在圖像中找到感興趣的目標并進行定位。
2.2 圖像分割方法
利用救援機器人的攝像頭,經過預處理便得到所需的圖像。怎樣從圖像中獲得我們感興趣的目標區域,是人臉檢測和定位的關鍵步驟。本文利用圖像分割技術對目標進行特征提取和參數測量,進而實現人臉檢測和定位。圖4列出來了常用的圖像分割方法。
3 人臉跟蹤和電機控制方法
3.1 人臉跟蹤算法
人臉檢測和定位完成后,得到人臉圖像區域。然后使用CamShift算法[4](Continuous Adaptive Mean-Shift,即連續自適應MeanShift算法)跟蹤人臉。CamShift算法利用目標的顏色直方圖將圖像轉化為顏色概率分布圖,初始化搜索窗口的大小和位置,然后根據上一幀得到的結果自適應調整搜索窗口的位置和大小,進而定位出當前圖像中目標的中心位置。算法分為三個階段:
3.1.1 計算色彩投影圖(反向投影)
⑴將圖像從RGB空間轉換為HSV空間,以減少光照亮度的變化對跟蹤效果的影響。
⑵由于HSV中的H分量可以表示顏色信息,因此對其作直方圖統計,直方圖代表了不同H分量取值出現的概率或者像素的個數,就是說可以計算出H分量大小為x的概率或者像素的個數,即得到了顏色概率查找表。
⑶將圖像中每個像素值用其顏色出現的概率替換,由此得到了顏色概率分布圖。
這個過程叫做反向投影,需要注意的是顏色概率分布圖是一個灰度圖像。
3.1.2 meanshift算法
meanshift算法是一種密度函數梯度估計的非參數方法,通過不斷迭代尋優找到概率分布的極值來定位目標。其過程分為4步:
⑴在顏色概率分布圖中選取搜索窗W。
⑵計算零階矩:
計算一階矩:
計算搜索窗的質心:
⑴調整搜索窗大?。簩挾葹?;長度為1.2s。
⑵移動搜索窗的中心到質心,如果移動距離大于預設的固定閾值,則重復上述2,3,4步,直到搜索窗的中心和質心間的移動距離小于預設的固定閾值,或者循環計算的次數達到某一最大值,則停止計算。
3.1.3 CamShift算法
CamShift算法就是在視頻序列的每一幀中都運用meanshift算法,并將上一幀的結果,即搜索窗的大小和中心,作為下一幀meanshift搜索窗的初始值。如此不斷迭代,就可以實現對目標的跟蹤。算法過程分4步:⑴初始化搜索窗。⑵計算搜索窗的顏色概率分布(反向投影)。⑶運行meanshift算法,獲得搜索窗新的大小和位置。⑷在下一幀視頻圖像中用第3步中的值初始化搜索窗的大小和位置,再跳轉至第2步繼續進行。
3.2 電機控制方法
本系統可以根據人臉區域的中心與圖像中心的距離,發送控制命令到伺服電機的驅動器,使攝像頭產生轉動,從而使人臉始終位于攝像頭圖像的中央位置。通過多次試驗,得到人臉在攝像頭圖像的位置與電機轉動角度之間的對于關系,并將其作為驅動電機轉動角度的映射函數。
4 結束語
本文提出了一種在救援機器人中實現人臉檢測、定位和跟蹤的可行方案。介紹了人臉檢測、定位的關鍵技術和人臉跟蹤算法。此思想可以加以推廣和移植,如應用于復雜環境下障礙物的識別、采摘機器人的果實識別、家用機器人動態手勢的識別等等。
[參考文獻]
[1]Hao Zhao,Zhijie Liu.Design and Implementation of Wireless Communication Subsystem in WLAN-based Rescue Robot,International Conference on Internet Technology and Applications,Wuhan,China,August 21-23,2010.
[2]何良華.人臉識別中若干關鍵技術的研究,博士后論文.同濟大學,2007.
[3]鄭秋梅,王紅霞,劉康煒.基于邊緣和顏色特征的圖像檢索技術[J].微計算機應用,2008年11月第29卷第11期.
[4]Bradski G R.Computer vision face tracking as a component of a perceptual user interface[C].Proceedings Fourth IEEE Workshop Applications of Computer Visio n. Berlin,Germany,1998:214-219.
基金項目:2013年福建省教育廳科技研究項目(JB13282)。
作者簡介:趙浩(1982-),男,碩士,助教,研究方向:模式識別,網絡通信。