葉永雪,馬鴻雁*,2,3
(1. 北京建筑大學(xué)電氣與信息工程學(xué)院,北京 100044;2. 建筑大數(shù)據(jù)智能處理方法研究北京市重點(diǎn)實(shí)驗(yàn)室,北京 100044;3. 智慧城市國(guó)家級(jí)虛擬仿真實(shí)驗(yàn)教學(xué)中心,北京 100044)
自2019年末新型冠狀病毒肺炎以來(lái),疫情飛速蔓延至全球。在疫情常態(tài)化的當(dāng)下,正確佩戴口罩可以簡(jiǎn)單并有效的減少飛沫傳播,切斷病毒傳播途徑,減緩疫情[1]。但在某些場(chǎng)合,存在口罩佩戴不嚴(yán)謹(jǐn)且無(wú)法檢測(cè)的問(wèn)題[2]。隨著計(jì)算機(jī)視覺(jué)技術(shù)的快速發(fā)展,目標(biāo)檢測(cè)在近幾十年得到了高速發(fā)展。有效的口罩佩戴檢測(cè)系統(tǒng)對(duì)于公眾防范新型冠狀病毒感染,降低感染風(fēng)險(xiǎn)具有十分重要的意義[2]。時(shí)下針對(duì)口罩等小目標(biāo)的檢測(cè)算法主要包含兩類(lèi):基于機(jī)器學(xué)習(xí)的算法以及基于遷移學(xué)習(xí)的算法[3]?;跈C(jī)器學(xué)習(xí)的算法包含單階段檢測(cè)算法與雙階段檢測(cè)算法[5],有檢測(cè)精度高,檢測(cè)速度快等優(yōu)勢(shì),但需要大量的數(shù)據(jù)作為算法支撐。而基于遷移學(xué)習(xí)的算法則可以彌補(bǔ)基于大數(shù)據(jù)和深度學(xué)習(xí)的物體檢測(cè)方法的不足[4]。
機(jī)器學(xué)習(xí)的單階段口罩檢測(cè)算法以YOLO系列為主[5]。J R等基于YOLO算法,設(shè)計(jì)出高檢測(cè)速度的YOLO目標(biāo)檢測(cè)系統(tǒng)。但是該系統(tǒng)存在檢測(cè)邊框不穩(wěn)定等問(wèn)題[6]。在此之上,J R通過(guò)擴(kuò)展數(shù)據(jù)類(lèi)型,提出YOLO v2算法。該算法可以檢測(cè)多達(dá)9000個(gè)目標(biāo)類(lèi)別,但對(duì)口罩等小物體檢測(cè)敏感度低[7]。A K等人對(duì)YOLO的各類(lèi)變種算法進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果顯示,YOLO v3在口罩等小目標(biāo)檢測(cè)中有較高的精確性,但是該算法需大量的算力,不適合嵌入式或移動(dòng)設(shè)備推廣[8]。葉子勛等通過(guò)替換YOLO v4算法的主干特征提取網(wǎng)絡(luò),有效的提高了該算法的魯棒性,該算法考慮到光照的影響。但該算法的泛化能力較差,時(shí)效性也較低[10]。談世磊通過(guò)將YOLO v5網(wǎng)絡(luò)模型用于口罩佩戴檢測(cè),在保證較高的準(zhǔn)確率的同時(shí),大幅度的提高了幀頻速度,解決了口罩佩戴檢測(cè)速度較低下的問(wèn)題。但該研究?jī)H完成前期算法測(cè)試,后期算法部署仍存有局限性[11]。
遷移學(xué)習(xí)在農(nóng)業(yè)病理圖像識(shí)別中取得了不錯(cuò)的應(yīng)用成果。張德軍等人基于GoogLeNet網(wǎng)絡(luò)進(jìn)行遷移學(xué)習(xí),采用圖像增強(qiáng),區(qū)域填充等圖像處理手段,有效的檢測(cè)出芒果的各類(lèi)病狀[12]。趙立新等利用遷移學(xué)習(xí)算法并輔以數(shù)據(jù)增強(qiáng)技術(shù),將Plant Village領(lǐng)域的知識(shí)遷移到棉花病蟲(chóng)害領(lǐng)域,解決了棉花葉部病蟲(chóng)害圖像識(shí)別問(wèn)題[13]。許景輝等提出基于遷移學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)玉米病害識(shí)別模型,并開(kāi)發(fā)圖形用戶界面,可實(shí)現(xiàn)田間玉米大斑病與銹病圖像的智能識(shí)別[14]。黎振等針對(duì)番茄病理葉片存在背景干擾問(wèn)題,提出基于遷移學(xué)習(xí)和k-means分割的方法對(duì)番茄病害葉片進(jìn)行識(shí)別??梢杂行У谋鎰e出白粉病、早疫病、葉霉病、斑點(diǎn)病、黃花曲葉病等[15]。
在新冠疫情的大環(huán)境下,口罩正確佩戴檢測(cè)研究是計(jì)算機(jī)視覺(jué)和模式識(shí)別中備受青睞的熱點(diǎn)[16]。許德剛認(rèn)為,如何在不影響檢測(cè)速度的前提下提高口罩佩戴檢測(cè)精度是未來(lái)發(fā)展的趨勢(shì)[17]。而基于機(jī)器學(xué)習(xí)的單階段口罩佩戴檢測(cè)精度低,雙階段口罩佩戴檢測(cè)速度慢,使其難以產(chǎn)品化[18]。遷移學(xué)習(xí)擁有低數(shù)據(jù)基礎(chǔ)、高檢出率等優(yōu)點(diǎn)[19],使得其產(chǎn)品化較為容易。本文基于領(lǐng)域自適應(yīng)遷移學(xué)習(xí)建立口罩佩戴檢測(cè)模型,并將該模型嵌入到手持?jǐn)z像頭中。
遷移學(xué)習(xí)(Transfer learning)是將已訓(xùn)練好的模型即預(yù)訓(xùn)練模型的參數(shù)遷移到新的模型來(lái)幫助新模型進(jìn)行訓(xùn)練[20]。具體的遷移學(xué)習(xí)過(guò)程見(jiàn)圖1所示。常見(jiàn)的遷移學(xué)習(xí)包括在領(lǐng)域自適應(yīng)遷移學(xué)習(xí)、線遷移學(xué)習(xí)、終身遷移學(xué)習(xí)、異構(gòu)遷移學(xué)習(xí)、深度遷移學(xué)習(xí)、強(qiáng)化遷移學(xué)習(xí)、對(duì)抗遷移學(xué)習(xí)等。
圖1 遷移學(xué)習(xí)過(guò)程
領(lǐng)域自適應(yīng)遷移學(xué)習(xí)是目前較為實(shí)用的遷移學(xué)習(xí)。領(lǐng)域自適應(yīng)遷移學(xué)習(xí)將不同源領(lǐng)域的數(shù)據(jù)及特征映射到相同特征空間,增強(qiáng)目標(biāo)領(lǐng)域的訓(xùn)練,可以達(dá)到更好的訓(xùn)練效果。綜上本文基于領(lǐng)域自適應(yīng)遷移學(xué)習(xí)建立口罩佩戴檢測(cè)模型。圖2為基于領(lǐng)域自適應(yīng)遷移學(xué)習(xí)口罩佩戴檢測(cè)流程圖,該流程主要由三大部分組成。
圖2 領(lǐng)域自適應(yīng)遷移學(xué)習(xí)口罩佩戴檢測(cè)流程
1)數(shù)據(jù)處理:將采集的數(shù)據(jù)集進(jìn)行人體關(guān)鍵點(diǎn)檢測(cè)-人臉?lè)指?去除圖像背景及人體姿態(tài)的影響;然后對(duì)分割后的圖像進(jìn)行預(yù)處理;最后利用數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)充數(shù)據(jù)樣本的數(shù)量。
2)模型建立:將處理后的圖像數(shù)據(jù)按照8:2的比例分為訓(xùn)練集和測(cè)試集。利用訓(xùn)練級(jí)的圖像數(shù)據(jù)訓(xùn)練基于領(lǐng)域自適應(yīng)遷移學(xué)習(xí)口罩模型,并以混淆矩陣的方式檢測(cè)模型的精準(zhǔn)率與召回率。
3)模型輸出與重利用:將輸出的模型嵌入到手持?jǐn)z像頭中,以實(shí)現(xiàn)口罩佩戴檢測(cè)的硬件部署部署。
2.3.1 精準(zhǔn)率與召回率
精準(zhǔn)率與召回率是口罩佩戴檢測(cè)模型好壞的重要的判斷標(biāo)準(zhǔn)。精確率表示檢測(cè)為正的樣本中有多少是真正的正樣本。召回率表示樣本中的正類(lèi)有多少被檢測(cè)正確。本文正確佩戴口罩(mask)為正類(lèi),未佩戴口罩(face)、錯(cuò)誤佩戴口罩(mistake)為負(fù)類(lèi)。則精準(zhǔn)率P與召回率R如式(1)所示
(1)
式中:TP—正類(lèi)檢測(cè)為正類(lèi)數(shù);
FN—正類(lèi)檢測(cè)為負(fù)類(lèi)數(shù);
FP—負(fù)類(lèi)檢測(cè)為正類(lèi)數(shù);
TN—負(fù)類(lèi)檢測(cè)為負(fù)類(lèi)數(shù)。
2.3.2 混淆矩陣
混淆矩陣用于描繪樣本數(shù)據(jù)的真實(shí)屬性與識(shí)別結(jié)果類(lèi)型之間的關(guān)系。表1顯示口罩佩戴檢測(cè)模型中各個(gè)類(lèi)別檢測(cè)的結(jié)果。
表1 口罩佩戴檢測(cè)模型混淆矩陣
在表1口罩佩戴檢測(cè)模型混淆矩陣中,X1%表示正確佩戴口罩(mask)數(shù)據(jù)中模型檢測(cè)正確的百分比。Y1%表示正確佩戴口罩(mask)數(shù)據(jù)中模型檢測(cè)錯(cuò)誤,即檢測(cè)為未佩戴口罩(face)的百分比。同理,Y3%表示不正確佩戴口罩(mistake)數(shù)據(jù)中模型檢測(cè)錯(cuò)誤,即檢測(cè)為正確佩戴口罩(mask)的百分比。該模型希望X1%,X2%,X3%趨近于100%。
2.3.3 基于混淆矩陣的模型準(zhǔn)確率
基于混淆矩陣的分類(lèi)準(zhǔn)確率用于反映模型對(duì)不同類(lèi)別目標(biāo)檢測(cè)的準(zhǔn)確性。該模型的數(shù)據(jù)集類(lèi)別分為3類(lèi):正確佩戴口罩(mask)類(lèi),未佩戴口罩(face)類(lèi)、錯(cuò)誤佩戴口罩(mistake)類(lèi)。在口罩佩戴檢測(cè)的混淆矩陣中,模型準(zhǔn)確率H計(jì)算見(jiàn)式(2)。
(2)
式中:Xi—表1中的X1%,X2%,X3%;
hi—類(lèi)別數(shù)據(jù)對(duì)應(yīng)數(shù)據(jù)集中的占比。
3.1.1 數(shù)據(jù)圖像采集裝置
本文通過(guò)懸掛式攝像頭采集人臉是否佩戴口罩圖像數(shù)據(jù)。攝像頭具體參數(shù)如下:支持Windows操作系統(tǒng),有效像素為210萬(wàn),信噪比大于50dB,鏡頭焦距為3.6mm,采用標(biāo)準(zhǔn)USB2.0接口,兼容USB3.0接口,最大分辨率為1280×720,視頻輸出格式為AVI,圖片輸出格式為JPG。視頻輸出大小為YUY2(640×480),輸出圖像質(zhì)量滿足Skype &Lynx要求。攝像頭如圖3所示
圖3 數(shù)據(jù)圖像采集攝像頭
3.1.2 數(shù)據(jù)圖像采集類(lèi)別
采集的數(shù)據(jù)圖像包括三大類(lèi):正確佩戴口罩(mask)類(lèi),共采集數(shù)據(jù)圖像3548張;未佩戴口罩(face)類(lèi),共采集數(shù)據(jù)圖像1156張;錯(cuò)誤佩戴口罩(mistake)類(lèi),共采集數(shù)據(jù)圖像1352張。采集的數(shù)據(jù)圖像總計(jì)超6000張。
正確佩戴口罩(mask)類(lèi)數(shù)據(jù)為正類(lèi),該數(shù)據(jù)在采集過(guò)程中考慮到人臉配飾的遮擋與否的情況,即考慮到被采集人員的性別,是否佩戴帽子,是否佩戴眼鏡以及佩戴口罩的顏色等情況。詳見(jiàn)表2正確佩戴口罩類(lèi)采集情況。
表2 正確佩戴口罩類(lèi)采集情況
錯(cuò)誤佩戴口罩(mistake)類(lèi)為負(fù)類(lèi),主要包含三大類(lèi)別:mis1-口罩佩戴未遮住鼻腔類(lèi),mis2-口罩佩戴未遮住口鼻類(lèi),mis3-口罩未完全佩戴類(lèi)。詳見(jiàn)圖4 錯(cuò)誤佩戴口罩(mistake)類(lèi)示例圖。
圖4 錯(cuò)誤佩戴口罩(mistake)類(lèi)示例圖
人體關(guān)鍵點(diǎn)檢測(cè)技術(shù)有兩種較為準(zhǔn)確的方案,即自下而上檢測(cè)和自上而下檢測(cè)。本文采用的Open Pose算法屬于典型的自下而上的檢測(cè)算法。具有大幅縮短檢測(cè)周期的優(yōu)勢(shì)。Open Pose將輸入的圖像樣本,經(jīng)過(guò)VGG19卷積網(wǎng)絡(luò)提取相關(guān)特征;使用CNN網(wǎng)絡(luò)通過(guò)兩個(gè)方向上分別提取置信度和關(guān)聯(lián)度;將上述兩個(gè)信息使用偶匹配的方法求出其關(guān)聯(lián),將同人的關(guān)鍵點(diǎn)連接起來(lái),合并成整體骨架。原理見(jiàn)圖5人體關(guān)鍵點(diǎn)檢測(cè)Open Pose實(shí)現(xiàn)原理。
圖5 人體關(guān)鍵點(diǎn)檢測(cè)Open Pose實(shí)現(xiàn)原理
人體面部包含6個(gè)關(guān)鍵點(diǎn),即右耳、右目、鼻、左目、左耳以及頸。基于人體關(guān)鍵點(diǎn)的人臉面部分割:①以頸為基點(diǎn),以平行于原始圖像下邊的為分割圖片的下邊;②以左耳為基點(diǎn),以平行原始圖像左邊為分割圖像左邊;③以右耳為基點(diǎn),以平行原始圖像右邊為分割圖像右邊;④以左、右目中較高的一個(gè)為基點(diǎn),以平行原始圖像上邊為分割圖像上邊。詳見(jiàn)圖6基于人體關(guān)鍵點(diǎn)的圖像分割原理。分割后的圖像包含所有面部信息,可以有效的排除背景及人姿態(tài)的影響。將分割完后的圖像進(jìn)行人體關(guān)鍵點(diǎn)去除,構(gòu)造數(shù)據(jù)集。
圖6 基于人體關(guān)鍵點(diǎn)的圖像分割原理
3.3.1 圖像預(yù)處理
為平滑人臉圖像,并提高圖像數(shù)字化的視感質(zhì)量。本文通過(guò)加入高斯噪聲,以空間域?yàn)V波法去除噪聲。去除噪聲后,將圖片數(shù)字化,數(shù)字化后數(shù)據(jù)集的類(lèi)別特征如圖7所示。
圖7 圖像預(yù)處理后類(lèi)別特征
3.3.2 圖像數(shù)據(jù)增強(qiáng)
基于領(lǐng)域自適應(yīng)遷移學(xué)習(xí)可能存在過(guò)擬合問(wèn)題,過(guò)擬合會(huì)導(dǎo)致口罩佩戴檢測(cè)模型泛化能力變差,在新的圖像數(shù)據(jù)集上不能檢測(cè),會(huì)導(dǎo)致后期硬件部署后,出現(xiàn)無(wú)法檢測(cè)的問(wèn)題。
為了防止出現(xiàn)過(guò)擬合問(wèn)題,本研究采取數(shù)據(jù)增強(qiáng)的方法來(lái)防止模型過(guò)擬合。通過(guò)對(duì)圖像的隨機(jī)垂直翻轉(zhuǎn)、隨機(jī)水平轉(zhuǎn)、隨機(jī)縮放等操作,擴(kuò)充原始口罩圖像數(shù)據(jù)集,可以使訓(xùn)練更多的輪數(shù),提高模型的準(zhǔn)確度。對(duì)擴(kuò)充后的人臉圖像數(shù)據(jù)集樣本以8:2的比例劃分為訓(xùn)練集和測(cè)試集。
將6000張采集的圖像平均分為三組,每組數(shù)據(jù)集分別進(jìn)行帶有人臉圖像分割、不帶人臉圖像分割的口罩佩戴檢測(cè)試驗(yàn)?;谌四槇D像分割口罩佩戴檢測(cè)模型測(cè)試集結(jié)果如圖8所示。
圖8 基于圖像分割口罩佩戴檢測(cè)模型測(cè)試結(jié)果
圖8為基于圖像分割口罩佩戴檢測(cè)模型第二次實(shí)驗(yàn)測(cè)試集結(jié)果3D顯示圖。從圖8可以看出,測(cè)試集總計(jì)395張圖像。其中face類(lèi)圖像總計(jì)103張,mask類(lèi)圖像總計(jì)184張,mistake類(lèi)圖像總計(jì)108張;而face類(lèi)識(shí)別錯(cuò)誤1張,mask類(lèi)識(shí)別錯(cuò)誤3張,mistake類(lèi)識(shí)別錯(cuò)誤2張。該模型的具體準(zhǔn)確率見(jiàn)表3。
表3 基于圖像分割口罩佩戴檢測(cè)模型第二次實(shí)驗(yàn)測(cè)試集混淆矩陣
圖像數(shù)據(jù)占比為:mask:face:mistake=184:103:108。則該模型基于混淆矩陣的模型準(zhǔn)確率H為98.48%,具體的計(jì)算如下所示
三次仿真結(jié)果見(jiàn)表4。從表4可以看出,帶有人臉圖像分割口罩佩戴檢測(cè)模型的平均準(zhǔn)確率比不帶人臉圖像分割口罩佩戴檢測(cè)模型平均準(zhǔn)確率高6%。
表4 三次實(shí)驗(yàn)不同模型準(zhǔn)確率對(duì)比
將訓(xùn)練好的模型嵌入至Open Mv設(shè)備中,該設(shè)備如圖9所示。該設(shè)備的攝像頭焦距為2.8mm,光圈為F2.0。該設(shè)備的處理器主芯片型號(hào)為STM32H743II,芯片架構(gòu)為ARM M7。
圖9 Open Mv手持設(shè)備
Open Mv設(shè)備采用Python語(yǔ)言,該硬件在處理嵌入式模型的具體情況見(jiàn)圖10硬件處理情況。從圖10中可以看出該設(shè)備在處理該模型時(shí)可達(dá)到4fps的幀率,且連續(xù)3次識(shí)別口罩未正確佩戴的概率均超過(guò)95%,這說(shuō)明該嵌入式模型可以完成口罩佩戴檢測(cè)。
圖10 嵌入式程序硬件處理情況
基于圖像分割口罩佩戴檢測(cè)模型的準(zhǔn)確率超98%,但在不同類(lèi)別的檢測(cè)上,該模型的檢測(cè)的準(zhǔn)確率也不相同。此外,模型在嵌入至硬件設(shè)備在,由于硬件攝像頭,主芯片處理情況等各類(lèi)原因,導(dǎo)致模型的準(zhǔn)確率下降。因此,在嵌入至移動(dòng)端后,為防止誤判,采用連續(xù)檢測(cè)正確邏輯增加判斷準(zhǔn)確率。具體的邏輯見(jiàn)圖11所示。通過(guò)連續(xù)檢測(cè)這一系統(tǒng),口罩正確佩戴檢測(cè)不會(huì)產(chǎn)生誤檢測(cè)。
圖11 口罩佩戴連續(xù)檢測(cè)系統(tǒng)
本文提出基于人體關(guān)鍵點(diǎn)檢測(cè)的人臉圖像分割與遷移學(xué)習(xí)的口罩佩戴檢測(cè)算法,通過(guò)實(shí)驗(yàn)對(duì)比并分析發(fā)現(xiàn),不帶人臉圖像分割口罩佩戴檢測(cè)模型仿真平均準(zhǔn)確率比帶人臉圖像分割口罩佩戴檢測(cè)模型仿真平均準(zhǔn)確率低6%。這說(shuō)明基于人體關(guān)鍵點(diǎn)檢測(cè)的人臉圖像分割技術(shù)在口罩佩戴檢測(cè)技術(shù)中有了較大的提升。
將基于人體關(guān)鍵點(diǎn)檢測(cè)與遷移學(xué)習(xí)的口罩佩戴檢測(cè)系統(tǒng)部署于Open Mv硬件中,在該硬件設(shè)備處理幀數(shù)快,模型識(shí)別率高。通過(guò)設(shè)計(jì)的口罩佩戴連續(xù)檢測(cè)系統(tǒng),使得該模型在進(jìn)行口罩佩戴檢測(cè)中表現(xiàn)良好。