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