張萌
【摘要】近年來,人臉識別在電子銀行、金融證券、國家安全等諸多領(lǐng)域有著廣泛的應(yīng)用。本文基于樹莓派為硬件基礎(chǔ),以O(shè)penCV為軟件核心設(shè)計實現(xiàn)了具有人臉識別功能的簡易系統(tǒng)。本系統(tǒng)首先通過OpenCV打開攝像頭并讀取攝像頭畫面,然后將授權(quán)人的人臉信息進行灰度化、降維及計算特征值等處理,再將處理后的人臉信息通過Dlib庫與已知的授權(quán)人臉進行比對,最后對識別的人臉進行實時標注。經(jīng)過實驗測試證明,該系統(tǒng)具有較好穩(wěn)定性,并能順利的完成了人臉識別功能,但識別效果會受到攝像頭等硬件設(shè)備和距離的限制。
【關(guān)鍵詞】樹莓派;OpenCV;人臉識別
一、引言
隨著科學(xué)信息科學(xué)技術(shù)的飛速發(fā)展,信息安全問題已經(jīng)越來越引起人們廣泛的關(guān)注。在諸多應(yīng)用領(lǐng)域,例如電子銀行、金融證券、國家安全等領(lǐng)域身份認證技術(shù)都用來保證用戶的財產(chǎn)安全。與其他生物特征的身份識別相比人臉識別更加穩(wěn)定、方便、安全,已經(jīng)得到了廣泛的應(yīng)用,并且獲得了社會大眾的普遍認可。
此外近年來,基于Linux的單片微型計算機也已迅速發(fā)展,并以其開源、低價等特點被廣泛使用。因此本文將樹莓派為硬件基礎(chǔ),以O(shè)penCV為軟件平臺搭建一套人臉識別系統(tǒng)。
二、硬件和軟件設(shè)置
(一)硬件設(shè)置
樹莓派(Raspberry Pi),是由英國樹莓派基金會開發(fā)的一款基于Linux的單片微型計算機。在其上可以輕松的運行Linux系統(tǒng)和windows系統(tǒng),以及這些系統(tǒng)之上的應(yīng)用程序,因此被廣泛應(yīng)用于嵌人式系統(tǒng)和物聯(lián)網(wǎng)領(lǐng)域,也經(jīng)常作為小型的網(wǎng)絡(luò)服務(wù)器完成特定功能。
(二)軟件設(shè)置
1.OpenCV
OpenCV(Open Source Computer Vision Library),是一個可以跨平臺運行的,開源的計算機視覺庫,可以在絕大多數(shù)的操作系統(tǒng)上運行如Windows,Linux等。視覺庫整體是用C函數(shù)和C++類編寫的,其中包括了計算機視覺圖像處理的多種常見的通用算法。OpenCV構(gòu)建的計算機視覺算法框架,簡單易懂、方便開發(fā)人員使用,因此在其上能快速便捷的開發(fā)出更為復(fù)雜的計算機視覺和圖像處理的程序。
2.Dlib
近年來,Python語言發(fā)展勢頭迅猛,要得益于其源代碼的開源性以及高效性。Python社區(qū)擁有大量的第三方庫,Dlib庫就是其中一個著名的第三方庫,它能夠?qū)崿F(xiàn)人臉的檢測和識別,其算法主要依賴于HOG特征分類器。其算法的實現(xiàn)分為以下幾個過程:首先將原始圖像進行灰度處理,接下來對圖像用Gamma校正法基于顏色空間進行標準化矯正,然后算出每一個圖像像素的梯度,再將圖像用細小單元重新劃分并生成梯度直方圖,最后將若干個小單元組合成較大的區(qū)域,并對區(qū)域內(nèi)進行梯度直方圖歸一化處理,生成HOG特征向量描述。
三、實驗分析
(一)實驗方案
首先搭建樹莓派硬件環(huán)境,接下來通過OpenCV打開攝像頭并讀取攝像頭畫面,然后檢測圖像中是否有人臉,若有則與已知人員的照片進行比對,如為已知人員則在畫面中標注其姓名,否則標注“未知人員”,然后返回重新檢測下一時刻畫面。若畫面中未檢測到人臉,則也返回檢測下一時刻畫面。本文實驗方案流程圖如圖1所示。
(二)實驗結(jié)論
該實驗利用了OpenCV調(diào)用攝像頭功能,滿足了實時性的要求,通過配合Dlib人臉檢測算法來獲得人臉關(guān)鍵部位的位置信息,最終實現(xiàn)了較為準確的人臉識別和認證。實驗結(jié)果如圖2所示。
同時,在實驗研究的過程中,也發(fā)現(xiàn)了該實驗方案存在的一些問題。一是受到攝像頭等硬件的功能和性能限制,在處理過程中只能降低圖片的質(zhì)量,確保運算量不超硬件負荷才能相對流暢地處理圖片。二是在人臉識別的過程中,由于dlib算法本身誤差的影響,導(dǎo)致在距離攝像頭5米以外的人臉難以進行面部識別。三是由于時間的原因,實驗未加入活體檢測系統(tǒng),考慮可以通過判斷眨眼的次數(shù)或是兩次眨眼的時間間隔來確定其是否為合法用戶,防止借助用戶人臉視頻的欺詐行為。
四、小結(jié)與展望
本文基于樹莓派和OpenCV為核心設(shè)計實現(xiàn)了具有人臉識別功能的簡易系統(tǒng)。通過OpenCV打開攝像頭并讀取攝像頭畫面,然后檢測圖像中是否有人臉,最后對識別的人臉進行實時標注。經(jīng)過實驗測試證明,該方法有較高的人臉識別成功率。同時,本文的設(shè)計具有硬件配置簡單,成本消耗低等優(yōu)勢,相信在智慧城市的建設(shè)過程中,結(jié)合活體檢測等功能可以在小區(qū)智能門禁系統(tǒng)、智慧教室簽到、智能支付、身份識別等領(lǐng)域會有廣闊的發(fā)展前景。
參考文獻:
[1]陸暢,陳東焰,俞浩.基于OpenCV視覺庫和樹莓派的人臉識別門禁系統(tǒng)[J].科技創(chuàng)新導(dǎo)報,2019,16(2):152-154.
[2]譚舒昆,劉云鵬,李義翠.基于高斯尺度空間的核相關(guān)濾波目標跟蹤算法[J].計算機工程與應(yīng)用,2017(53):29-33.
[3]婁新強.開放式校園消防安全管理信息系統(tǒng)設(shè)計與實現(xiàn)[D].湖南大學(xué),2015.
[4]張興.視覺定位技術(shù)在激光切割設(shè)備中的應(yīng)用研究[D].廣東工業(yè)大學(xué),2016.
[5]張枝令.Python實現(xiàn)基于深度學(xué)習(xí)的人臉識別[J].電子商務(wù),2018(5):47,96.
基金項目:
2018年立項校級課題,課題名稱:《基于樹莓派的低成本簡易人臉識別系統(tǒng)的開發(fā)與應(yīng)用研究》。