蔡斌杰,李 哲,周牡丹,陳 錦
(廈門大學嘉庚學院,福建 漳州 363123)
目前,新冠肺炎在多國肆虐,對人們的生命健康和社會經(jīng)濟發(fā)展帶來了巨大威脅。中國在防控疫情的過程中,在人員流動的各類入口位置(包括超市入口、地鐵/火車站入口等),以及其他各類公共場所進行了廣泛的體溫篩查,經(jīng)驗表明,這對于及早發(fā)現(xiàn)潛在感染者、阻斷疫情傳播具有幫助。我國在2003年初步應用紅外測溫技術篩查體溫,其無接觸、高效、準確的優(yōu)勢得到了專業(yè)人員的認可,在之后防御禽流感、甲型流感,包括新冠肺炎疫情中都發(fā)揮了重大作用。但市面上現(xiàn)有的全自動紅外測溫裝置大多為醫(yī)院、商超等人流量大的公共場所設計,體積大,價格昂貴。而手持式紅外測溫裝置的測量準確度受其操作方法的影響大,且功能單一。市面上現(xiàn)有這兩類紅外測溫裝置并不完全適合學校、辦公室這類規(guī)模相對較小的公共場所。為了將傳染病防控落實到每一個角落,設計一款價格低廉、功能多樣的新型紅外測溫裝置具有重要的社會意義。
1.1.1 Haar-Like特征
在最早對于人臉檢測的研究中,像素特征被大量使用,但識別效果并不理想。為了實現(xiàn)更好的人臉檢測,Viola提出了由2個或2個以上全等矩形相鄰組合形成的Haar-Like特征。Haar-Like特征是黑色矩形和白色矩形在圖像子窗口中對應區(qū)域的灰度級總和之差。Haar-Like特征能夠有效反映圖像局部灰度變化信息,而且具有可以通過積分圖快速計算的特點。在實際應用中,4種Haar-Like特征不足以滿足對于不同應用場景下對于人臉識別檢測的需求。后續(xù),基于4種基本Haar-Like特征衍生出Haarlem-Like特征,可以被分為邊緣特征、線性特征和中心特征,方便并加快了對于目標的識別。
1.1.2 Adaboost算法
Adaboost是一種迭代算法,通過多次迭代將大量弱分類器按照權重疊加,得到效果理想的強分類器。初始時各訓練樣本權值默認相等,按照既定程序訓練后得到弱分類器,反復迭代。在第次迭代中,權值由第-1次迭代的結果決定。每次迭代完成都需要重新計算一次權值,被分類錯誤樣本的權值不斷提高,突出顯現(xiàn)。將反復迭代后得到的個最優(yōu)弱分類器按照一定的級聯(lián)方式聯(lián)合,形成一個強分類器。
LBP算法是當前一類比較成熟的人臉部特征提取技術。LBP算法最早由Ojala等在1994年提出,通過比較3×3模板中心像素與其鄰域像素的大小,得到鄰域像素的二進制代碼,從而得到LBP特征。
Local Binary Patterns Histograms,即LBP特征統(tǒng)計直方圖。這種表示方法由Ahonen等人在2004年提出,他們將LBP特征圖像分成個局部塊,并提取每個局部塊的直方圖,然后將這些直方圖依次連接形成LBP特征統(tǒng)計直方圖,即LBPH。LBPH算法的優(yōu)勢在于計算量小,運行速度快,且基本不受光線和圖像旋轉的影響。
針對YOLO和Faster R-CNN的不足與優(yōu)勢,WeiLiu等人提出了SSD算法。SSD基于一個前向傳播卷積神經(jīng)網(wǎng)絡,產(chǎn)生一系列固定大小的活動邊框,以及每一個盒中包含物體實例的可能性。之后,進行非極大值抑制(Non-maximum suppression),得到最終的預測結果。SSD算法屬于onestage方法,通過直接在網(wǎng)絡中提取特征來預測物體分類和位置,在識別速度方面具有優(yōu)勢。
總體目標損失函數(shù)是位置損失(loc)和置信損失(conf)的加權和,總體目標損失函數(shù)公式如下:
式中:為匹配的默認框數(shù)量;為置信損失和位置損失的權重。位置損失是預測框和真實標簽值框參數(shù)之間的smooth-L1損失,而置信損失是softmax對多類別的損失。
測溫部分的工作可以分為如下2個階段:
(1)通過STM32讀取紅外溫度傳感器傳回的溫度數(shù)據(jù);
(2)通過溫度補償擬合曲線對傳回的溫度數(shù)據(jù)進行處理,減小溫度測量的誤差。
總體架構如圖1所示。
圖1 總體架構
圖像識別處理部分的工作可以分為4個階段:
(1)讀取攝像頭模塊傳回的圖像信息并進行相應處理;
(2)利用基于Haar-Like特征和Adaboost算法檢測圖像中的人臉位置;
(3)通過LBPH算法獲取人臉特征,與本地識別器進行匹配,匹配結果即為人臉識別結果;
(4)通過基于caffe模型的SSD算法處理人臉信息,由訓練后的神經(jīng)網(wǎng)絡模型判斷人員是否佩戴口罩。
2.2.1 溫度數(shù)據(jù)處理
將系統(tǒng)測溫模塊上的攝像頭對準待測溫人員,即可在系統(tǒng)副屏上查看溫度測量結果、報警溫度、溫度是否在合理范圍內(如圖2所示)。如果溫度結果高于報警溫度,系統(tǒng)將發(fā)出警報。報警溫度可以通過按鈕調節(jié)。
圖2 副屏顯示溫度檢測結果
2.2.2 人臉識別系統(tǒng)
點擊“錄制人臉”按鈕,程序進入采集人臉模式。將采集的人臉用白色線框框選,并保存至本地文件夾,右上角顯示完成度。當完成度達到100%時,程序進入人臉訓練模式,并發(fā)送指令至STM32單片機,STM32單片機控制語音模塊播放“人臉學習中”與“人臉學習完畢”的提示語。人臉識別系統(tǒng)的訓練本質是將獲取的圖像信息訓練成可用于辨識的LBPH識別器,并將其保存到本地。人臉識別系統(tǒng)訓練流程如圖3所示。
圖3 人臉識別系統(tǒng)訓練流程
人臉檢測過程中,檢測到人臉后將人臉使用藍色線框選出,并顯示匹配度。若識別失敗,則用紅色線框框選人臉;若識別成功,則用綠色線框框選人臉,并在右側顯示識別結果。將識別ID通過串口發(fā)送至STM32單片機,由STM32控制語音模塊播放對應人員的問候語句。
2.2.3 口罩檢測
點擊“口罩識別”按鈕,程序進入口罩識別模式。若人員未佩戴口罩用紅色線框框選出,并發(fā)送警報指令至STM32單片機,STM32單片機控制語音模塊播放“請佩戴口罩”警示語;若人員已佩戴口罩,則用綠色線框框選出來??谡謾z測運行結果顯示如圖4所示,佩戴口罩識別流程如圖5所示。
圖4 口罩檢測運行結果
圖5 佩戴口罩識別流程
測試方案:將溫度傳感器分別對準液態(tài)水、額頭,距離
測試條件與儀器:28~48℃隨機溫度的液態(tài)水;單通道熱電偶測溫儀、體溫計。
測試1:非接觸溫度測量功能,測試距離1~4 cm。非接觸測量體溫結果見表1所列。
表1 非接觸測量體溫結果表
測試2:溫度測量范圍28~48 ℃,具有溫度報警功能。報警溫度在30~46℃范圍內可設置。溫度報警功能測試結果見表2所列。
表2 溫度報警功能測試結果表
3.2.1 人臉識別與檢測
測試:身份識別功能,被測人身份識別和身份不符報警(判斷輸入的人臉信息是否與本地已存儲的人臉信息相匹配)。身份識別功能測試結果見表3所列。
表3 身份識別功能測試結果表
3.2.2 口罩識別
測試:被測人是否符合防疫要求(佩戴口罩)判別功能??谡肿R別功能測試結果見表4所列。
表4 口罩識別功能測試結果表
文中設計了一款基于樹莓派和STM32的簡易無接觸溫度測量和人臉識別裝置,該裝置充分利用了基于Haar-Like特征的Adaboost算法,人臉識別測試成功率高,同時具備造價低廉、性能穩(wěn)定等優(yōu)勢。下一步希望在人臉識別檢測與識別實現(xiàn)的算法上進行優(yōu)化,保證在嵌入式平臺流暢運行的基礎上優(yōu)化人臉識別算法的成功率和準確性。