摘 要: 為了完成在不采用傳感器條件下對公共場所人數的智能檢測,從實際應用的角度出發,運用人臉圖像擬合及模糊條件下人臉匹配的算法,實現了在嵌入式Linux平臺下以OMAP3530芯片為核心的基于圖像處理的多人臉識別系統。該系統能夠得出公共場所實時人員的名單,并列出人員信息。以普通辦公室為例進行實驗,得出準確率可達80%。該系統充分利用了OMAP3530芯片強大的數據處理能力,具有性價比高、可維護性強、工作穩定的特點。
關鍵詞: Linux;OMAP3530;數字圖像處理;多人臉識別
數字圖像處理技術就是利用計算機或者一些硬件設備(如MCU、DSP、PC等)對通過視頻采集電路采集到的圖像信息進行一系列算法處理,得到所采集到圖像的一系列特征參數(如物體的幾何特征等),進而滿足人們需求的技術。20世紀70年代初,由于得到大量的研究和應用,數字圖像處理已具備了自己的技術特色,并形成了較完善的學科體系,從而成為一門獨立的新學科。目前,基于人臉識別的數字圖像處理在智能家居、安防監控、搜救偵查等諸多方面得到良好的應用[1-2],但仍存在一系列的問題,如現有系統多是采用單獨的計算機或者計算機組進行操作,設備龐大,不易于操作,且大多只是對采集到的發生過的視頻片段或者圖像進行操作,喪失人臉識別的實時性。本文從嵌入式應用的角度出發,以TI公司生產的包括ARM與DSP雙核的OMAP3530芯片為硬件核心,在Ubuntu上搭建基于Linux+DSP/BIOS雙操作系統開發環境,并用交叉編譯器來調試編譯ARM和DSP程序,設計了基于數字圖像處理的多人臉識別系統。
1 系統設計及主要算法
1.1 設計思路及系統結構
本系統主要是針對目前學校、公司等對人員的管理需求所設計研究的。如在教學方面,提高了點名效率,節省時間;在商業方面,解決了以往采用指紋識別的設備昂貴、操作不方便的問題。原理上采用形態學的圖像濾波、圖像清晰化和模糊條件下的人臉匹配等相關圖像視頻的處理技術以及基于OMAP3530芯片為核心的Linux嵌入式系統開發技術,硬件上包括OMAP3530處理器、視頻采集接口、數/模轉換芯片、顯示屏幕、圖像獲取單元和電源等。系統的工作步驟如圖1所示。
(1)系統初始化。由于系統采用的是以TI公司生產的OMAP3530芯片為核心的實驗平臺,在不同的環境下工作時要對系統進行不同的初始化設置。例如在教室中,不僅需要設置攝像頭的安放位置,使得攝像頭能夠采集到整個工作場所的區域,還要預先得到場所人員的圖像數據,并初始化人員圖像建立數據庫。
(2)系統被開啟,系統將基于TVP5146進行一系列的視頻采集工作。由于攝像頭采集的原始信號為模擬信號,因此首先要將其經過A/D轉換器轉化為數字信號;然后OMAP3530處理器的ARM核通過基于TVP5146和V4L2(Video4Linux2)視頻捕獲應用程序把從攝像頭采集到的視頻數據通過DSP/BIOS橋傳給DSP核進行算法處理;最后DSP核把處理后的圖像傳給ARM核,并在屏幕上顯示。系統根據此原理完成視頻的采集過程。
(3)處理采集到的圖像。因為在同一時刻攝像頭不一定能夠采集到工作區域所有人員的信息,所以只處理一幀圖像不能準確反映場所信息。為了解決此問題,系統對視頻流中的多幀圖像進行處理。系統采集的幀數與公共場所的人數成正比,公共場所的人員越多則同一時刻采集到的人臉數目越小,所以需要的圖像幀數越多,反之越少。首先,系統對采集的圖像進行亮度及去噪處理,得到平滑的圖像數據;其次,將圖像中的人臉區域進行分割,再將分割的人臉圖像大小標準化之后進行清晰化處理;最后,系統將對標準化后的人臉圖像進行人臉識別,得出并顯示未到人員名單。
系統的實現主要由ARM核和DSP核完成。其主要功能包括:(1)ARM Cortex-A8核,此核主要完成系統任務管理功能,如采集前端視頻、控制系統的外設、通過DSPLink數據通信機制控制DSP完成一系列軟件算法并在LCD上實時顯示等功能;(2)TMS320C64+DSP核,此核主要完成圖像處理算法功能,如接收ARM端傳遞的數據、借助DSP/BIOS核完成一系列的算法,在本系統中執行圖像標準化、圖像清晰化、人臉識別等算法。
1.2 基于OMAP3530嵌入式平臺的開發
1.2.1 Linux嵌入式系統的視頻、圖像采集設備開發
本系統基于TVP5146視頻解碼芯片和V4L2設備進行圖像采集算法的開發。在Linux環境下采用內存映射的同步采集方式,這種方式在程序運行過程中需要先分配一塊內存空間作為視頻數據的緩沖區域,當啟動視頻采集后,視頻數據將不斷地送入該緩沖區,而當用戶需要數據時即從該緩沖區讀取。每獲得一幀新圖像數據,采集程序便向應用程序發送一個信號,上層程序通過相應信號來實現圖像數據的實時處理。整個采集過程分為3個步驟:(1)利用函數open()打開設備文件,從而打開設備驅動程序;(2)利用函數ioctl()設置視頻捕獲參數,包括視頻格式、申請buffer等;(3)將內核空間的視頻數據映射到相應的用戶空間,開啟視頻捕獲;(4)關閉視頻流捕獲。ARM Cortex-A8核將攝像頭捕獲的數據通過DSP/BIOS橋傳給TMS320C64+核,按照式(1)對采集到的UYVY顏色空間的圖像數據進行顏色空間轉換,在對圖像顏色空間轉換之后得到BMP格式圖像。此時再由TMS320C64+核進行人臉識別等相關計算。
1.2.2 多線程開發
從程序自身的角度考慮,多線程開發就是使目標任務能夠盡可能快地完成,更有效地利用系統資源,提高應用程序響應[7],屬于嵌入式軟件開發中操作系統層的內容。這對圖像處理的程序尤其有意義,當一個操作耗時很長時,整個系統都會等待這個操作,此時程序不會響應其他算法的操作,而使用多線程技術,將耗時長的操作(Time Consuming)置于一個新的線程,這樣可以提高系統運算效率。
在本系統中,由于相關視頻、圖像采集與圖像處理算法復雜度較高,而平臺的主頻為600 MHz,內存為128 MB。綜合考慮,采用生產消費算法完成多線程開發。在Linux嵌入式系統的調度下,系統的不同線程會運行在不同的處理器上,因而一個復雜的程序被分為多個線程,使得ARM核控制的圖像采集與DSP核控制的圖像處理兩個線程之間相互獨立,并使其中一個線程阻塞或中斷不會影響其他線程的運行,增加了系統的可維護性。
1.3 主要算法及設計
1.3.1 人臉圖像分割
在系統的開發環境下,處理經過預處理后的圖像。系統根據膚色識別模型將具有皮膚顏色的圖像進行分割,并將分割下來的圖像與橢圓進行擬合,從而使得到的人臉圖像為橢圓形,而系統根據橢圓長短軸與水平和垂直方向的夾角對橢圓進行旋轉調整,最后得出較為理想的人臉圖像。標準化擬合得到的人臉圖像長短軸之比固定為1.5:1,采集出人臉圖像的效果如圖2所示。
1.3.2 人臉圖像清晰化
系統運用低分辨率的圖像進行人臉的智能匹配,所以要采用圖像增強算法進行清晰化研究,以提高采集到的標準化人臉圖像的亮度。李曉霞等提出了一種新的低照度彩色圖像增強算法[6],為了增強彩色圖像而不引起色彩失真,在HSV顏色空間中保持色相不變,提出了采用分段對數變換增強飽和度,結合在多尺度Retinex算法的基礎上,采用邊緣保持增強色調的低照度彩色圖像增強算法。通過對不同環境下的圖像或者分辨率比較低的圖像的增強處理,得到了比較清晰的圖像結果,提高了圖像的亮度、細節和對比度。實驗結果表明,該算法能夠增強景物的可辨識度和人臉特征,提高圖像的辨識率。人臉清晰化前后的灰度圖像如圖3所示,可以看出圖3(b)圖像質量明顯優于圖3(a)。
1.3.3 人臉識別
對清晰化后的人臉圖像進行匹配。前人提出了很多人臉識別的算法,其中主成分分析法(PCA)一直受到人們的關注。參考文獻[8]在經典PCA方法的基礎上,提出了一種改進的PCA方法,該方法在預處理階段對每幅圖像進行灰度的線性變換,通過增強圖像的對比度和亮度來減少光照變化帶來的影響,然后利用經典PCA方法對圖像進行處理。由于光照變化主要影響PCA方法的前3個最大的主分量,因此,在識別階段對這3個主分量進行加權處理來進一步減少光照的影響。
假設由M幅人臉圖像組成圖像集B,其主要步驟如下:
(1)對清晰化的每幅圖像進行零均值處理,處理后的圖像為x1,x2,…,xM。
(2)對圖像x1,x2,…,xM作圖像灰度的線性變化。
(3)利用經典PCA方法計算特征子空間以及每張人臉在特征子空間中的投影系數。其中特征子空間由按特征值大小進行降序排列的特征向量組成。
(4)對人臉圖像進行識別。
本系統主要針對人臉區域進行匹配,且整幅圖像中只包含人臉區域,所以人臉特征量的提取簡單,匹配率相對較高。
2 實例
本系統的適用范圍較為廣泛,如教室、會議室、辦公室等均可應用。由于分辨率的需要,面積大的環境對攝像頭的要求相對較高。此實例是系統在辦公室的應用,系統通過對辦公室實時圖像的采集,得到了較為準確的人員名單,驗證了本系統的可行性及準確性。
(1)系統開始工作,采集辦公室內的實時視頻。通過獲取的視頻,系統采集其中的幾幀圖像進行處理。系統采集的圖像如圖4所示。由于內存的限制且圖像的計算量較大,因此系統必須在獲取一定的視頻后釋放內存,這就限定了獲取圖像的頻率不能太高。
由圖5可以看出,系統根據采集的多幀圖像得出了最終人員的名單。第1幅公共場所的圖像并沒有采集到所有人員的人臉信息,所以不能檢測到所有的在位人員。當采集到第2幅圖像時,系統采集到了所有人員的人臉信息,并列出了在位人員信息。
由實驗結果可知,系統準確地獲得了此辦公室的人員信息,得出了未到和應到的人員名單。而對于如教室等的大型公共場所,由于攝像頭清晰度的限制,必然使得系統存在一定的誤差,但由于系統所采集的是單純的沒有背景的人臉區域的圖像,因此在人臉的識別方面仍然具有很高的準確性,使得整個系統的誤差相對較小。
系統采用基于OMAP3530的嵌入式系統設計,能夠實現設備本地控制,可維護性及穩定性比計算機控制都有所提高,體現出了系統智能化的特征。實際的應用中,不僅可以運用到文中提到的教室及其他辦公場所,而且可以在公安安防監控系統中的罪犯搜索方面得到推廣,提高抓捕效率。本系統單純地對攝像頭采集到的數字圖像進行處理,有著良好的可操作性和低成本的優點,便于推廣。
參考文獻
[1] 潘基明,張少兵.基于DSP視頻圖像采集處理系統設計[J].電子測試,2008(4):74-78.
[2] 王明艷,張海峰.基于TMSDM643的視頻監控系統設計[J].微計算機,2008(2):200-201.
[3] 彭啟倧,管慶.DSP集成開發環境——CCS及DSP/BIOS的原理與應用[M].北京:北京電子工業出版社,2005.
[4] LEUVEN J, LEEUWEN M B, GROEN F C A. Real-time vehicle tracking in image sequence[C]. Proceedings of IEEE Conference on Instrumentation and Measurement Technology, 2001:2049-2053.
[5] KIM W, LEE C Y, LEE J J. Tracking moving object using snake′s jump based on image flow [J]. Mechanics, 2001(11):119-216.
[6] 李小霞,李鋮果,鄒建華,等.一種新的低照度彩色圖像增強算法[J].計算機應用研究,2011(9):3554-3556.
[7] 李靜輝,題原,王艷春.基于DSP的圖像采集處理實驗開發平臺的研究[J].計算機與網絡,2008(2):213-214.
[8] 李榮健,韓其龍,楊鑫華.改進的PCA人臉識別新算法[J].大連交通大學學報,2008(4):48-51.
[9] 袁愛平,楊萬全.基于OMAP2的3G多媒體技術及應用[J].現代電子技術,2005(14):63-65.
[10] 時巖.基于OMAP軟件無線電平臺設計與實現[J].電子技術,2012(3):38-42.
[11] 何斌,馬天宇,王運堅.數字圖像處理[M].北京:人民郵電出版社,2002.