丁衛兵,秦會斌,董勝奎
(1.杭州電子科技大學電子信息學院,浙江杭州310018;2.南京電子技術研究所,江蘇南京210013)
一種嵌入式實時人眼定位系統實現
丁衛兵1,秦會斌1,董勝奎2
(1.杭州電子科技大學電子信息學院,浙江杭州310018;
2.南京電子技術研究所,江蘇南京210013)
眼睛的位置在視頻圖像處理過程中是一個很重要的信息。針對視頻中實時人眼定位問題,提出了一種在嵌入式設備上實時運行的人眼定位系統。人眼定位算法采用改進了的平均合成的精確濾波算法(Average of Synthetic Exact Filters,ASEF),在構建穩定的平均濾波器的同時減少了訓練圖像的數量,使得在保證準確率的同時減少了訓練時間。通過在ARM 11上移植OpenCV視覺庫和QT實現了該系統的算法設計和界面設計。在多個標準人臉圖像庫和通過攝像頭采集的視頻流上進行的實驗表明,該系統能夠準確定位人眼,滿足實時性的要求。
嵌入式系統;人眼定位;平均合成精確濾波器;OpenCV
隨著物聯網的發展,在終端設備上進行視頻采集并分析引起了人們的廣泛關注,而對視頻中人眼的實時定位可以在多種應用中使用,例如智能視頻監控設備和家庭及公司門禁系統中的人臉識別、疲勞駕駛檢測系統中的人眼狀態檢測[1]、智能手機等都應用到了人眼定位技術。
人眼特征比較明顯,本身具備對稱性,使人眼定位易于實現,目前使用比較多且成熟的人眼定位技術主要有:級聯Adaboost檢測算法[2]、AAM算法[3]和灰度積分投影算法[4]等。Adaboost算法特點是檢測效果好,運算速度快,但是算法的輸出結果僅僅有檢測框的信息,在處理特征的精準定位上性能不好,因此對眼睛的定位還要進一步處理。AAM算法通過關鍵點的定位給出人臉各個器官的位置與形狀,但是計算復雜度較高,難以在嵌入式系統上實時實現。積分投影算法具有計算量小以及尺度不變性等優點,但是一般依賴其他方法首先分割出眼睛區域,如果分割出的區域里包含眉毛或睫毛,眼睛定位結果會大受影響[4]。本文使用的相關濾波器能夠根據期望輸出來進行定義和設計,具有良好的準確率和實時性。在研究了相關濾波器的基礎上,重點研究并改進了平均合成的精確濾波ASEF[5]的方法,并在嵌入式平臺上設計實現。嵌入式系統具有成本低、功耗小、可移植操作系統、網絡功能強大、擴展性強的優點。
為了提高檢測的準的率,分別對左眼和右眼進行訓練以得到相應的濾波器。平均合成的精確濾波的原理如圖1所示,以左眼為例,首先要計算得到每幅訓練圖像的精確濾波器。fi是訓練集中的單幅人臉圖像,gi表示期望預輸出的圖像,其中的亮點位置的像素值大于其他所有位置的像素值,即表示人左眼的位置,hi是fi的精確濾波器。通過hi對fi的卷積濾波可以獲得期望輸出的圖像gi,檢查該圖像中像素最大值的坐標就是人眼的坐標。用一個中心點在(xi,yi),半徑為σ的二維高斯分布圖像來表示經過濾波得到的人眼圖像gi,gi定義為:


圖1 ASEF濾波器構建原理
根據卷積定理,兩個二維連續函數在空間域中的卷積等于其相應的兩個傅里葉變換乘積的反變換而求得。因此期望輸出圖像又可表示為:

式中,Fi、Hi分別是由fi、hi的二維傅里葉變換得到。在訓練過程中,通過手工標注訓練圖像的人眼中心點(xi,yi),可以獲得期望輸出的圖像gi(x,y),對其進行傅里葉變換得到Gi(w,v)。根據函數公式:


通過式(4)所求得的精確濾波器hi只能在檢測相對應的訓練圖像fi時能準確檢測到人眼中心像素點(xi,yi),對于其他的訓練圖像則檢測效果較低,不滿足魯棒性的要求。因此為了獲得適應性強的通用人眼濾波器,需要對得到的N個hi濾波器求平均,以適應對不同的檢測圖像都能有較高的檢測準確率的要求。由于傅里葉變換屬于線性變換,求平均的過程可以在空間域進行也可以在頻域進行,本文在頻域取平均,即將式(4)求得的所有精確濾波器H*i進行求平均:

通過上述過程可以看出,要得到穩定性強的平均濾波器需要訓練大量的圖像,使得訓練時間較長,不適合在線訓練。為了減少訓練圖像的數量,首先對式(5)進行了改進,分子分母同乘以Fi的復共軛得到:

通過式(6)可以看出,分母變為一個實數,當分母接近0或訓練的圖像數量較少時,所求得的平均濾波器檢測準確率較低。根據現有相關濾波器OTF(Optimal Tradeoff Filters)[6]和UMACE(Unconstrained Minimum Average Coleration Energy)[7]的構造原理,在分母上加上一個正則系數ε可以減少訓練圖像的數量,并使平均濾波器更加穩定。如式(7)所示:

圖2顯示了是否增加正則系數ε對訓練圖像數量的影響。實驗結果表明,增加正則系數后,在訓練圖像較少時依然可以取得較高的檢測準確率。
圖2ε對訓練圖像數量的影響
在人眼定位過程中,將待檢測的人臉圖像和ASEF通過FFT變換后在頻域進行互相關運算,如式(3)在頻域的相關運算變成了簡單的相乘計算。計算結果經過IFFT變化后只需要在輸出圖像中尋找像素值最大的點的坐標即可。計算過程主要為兩次FFT變換和一次頻域相關計算,非常簡單,可以快速定位出人眼坐標。
2.1 系統設計簡介
系統采用嵌入式ARM11的微處理器S3C6410為主要硬件開發平臺,穩定運行在667 MHz主頻以上;以Linux操作系統為軟件開發平臺,通過攝像頭采集視頻數據,圖像大小為640像素×480像素,幀率為30 fps。通過ARM11的MPEG硬件編解碼獲取每幀圖像,每幀視頻圖像經過預處理后,首先采用經典的Adaboost算法進行人臉檢測以縮小人眼定位的檢測范圍,提高時間性能。然后在檢測出的人臉區域中分別進行左眼和右眼的定位檢測。本系統的設計流程如圖3所示。

圖3 系統設計流程圖
視頻圖像在采集過程中,受到環境噪聲的干擾和光照不均勻的影響,導致了視頻質量的下降。為了提高人臉檢測的精度和速度,需要對原始圖像進行預處理,采用了預處理方法有圖像灰度變換、縮小圖像尺寸、圖像平滑、直方圖均衡化等。Adaboost算法通過把大量分類能力一般的弱分類器通過一定的方法疊加起來,構成一個分類能力很強的強分類器[8-10],具有檢測準確率高、實時性好的特點,非常適用于基于視頻的動態人臉檢測。ASEF算法也是基于由一系列弱分類器構建強分類器的思想產生的。
2.2 實驗測試及結果分析
通過在ARM11上移植OpenCV開源視覺庫,利用其提供的基本圖像處理函數接口編程實現了改進了的ASEF算法。移植QT庫編寫了簡潔的系統操作界面,實現了在線訓練、在線單人和多人眼睛定位檢測、拍照等功能。
系統在輸入不同標準人臉庫,使用ASEF算法的檢測結果如圖4所示。FERET標準人臉庫由200個人,每人7幅圖像組成;ORL標準人臉庫由40個人,每個人10幅圖像組成;Yale標準人臉庫由15個人,每人11幅圖像組成。檢測結果表明該系統能適應多種姿態、有無眼鏡、有無閉眼、多種膚色等條件。

圖4 不同人臉庫的測試結果
表1顯示了在不同的標準人臉庫中的檢測準確率和每幅圖像的平均檢測時間。

表1 不同人臉庫的測試結果
由于檢測圖像都是靜態圖像,檢測準確率相對較高,檢測準確率達到了98%以上,表明該人眼定位系統具有良好的檢測率。實驗中每幅圖像的檢測用時在16 ms左右,滿足實時性的要求。
圖5顯示了在ARM11上通過紅外攝像頭采集到的視頻中進行人眼定位的部分檢測結果,圓圈的中心點即眼睛的坐標。試驗中請了47名同學在不同的環境條件下,通過對50 000視頻幀進行測試。實驗結果表明,該系統在光照變化、多姿態、有無眼鏡等條件的變化下檢測準確率仍然達到了97.5%,人眼檢測平均耗時19.4 ms,滿足實時性的要求。

圖5 視頻檢測結果
采用基于相關濾波器的原理重點研究和改進了平均合成的精確濾波器的算法,并成功將其應用到嵌入式平臺中,試驗結果表明該系統具有較高的檢測準確率和實時性,魯棒性強,達到了實驗要求結果,并為以后功能的擴展,例如人臉識別中的姿態校正、疲勞駕駛檢測中人眼狀態檢測等奠定了基礎。
但是ASEF算法還有待改進的地方,文獻[11]和文獻[12]提出在人臉圖像在外觀、表情、姿態變化劇烈時,ASEF算法在性能上會有所下降,并各自提出了改進的方法。下一步改進的目標就是在保證實時性的同時,結合其他方法以提高本文設計的系統在多種環境的適應性。
[1]崔堅.基于眼部識別的駕駛員疲勞檢測方法[D].大連:大連海事大學,2013:25-31.
[2]Viola P,Jones M J.Robust real-time face detec-tion[J].International Journal of Computer Vision,2004,57(2):137-154
[3]Cootes T F,Edwards G,Talylor C J.Active Appearance Models[C]∥Transactions on Pattern Analysisand Machine Intelligence.[S.l.]:IEEE Press,2001,23(6):681-685.
[4]孟春寧,白晉軍,張太寧,等.基于梯度積分投影和最大期望算法的人眼定位[J].光電子·激光,2012,10,23(10):1971-1975.
[5]Bolme D S,Draper B A,Beveridge J R.Average of synthetic exact filters[C]∥Interna-tional Conference on Computer Vision and Pattern Recognition.[S.1]:IEEE Press,2009,2105-2112.
[6]Refregier P.Optimal Trade-off Filters for Noise Robustness,Sharpness of the Correlation Peak,and Horner Efficiency[J].Optics Letters,1991,16(11):829-832.
[7]Savvides M,Kumar B V K V.Efficient Design of Advanced Correlation Filters for Robust Distortion-tolerant Face Recognition[C]∥Conference on Advanced Video and Signal Based Surveillance.[S.l.]:IEEE Press,2003,45-52.
[8]張旭,李亞利,丁曉青,等.嵌入式駕駛員狀態檢測算法的實現與優化[J].自動化學報,2012,38(12):2014-2022.
[9]程如中,趙勇,戴勇,等.基于Adaboost方法的車載嵌入式疲勞駕駛預警系統[J].北京大學學報,2012,9,48(5):719-726.
[10]武楠.基于GLCM、CGA和Adaboost的人臉表情識別方法研究[J].無線電工程,2011,41,(6):50-53,61.
[11]葛仕明,楊睿,文輝,等.基于相關濾波器組的人眼定位方法[J].網絡新媒體技術,2014,1,3(1):8-12.
[12]EstebanV F,Daniel G J.Improved Average of Synthetic Exact Filters for Precise Eye Localiza-tion Under Realistic Conditions[J].IET Biome-trics,2013,7,5(7):10-20.
Implementation of an Embedded Real Time Eye Location System
DINGWei-bing1,QIN Hui-bin1,DONG Sheng-kui2
(1.School of Electronics&Information,Hangzhou Dianzi University,Hangzhou Zhejiang 310018,China;
2.Nanjing Research Institute of Electronics Technology,Nanjing Jiangsu 210013,China)
A real-time eye location system on embedded devices is designed and implemented.The algorithm of eye location uses the improved Average of Synthetic Exact Filters(ASEF).The algorithm can build stable average filters and reduce the number of training images,guaranteeing the accuracy and reducing the training time at the same time.By transplanting OpenCV vision library and QT,the designed algorithm and the interface of the system are implemented on ARM11.The system is tested usingmultiple standard face image databases and the video stream collected by camera.The results show that this system can accurately locate eyes and satisfy the requirement of real-time.
embedded system;eye location;ASEF;OpenCV
TP391
A
1003-3114(2015)04-100-4
10.3969/j.issn.1003-3114.2015.04.26
丁衛兵,秦會斌,董勝奎.一種嵌入式實時人眼定位系統實現[J].無線電通信技術,2015,41(4):100-103.
2015-03-05
丁衛兵(1988—),男,碩士研究生,主要研究方向:嵌入式系統與應用、數字圖像處理。秦會斌(1961—),男,博士,教授,主要研究方向:新型電子器件研發與應用。