張瑞民,李宇涵,申海杰
(西安思源學(xué)院 電子信息工程學(xué)院,陜西西安,710038)
隨著門禁系統(tǒng)的不斷發(fā)展,新式門禁系統(tǒng)在原有的基礎(chǔ)上引入了人員進(jìn)出管理、實(shí)時(shí)控制、安防報(bào)告等多項(xiàng)功能。這些功能不但便利了物業(yè)管理,也提高了居民的安全感。具體體現(xiàn)如下:
(1)門禁管理系統(tǒng)的智能化是一種相對(duì)安全的改造方案,從根本問題上解決小區(qū)物業(yè)規(guī)章制度的各種亂象,通過實(shí)現(xiàn)進(jìn)出小區(qū)人員的身份識(shí)別以及安全檢測(cè),從而完成實(shí)現(xiàn)以安全為本的最終目標(biāo)。
(2)智能門禁管理系統(tǒng)與數(shù)據(jù)庫(kù)管理系統(tǒng)有著相似的特征,它可以安全有效地存放各種門禁系統(tǒng)以及客戶資料信息,全面提高了系統(tǒng)信息的安全性、可靠性和穩(wěn)定性的同時(shí),也為用戶提供了數(shù)據(jù)備份的下載服務(wù)。
(3)智能門禁系統(tǒng)在底層采用了一種高安全度,高有效率的數(shù)據(jù)傳輸算法,能有效地保障數(shù)據(jù)的安全和數(shù)據(jù)傳輸速度。相比市面上的傳統(tǒng)門禁系統(tǒng),智能門禁將在門禁市場(chǎng)上擁有巨大的優(yōu)勢(shì)。
2020 年,人臉識(shí)別門禁設(shè)備的出貨量同比增幅將會(huì)超過50%,而在2019 年的同比增幅則僅僅為14%。在這種巨大出貨量的增加背后,是因?yàn)樾鹿诓《镜某霈F(xiàn)而產(chǎn)生了門禁市場(chǎng)對(duì)非接觸式應(yīng)用技術(shù)的新要求,對(duì)人臉識(shí)別技術(shù)的精確度和檢測(cè)速度的要求也在穩(wěn)步上升。
至2027 年底,世界生物識(shí)別系統(tǒng)的產(chǎn)業(yè)規(guī)模將超過46.2 億元,復(fù)合年均增長(zhǎng)率達(dá)24.5%,巨大的發(fā)展空間自然會(huì)引來(lái)眾多企業(yè)踴躍投入。而目前中國(guó)相較于其他國(guó)家的市場(chǎng)占有率,智能門禁系統(tǒng)的技術(shù)水平仍舊是相對(duì)比較低的。
目標(biāo)檢測(cè)算法通常包括以下兩個(gè)過程:(1)程序產(chǎn)生一個(gè)Bounding Box 邊界框(BBox),(2)進(jìn)行物品分類。因此,目標(biāo)檢測(cè)方法也因此分成了One-Stage 與Two-Stage 兩種方法類型。
Two-Stage 是通過將兩種方法分開進(jìn)行的算法,這個(gè)過程實(shí)施下來(lái)非常緩慢,同時(shí)由于這些過程又是分散進(jìn)行的,檢測(cè)過程很難實(shí)現(xiàn)優(yōu)化。
YOLO 算法是One-Stage 算法系統(tǒng)的典范,它把目標(biāo)檢測(cè)任務(wù)當(dāng)作還原現(xiàn)象(Regression Problem)來(lái)解決,直接使用整張圖像中的每個(gè)圖像可以得出Bounding Box 的位置、對(duì)Box 中包含物品的置信度。利用YOLO,對(duì)每個(gè)圖像只需看一下就可以知道整個(gè)圖像中都有什么物品,以及這些物體的位置。
YOLO 目標(biāo)檢測(cè)系統(tǒng)是一種在2016 年發(fā)表出來(lái)的檢測(cè)算法,同比在當(dāng)時(shí)比較優(yōu)秀的目標(biāo)檢測(cè)算法有 R-CNN、Fast R-CNN 等等,YOLO 相比其他的算法優(yōu)勢(shì)在它的簡(jiǎn)單和快速。YOLO 網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示[1]。
圖1 YOLO 網(wǎng)絡(luò)原理
首先,由YOLO 將圖片平均分成S*S 個(gè)網(wǎng)格,算法規(guī)定了物體的中心落在哪部分格子上,就由哪部分格子負(fù)責(zé)推理這個(gè)物體,最后YOLO 取了S=7。比如在上圖中,假設(shè)左下角位置是(0,0),狗的中心落在了(1,2)這個(gè)格子,那(1,2)這個(gè)格子就是負(fù)責(zé)推理的這一只小狗,如圖2 所示。
圖2 YOLO 圖片處理
然后,通過在每個(gè)網(wǎng)格上預(yù)測(cè)得到的3 個(gè)Bounding Boxes 和其與之相應(yīng)的Confidence Scores(置信度得分),從而可以確定各個(gè)Bounding Box 的置信度[2],并假設(shè)如果這個(gè)網(wǎng)格上不存在物體,則Confidence Score 為0 值,反之則為1。
所有預(yù)測(cè)出的Bounding Box 都有五種估計(jì)值:(x,y,w,h)和對(duì)應(yīng)的Confidence。下面解釋了一下的幾個(gè)函數(shù):x,y: X 和y 都是在Bounding Box 的中間位置,在這里一個(gè)小訣竅,就是不是直接返回中心點(diǎn)的位置值,而是返回相應(yīng)于中格點(diǎn)左上角坐標(biāo)的位置值。比如,如果一個(gè)格點(diǎn)中的物體位置是(1.1,1.1),那么在回歸的時(shí)候使用(0.1,0.1),或者在重新使用時(shí)候,再加上格點(diǎn)的左上角坐標(biāo)即可。W,h:w和h 分別是圖像長(zhǎng)寬相應(yīng)于整個(gè)圖像質(zhì)量的比值。而置信度得分Confidence 是BBox 和Ground Truth Box 的IOU 值。
在各個(gè)網(wǎng)格中預(yù)估的類型物體的條件可能為Pr。而這里說的是每個(gè)網(wǎng)格,而不是各個(gè)BBox??梢允褂霉焦烙?jì)各個(gè)Bounding Box 中的各個(gè)層次的Score,從而才能確定對(duì)某一個(gè)物體的估計(jì)情況。
也因此可以得到一個(gè)20*(7*7*2)=20*98 的Score 矩陣,括號(hào)里面則是BBox 的數(shù)量,共有著7×7 個(gè)格子,每個(gè)格子預(yù)測(cè)出2 個(gè)BBox,20 代表物體類別(YOLO v1 采用二十個(gè)物體類別),如圖3 所示。后面的運(yùn)算,一般分二十個(gè)類別交替完成:在每一個(gè)分類中(即矩陣的某一行),將分?jǐn)?shù)低于閾值(0.2)的設(shè)定為零,之后再將分?jǐn)?shù)由高至低排列。然后,再用NMS 算法去除重疊度較大的Bounding Box。最后對(duì)各個(gè)Bounding Box 的前20 個(gè)Score 取較大的Score,假設(shè)這些Score 等于零,那么這些Bounding Box 便是這些Socre 所相應(yīng)的類別(矩陣的行),假如等于零,則表示在這些Bounding Box 里不是物體,直接跳過即可。
圖3 置信度計(jì)算
智能門禁系統(tǒng)是一款集自動(dòng)識(shí)別信息技術(shù)與現(xiàn)代安保管控措施為一身的新型門禁系統(tǒng)。它涉及多種新興科學(xué)技術(shù)領(lǐng)域,如電子、機(jī)械、光學(xué)、信息學(xué)、通信技術(shù)和生物技術(shù)等。近年來(lái)由于RFID 以及生物鑒識(shí)技術(shù)朔評(píng)的不斷進(jìn)步,門禁管理系統(tǒng)也因此獲得了飛躍式的提升,步入了成長(zhǎng)期。這也慢慢發(fā)展出了指紋、虹膜、人臉識(shí)別包括亂序鍵盤等多種樣式的門禁管理系統(tǒng),他們?cè)诎踩浴⒎奖阈?、可管理性等領(lǐng)域也各有所長(zhǎng),因此智能門禁管理系統(tǒng)的應(yīng)用市場(chǎng)也因此越發(fā)廣大。
本文旨在研究一種通過神經(jīng)網(wǎng)絡(luò)訓(xùn)練達(dá)成基于AI 識(shí)別的智能門禁系統(tǒng)。
門禁系統(tǒng)的軟件部分由人臉檢測(cè)模塊、人臉識(shí)別模塊構(gòu)成,硬件部分則由攝像感知模塊、門禁驅(qū)動(dòng)模塊、樹莓派主控構(gòu)成如圖4 所示。
圖4 硬件結(jié)構(gòu)圖
其中軟件部分中人臉識(shí)別模塊將會(huì)通過http 服務(wù)即通過Flask 將推理模型部署至云端服務(wù)器,從而解決系統(tǒng)遇到的算力不足問題。
2.2.1 YOLO 人臉檢測(cè)模塊設(shè)計(jì)
人臉檢測(cè)模塊的設(shè)計(jì)是為了使用YOLO 算法提前將待測(cè)圖像中的非待測(cè)人臉以及非口罩部分剔除出來(lái),如圖5 所示,從而降低某一時(shí)段的系統(tǒng)負(fù)載,在此次項(xiàng)目中筆者使用的是一塊樹莓派3B 的開發(fā)板,性能堪憂,即使在本體加入一塊神經(jīng)計(jì)算棒也無(wú)法加速檢測(cè)。
圖5 YOLO 人臉檢測(cè)模塊
人臉檢測(cè)算法部分采用了YOLOv5,數(shù)據(jù)集則是采用了CelebA 數(shù)據(jù)集。在訓(xùn)練中筆者對(duì)數(shù)據(jù)集合進(jìn)行了分析與整合,將數(shù)據(jù)轉(zhuǎn)換成VOC2007 形式的數(shù)據(jù)集合,采用了其中的10000 張圖片,數(shù)據(jù)集訓(xùn)練了500 個(gè)epoch,最終訓(xùn)練成功。
2.2.2 YOLO 人臉識(shí)別模塊設(shè)計(jì)
人臉識(shí)別方面,筆者使用了ArcFace 的算法,這種算法是通過深度卷積式神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)的。人臉識(shí)別檢測(cè)的特征學(xué)習(xí)部分中最主要的問題之一,那就是如何通過設(shè)置相應(yīng)的特征損失函數(shù)來(lái)提高判別性能。在SoftmaxLoss、Center Loss、A-Softmax Loss 等損失函數(shù)之后,ArcFace 算法在本次人臉識(shí)別中具有更加優(yōu)異的性能表現(xiàn)。通過對(duì)十多種人臉識(shí)別基準(zhǔn)的試驗(yàn)與評(píng)估,證實(shí)了ArcFace 算法的效率和準(zhǔn)確率遠(yuǎn)超原有的技術(shù)手段,而且能夠很容易實(shí)現(xiàn)。
2.2.3 攝像感知模塊設(shè)計(jì)
人像感知模塊采用了CSI 攝像頭V2 模塊,如圖6 所示,這是一個(gè)有樹莓派官方推薦的模塊,具體的參數(shù)是RPi Camera V2,雖然同類型的模塊相比,它僅有800 萬(wàn)像素,但足夠勝任攝像感知任務(wù)。感知模塊收集到的信息后將會(huì)通過OpenCV 程序進(jìn)行處理,然后將處理完的信息傳送給人臉模塊進(jìn)行檢測(cè)。
圖6 CSI 攝像頭
2.2.4 門禁驅(qū)動(dòng)模塊設(shè)計(jì)
筆者目前身邊并沒有能夠進(jìn)行CNC 加工的條件,而且普通3D 打印并不能達(dá)到設(shè)計(jì)要求參數(shù),所以門禁驅(qū)動(dòng)模塊是在現(xiàn)在非智能門禁的基礎(chǔ)進(jìn)行改裝,以達(dá)成樹莓派主控驅(qū)動(dòng)電機(jī)的目的。
而在控制方法上引入了PWM 控制,就是利用快速的高低電流的轉(zhuǎn)換,實(shí)現(xiàn)控制電機(jī)的有效電流的控制,從而達(dá)到控制電機(jī)的目標(biāo)。
2.2.5 樹莓派開發(fā)板介紹
樹莓派是一種低成本的微電腦開發(fā)板,其帶有豐富的IO 接口,如圖7 所示。由于它們的體積偏小,所以對(duì)這一類開發(fā)板其統(tǒng)稱為PI,相比于stm32 這樣的嵌入式開發(fā)板,樹莓派擁有更強(qiáng)勁的性能,更適合嵌入電腦屏幕或電視,還可以插上各種IO 設(shè)備例如鍵盤鼠標(biāo)等等。它可以像普通電腦一樣,實(shí)現(xiàn)瀏覽網(wǎng)頁(yè)、播放視頻以及日常辦公和玩游戲等功能。
圖7 樹莓派主控
筆者使用的是樹莓派3B 的開發(fā)板,由于其CPU 性能較弱,所以在原有開發(fā)板基礎(chǔ)上增加了Intel 神經(jīng)加速棒以達(dá)成加速推理的效果,如圖8 所示。神經(jīng)加速棒是一種可以理解為是一種插入計(jì)算機(jī)的GPU,不過這塊顯卡不是給你跑訓(xùn)練用的,它是一種神經(jīng)網(wǎng)絡(luò)推理設(shè)備,簡(jiǎn)單來(lái)說就是加速你的AI 程序識(shí)別速度的。
圖8 英特爾神經(jīng)加速棒
門禁系統(tǒng)底層的驅(qū)動(dòng)流程圖如圖9 所示,智能門禁系統(tǒng)使用前需將使用人員的人臉數(shù)據(jù)注冊(cè)登記到人臉門禁數(shù)據(jù)庫(kù)中,這些數(shù)據(jù)將用于后續(xù)的YOLO 口罩面部識(shí)別與ArcFace 人臉識(shí)別。在開始識(shí)別時(shí),YOLO 面部識(shí)別功能可以評(píng)估所獲得人臉數(shù)據(jù)是否滿足人臉識(shí)別的要求,這些評(píng)估維度包括但不限于:人臉在圖像中的占比、人臉面部區(qū)域的大小、面部關(guān)鍵部位遮擋比例、人臉清晰度、人臉圖像亮度、對(duì)比度、圖形畸變等多個(gè)維度,系統(tǒng)將對(duì)不符合基本質(zhì)量要求的圖像進(jìn)行反饋,以確保每一張人臉數(shù)據(jù)均滿足基本要求,其次,YOLO 面部識(shí)別還會(huì)檢測(cè)人臉是否佩戴口罩,若檢測(cè)失敗則返回第一步重新識(shí)別檢測(cè),若檢測(cè)成功則進(jìn)入下一步的ArcFace 人臉識(shí)別步驟。
圖9 門禁系統(tǒng)驅(qū)動(dòng)流程圖
ArcFace 則會(huì)經(jīng)過圖像質(zhì)量檢測(cè)的人臉數(shù)據(jù),將根據(jù)一定的人臉識(shí)別算法進(jìn)行數(shù)據(jù)比對(duì),比對(duì)的核心是對(duì)肖像數(shù)據(jù)提取面部特征,并采用特征模板生成算法產(chǎn)生面部特征模板,并保存在數(shù)據(jù)庫(kù)中,該模板數(shù)據(jù)將直接用于人臉比對(duì)與人臉識(shí)別。當(dāng)人們需要通過門禁時(shí),均需要在人臉識(shí)別門禁前識(shí)別或者比對(duì)其人臉數(shù)據(jù),只有經(jīng)過人臉識(shí)別系統(tǒng)精準(zhǔn)比對(duì)成功后的人員,才能夠正確開啟門禁,實(shí)現(xiàn)通行。
同時(shí),數(shù)據(jù)庫(kù)對(duì)已經(jīng)采集了人臉數(shù)據(jù)的人員進(jìn)行門禁權(quán)限設(shè)定,這些權(quán)限規(guī)定了人員被允許出入的時(shí)間、地點(diǎn)、打開門禁的方式等。一般而言,對(duì)于常住用戶,僅設(shè)置區(qū)域權(quán)限,時(shí)間權(quán)限可以采用默認(rèn)設(shè)置即可;對(duì)于訪客則將采用嚴(yán)格權(quán)限控制,以確保訪問安全。人臉識(shí)別門禁還記錄了所有用戶通過人臉識(shí)別門禁的原始數(shù)據(jù),這些數(shù)據(jù)包括:人臉識(shí)別結(jié)果、門禁開關(guān)成功與失敗結(jié)果、時(shí)間、門禁設(shè)備信息、身份信息、權(quán)限信息等。這些信息將被作為眾多管理需要的原始分析數(shù)據(jù),比如當(dāng)管理者需要知道員工的考勤狀況時(shí),可通過這些原始數(shù)據(jù)得出員工們的出勤情況、績(jī)效情況、工資情況等。
隨著社會(huì)的高度信息化,“快捷性”“方便性”和“安全性”已經(jīng)變成了現(xiàn)代社會(huì)的代名詞,計(jì)算機(jī)技術(shù)及其應(yīng)用在人們生活中承擔(dān)了重要角色。其中,人工智能的發(fā)展與運(yùn)用已變成國(guó)內(nèi)外科學(xué)家與研究人員所關(guān)心的問題焦點(diǎn),而其中的人臉識(shí)別技術(shù)已成為各大公司競(jìng)爭(zhēng)的重點(diǎn)項(xiàng)目。在安全檢查領(lǐng)域中使用各種電子監(jiān)測(cè)設(shè)備和門禁系統(tǒng)是處理身份辨識(shí)問題最有效的技術(shù)手段。本文基于YOLO 目標(biāo)檢測(cè)算法,實(shí)現(xiàn)支持快速部署、商業(yè)化和定制訓(xùn)練的智能口罩人臉識(shí)別門禁系統(tǒng)。尤其在當(dāng)前防疫情勢(shì)嚴(yán)峻的背景下,本研究具有一定的實(shí)用價(jià)值。