黃鏡塵 李光 李敏
摘要:本文針對口罩佩戴狀態(tài)檢測模型部署進(jìn)行研究,利用ARMv8架構(gòu)樹莓派平臺,基于Debian-Pi-Aarch64操作系統(tǒng),結(jié)合Paddle-Lite框架,實(shí)現(xiàn)口罩佩戴情況的實(shí)時(shí)檢測,可以正確識別出圖片中口罩佩戴情況,并且能夠通過CSI攝像頭視頻采樣進(jìn)行實(shí)時(shí)檢測,具有較快的識別速度,對于人臉的成功辨認(rèn)能力也得到了很好的優(yōu)化,可以提高在辨認(rèn)視頻中的移動面部的識別成功率,為我國疫情防控的有序進(jìn)行提供重要手段。
關(guān)鍵詞:樹莓派;目標(biāo)識別;口罩佩戴識別
目前新冠肺炎疫情在我國的局勢已經(jīng)逐漸趨向于穩(wěn)定[1],不過從國際層面上講,依舊處于一個(gè)嚴(yán)峻的情況,即使各國疫苗初步研制成功并且全球人民都在逐步接種疫苗,但是面對著各種病毒的變株我們必須還是需要保持很高的警惕性。佩戴口罩早已經(jīng)成為我們生活中的一部分,這一行為可以有效阻止病毒通過我們的呼吸進(jìn)入體內(nèi),佩戴口罩在其他層面也具有重要意義,可以防止我們個(gè)人的唾液傳播到空氣中去。佩戴口罩可以有效保護(hù)我們自身安全和身體健康。如果說正確的佩戴口罩是疫情防控的重要手段之一,那么口罩佩戴狀態(tài)的檢測就是人們正確行使這一手段的重要保證,此項(xiàng)技術(shù)如果可以成功應(yīng)用在人流量較高的一些公眾場合可以有效的節(jié)約人力物力,也可以使社會和諧與穩(wěn)定得到很好的保障。
Paddle-lite[是從Paddle Mobile的版本中升級得到,不僅是支持手機(jī)端還包括了其他眾多硬件平臺的多樣化情況的高效預(yù)測框架。Lite在與PaddlePaddle繼續(xù)這對接的同時(shí),也可以使用其他的框架訓(xùn)練產(chǎn)生的模型。
1.口罩模型 Pyramid box
Pyramid box可以獲取不同層級的結(jié)構(gòu)圖以及anchor,是從VGG16的骨架和anchor的設(shè)計(jì)中擴(kuò)展得到的,在VGG16的骨架代碼中增加一個(gè)底層級的特征金字塔層,而且為了獲得最后的結(jié)果,每一個(gè)金字塔檢測層的分支網(wǎng)絡(luò)是使用上下文敏感結(jié)構(gòu)來擔(dān)任的。這種架構(gòu)的關(guān)鍵就是可以為每個(gè)層級的人臉生成anchor。主要網(wǎng)絡(luò)結(jié)構(gòu)流程如下圖1所示:
該算法主干網(wǎng)絡(luò)層中的基本卷積層和額外卷積層是同S3FD相同的[2],只不過為了其深度增加了許多的卷積層,并且anchors是不需要任何行動就可以自動生成的,不存在其他的額外的標(biāo)簽,這一點(diǎn)可以很好的節(jié)省了時(shí)間成本,并且在運(yùn)行程序的時(shí)候也不用進(jìn)行十分復(fù)雜的計(jì)算就可以很輕松的得到我們需要的結(jié)果。
2.系統(tǒng)更新及準(zhǔn)備工作
(1)替換鏡像源與pip源
由于在國內(nèi)是沒有辦法成功進(jìn)入樹莓派進(jìn)行系統(tǒng)更新,因此需要替換為我們國內(nèi)的鏡像站,其中我們可以替換的鏡像源就有很多選擇了,這里我們需要使用樹莓派的nano命令進(jìn)行文件的編輯,使用該命令編輯資源列表文件,在其中將不需要的代碼進(jìn)行注釋,然后添加我們所需的鏡像源。在更換pip源的時(shí)候需要先創(chuàng)建pip目錄,然后查看此目錄的列表,編輯其中的pip.conf,給其編輯需要寫入的文件。
(2)運(yùn)行環(huán)境
為了保證程序可以正常運(yùn)行我們還需要下載以下工具:gcc g++ Make wget unzip libopencv-dev pkg-config和CMake。
gcc以及g++為GNU的C和C++的編譯器,在實(shí)行編譯的工作過程中,首先需要進(jìn)行預(yù)處理生成文件名為.i的文件;將該文件進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換為匯編語言,并生成文件名為.s的文件;將轉(zhuǎn)換好的匯編語言進(jìn)行下一步轉(zhuǎn)換,轉(zhuǎn)變?yōu)榭梢杂蓹C(jī)器是別的目標(biāo)代碼并生成文件名為.o的文件;最后與代碼進(jìn)行連接,生成可以被執(zhí)行的程序。至此編譯工作全部完成。
Make在這里的含義為GNU Make,Make的作用其實(shí)就是通過編寫的make文件對整個(gè)工作的編譯和連接進(jìn)行描述,這樣做的好處在于面對一些過程比較復(fù)雜的工程作業(yè)只需要通過一個(gè)命令就可以完成。
wget是一個(gè)下載工具的文件,十分穩(wěn)定并且也具有很強(qiáng)的適應(yīng)性,現(xiàn)在支持?jǐn)帱c(diǎn)下載,也支持多種下載方式下載文件,支持使用代理的服務(wù)器,在用戶設(shè)置方面也十分簡便。
3.程序結(jié)果與分析
使用攝像頭進(jìn)行實(shí)時(shí)監(jiān)測一共進(jìn)行了五種不同情況的檢測,以驗(yàn)證該系統(tǒng)的性能以及應(yīng)用條件,從識別結(jié)果得知,總體檢測結(jié)果的準(zhǔn)確率較高,當(dāng)檢測目標(biāo)的面部為正常尺寸且識別對象較少的情況下,課題研究結(jié)果令人較滿意,但是當(dāng)沒有佩戴口罩的目標(biāo)在進(jìn)行佩戴口罩的過程中會出現(xiàn)顯示異常的情況,顯示框中佩戴口罩與未佩戴口罩會交替出現(xiàn),在待檢測人臉數(shù)量較多時(shí)偶爾會出現(xiàn)部分目標(biāo)無法識別的情況,不過在面對檢測尺寸較小的人臉時(shí)具有不錯(cuò)的識別情況。就流暢度而言,在沒有檢測人臉的時(shí)候幀率比較流暢,當(dāng)檢測目標(biāo)出現(xiàn)的時(shí)候就會出現(xiàn)降幀的現(xiàn)象,當(dāng)檢測目標(biāo)過多的情況下幀率會維持在一個(gè)較低的水平,即使相較于其他的方案講流暢性有所優(yōu)勢,不過在平時(shí)使用的過程當(dāng)中還是會感覺到不適應(yīng),很難達(dá)到一個(gè)流暢水平。而且在使用CSI攝像頭拍攝的時(shí)候有時(shí)會出現(xiàn)顯示界面的閃退,初步判斷是由于攝像頭的連接出現(xiàn)問題導(dǎo)致拍攝工作出現(xiàn)異常。
4.結(jié)語
本項(xiàng)目是在樹莓派平臺上面實(shí)現(xiàn)對口罩模型的識別與檢測,硬件選擇方面的必須品為樹莓派4B與SD存儲卡,由于需要進(jìn)行實(shí)時(shí)視頻的顯示,將USB攝像頭,IP攝像頭和CSI攝像頭綜合考量過后選擇了CSI攝像頭進(jìn)行視頻的拍攝工作,并且根據(jù)本項(xiàng)目需要進(jìn)行一些代碼的操作以及編譯工作選擇鼠標(biāo),鍵盤,顯示器來進(jìn)行顯示以及操作工作,考慮到樹莓派的CPU需要長時(shí)間進(jìn)行檢測工作,為了保證CPU處在一個(gè)安全的溫度區(qū)間需要在樹莓派上面安裝散熱風(fēng)扇。
軟件環(huán)境首先需要進(jìn)行的是樹莓派操作系統(tǒng)的燒錄工作,面對本項(xiàng)目的一些特性選擇了更加與之匹配的Debian-Pi-Aarch64系統(tǒng),在燒錄過程中主要需要注意SD卡的格式化操作,需要使用格式換軟件進(jìn)行格式化的操作,接下來就是環(huán)境的配置工作,在保證網(wǎng)絡(luò)環(huán)境良好的前提下,系統(tǒng)的更新工作可以順利進(jìn)行。
參考文獻(xiàn):
[1] 賈艷,王超,朱士俊,尹金淑,張國平,田向陽,盧祖洵.新冠肺炎疫情防控知識、技能和心理狀況
[2] Shifeng Zhang, Xiangyu Zhu, Zhen Lei, Hailin Shi, Xiaobo Wang, Stan Z. Li.S3FD: Single Shot Scale-invariant Face Detector[J].ICCV2017. Italy.2017
作者簡介:黃鏡塵1999.07,山東交通學(xué)院本科學(xué)生,指導(dǎo)老師:李光、李敏