姚華瑩,彭亞雄,陸安江
(貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院,貴陽 550025)
近年來,人工智能被研究人員廣泛關(guān)注并設(shè)計(jì)研究出大量的人工智能產(chǎn)品[1]。深度學(xué)習(xí)中的圖像識(shí)別技術(shù)取得的豐碩成果讓人們的生活方式更加智能化、高效化。菜品智能識(shí)別可以部署在智能餐廳,用于菜品價(jià)格自動(dòng)結(jié)算,安裝在移動(dòng)設(shè)備實(shí)時(shí)檢測(cè)當(dāng)前食物的卡路里等詳細(xì)信息等[2-4],目標(biāo)檢測(cè)算法可以實(shí)現(xiàn)這一效果。卷積神經(jīng)網(wǎng)絡(luò)通過輸入的圖像數(shù)據(jù)進(jìn)行訓(xùn)練,像人類的大腦一樣學(xué)習(xí)圖像特征[5],準(zhǔn)確的分類出菜品。目標(biāo)檢測(cè)算法分為雙階段檢測(cè)和單階段檢測(cè)。其中,雙階段檢測(cè)算法中具有代表性的是R-CNN[6]和Faster-R-CNN[7]算法,這類雙階段算法檢測(cè)精度高,但檢測(cè)速度較慢。另一類單階段檢測(cè)算法YOLO[8](You Only Look Once),是繼R-CNN 之后,為解決目標(biāo)檢測(cè)速度問題而提出的另一個(gè)框架,在定位邊界框的同時(shí)獲取類別概率,犧牲了一部分檢測(cè)精度以達(dá)到更快的檢測(cè)速度;由Liu 在ECCV 上提出的多尺度單發(fā)射擊檢測(cè)算法[9](Single Shot MultiBox Detector,SSD)在不同尺度的特征圖中多步提取特征。與R-CNN 相比,SSD速度更快;與YOLO 相比,SSD 在檢測(cè)精度mAP 上有更好的性能,在不降低檢測(cè)精度的同時(shí)保證了檢測(cè)速度。由于以上目標(biāo)檢測(cè)模型包含大量的卷積計(jì)算,有大量參數(shù),僅能運(yùn)行在高性能圖像處理器上,不利于移植到數(shù)據(jù)處理弱的平臺(tái)。
為此,本文基于優(yōu)秀的輕量型神經(jīng)網(wǎng)絡(luò)MobileNetV2[10]對(duì)SSD 網(wǎng)絡(luò)進(jìn)行改進(jìn),構(gòu)建輕量型的菜品識(shí)別模型。使用注意力機(jī)制[11]和混洗通道[12]構(gòu)建注意力逆殘差結(jié)構(gòu)提高檢測(cè)準(zhǔn)確率。設(shè)計(jì)回歸定位損失函數(shù),加快模型收斂速度。根據(jù)菜品數(shù)據(jù)集特點(diǎn)設(shè)置回歸預(yù)測(cè)層,提升模型檢測(cè)速度。通過使用數(shù)據(jù)集Chinesefood 對(duì)模型訓(xùn)練,驗(yàn)證了本文提出的Att_Mobilenetv2_SSDLite 目標(biāo)檢測(cè)網(wǎng)絡(luò)檢測(cè)效果更佳。
單階段檢測(cè)是基于回歸的算法(例如YOLO、SSD 等),把提取候選區(qū)域框和特征提取融合在同一網(wǎng)絡(luò)中,同時(shí)實(shí)現(xiàn)候選區(qū)域選擇和分類。檢測(cè)網(wǎng)絡(luò)由基礎(chǔ)網(wǎng)絡(luò)層和回歸預(yù)測(cè)層兩部分組成?;A(chǔ)網(wǎng)絡(luò)層用于提取輸入圖像特征,基礎(chǔ)網(wǎng)絡(luò)很大程度上能影響檢測(cè)的精度、速度以及檢測(cè)網(wǎng)絡(luò)體積;回歸預(yù)測(cè)層用于生成預(yù)測(cè)框及分類目標(biāo)。SSD 采用基于金字塔特征層的檢測(cè)方式,在不同尺度的特征圖上進(jìn)行位置回歸和分類。如圖1 所示。SSD 模型結(jié)構(gòu)的前端是用于提取圖像特征的基礎(chǔ)網(wǎng)絡(luò)層,后端是用于回歸預(yù)測(cè)的附加層。
圖1 SSD 網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network architecture of SSD
基礎(chǔ)網(wǎng)絡(luò)層使用了VGG-16[13]網(wǎng)絡(luò)的前5 層卷積層,并將VGG-16 網(wǎng)絡(luò)中原有的全連接層FC6 和FC7 改為卷積層Conv6 和Conv7,提取基本特征;在后端附加4 個(gè)尺度大小不同的卷積層,用于高級(jí)特征提取。表1 為SSD 網(wǎng)絡(luò)參數(shù),整個(gè)網(wǎng)絡(luò)包含6 個(gè)特征預(yù)測(cè)層,前端淺層特征圖分辨率高,用于預(yù)測(cè)小目標(biāo);后端深層特征圖分辨率低,用來預(yù)測(cè)較大的目標(biāo)。
表1 SSD 網(wǎng)絡(luò)參數(shù)Tab.1 SSD network parameters
SSD 網(wǎng)絡(luò)在基礎(chǔ)網(wǎng)絡(luò)中使用了VGG-16,而VGG-16 使用了大量的傳統(tǒng)卷積,導(dǎo)致模型體積龐大,參數(shù)量多,這些弊端導(dǎo)致其難以部署在計(jì)算力和存儲(chǔ)空間受限的設(shè)備中。為了解決這一問題,本文基于MobileNetV2 輕量型卷積網(wǎng)絡(luò)替換VGG-16 網(wǎng)絡(luò),對(duì)SSD 進(jìn)行輕量化改進(jìn),針對(duì)菜品目標(biāo)檢測(cè)的特點(diǎn),修改SSD 網(wǎng)絡(luò)層結(jié)構(gòu),獲得針對(duì)菜品識(shí)別的目標(biāo)檢測(cè)網(wǎng)絡(luò)Att_Mobilenetv2_SSDLite。
MobileNetV2 網(wǎng)絡(luò)是Google 團(tuán)隊(duì)對(duì)MobileNetV1的進(jìn)一步調(diào)整,沿用了深度可分離卷積,減少卷積計(jì)算量,同時(shí)借鑒ResNet 中的殘差結(jié)構(gòu),設(shè)計(jì)了逆殘差結(jié)構(gòu),提高網(wǎng)絡(luò)對(duì)低維空間的特征提取能力[14]。
深度可分離卷積[15](Depthwise sparable convol?ution),將傳統(tǒng)卷積分為一個(gè)深度卷積和一個(gè)點(diǎn)卷積。首先進(jìn)行深度卷積,即對(duì)每個(gè)輸入的通道,分別用單個(gè)卷積核進(jìn)行相對(duì)應(yīng)的卷積計(jì)算后,用1×1 的卷積核對(duì)深度卷積結(jié)果進(jìn)行線性組合,構(gòu)建新的特征,這個(gè)過程為點(diǎn)卷積。如果不考慮偏置參數(shù),深度分離后的卷積參數(shù)運(yùn)算量為:
標(biāo)準(zhǔn)卷積計(jì)算量為:
其中:DK·DK為卷積核尺寸;DF·DF為輸入圖像尺寸;M和N分別是輸入通道數(shù)量和輸出通道數(shù)量。傳統(tǒng)卷積的計(jì)算量是深度可分離卷積的1/M +1/K2,當(dāng)卷積核大小為3×3 時(shí),計(jì)算量相比傳統(tǒng)卷積減少了9 倍多,能明顯提升運(yùn)算速度及檢測(cè)效率。
殘差結(jié)構(gòu)是先對(duì)輸入圖像降維、卷積、再升維,如圖2(a)所示。文獻(xiàn)[16]中先使用1×1 的卷積,將輸入通道壓縮至原來的1/4,然后再用3×3 的卷積進(jìn)行計(jì)算,最后使用1×1 的卷積對(duì)通道數(shù)目還原。殘差結(jié)構(gòu)通過旁干分支,將前端特征與通過一系列卷積處理后的特征進(jìn)行融合,可以提高整個(gè)網(wǎng)絡(luò)的特征提取能力。如圖2(b)所示,MobileNetV2的逆殘差結(jié)構(gòu)與殘差結(jié)構(gòu)相反,對(duì)輸入圖像升維、通過深度可分離卷積、降維。先使用了1×1 卷積,將輸入通道數(shù)目擴(kuò)大至原來的6 倍,再經(jīng)過深度可分離卷積處理,最后通過1×1 卷積恢復(fù)通道數(shù)目。對(duì)輸入通道數(shù)目擴(kuò)展是一個(gè)升維的過程,這樣做的好處是,可以提取低維特征圖上的有效特征,使用了深度可分離卷積后計(jì)算量也不會(huì)增加[17]。與ResNet的殘差結(jié)構(gòu)一樣,最后會(huì)將主干分支與旁干分支特征融合。
圖2 殘差結(jié)構(gòu)與逆殘差結(jié)構(gòu)對(duì)比Fig.2 Comparison of residual structure and inverse residual structure
MobileNetV2 的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)見表2,共包含19個(gè)層。其中,在7 個(gè)不同尺度的特征圖上會(huì)重復(fù)逆殘差結(jié)構(gòu)(Inverted Residual)1~4 次不等,Conv2 為普通卷積,在通過所有的逆殘差塊后,特征圖經(jīng)過一個(gè)卷積層和平均池化層(Avgpool)可以得到k個(gè)類別的分類。
表2 MobileNetV2 網(wǎng)絡(luò)參數(shù)Tab.2 MobileNetV2 network parameters
Att_Mobilenetv2_SSDLite 目標(biāo)檢測(cè)算法網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示。將SSD 的基礎(chǔ)卷積層替換為改進(jìn)后的MobileNetV2,在逆殘差結(jié)構(gòu)中增加通道注意力機(jī)制和混洗通道加強(qiáng)特征融合,然后對(duì)區(qū)域候選框進(jìn)行重構(gòu)。分別在網(wǎng)絡(luò)的Conv11、Conv13 _2、Conv14_2、Conv15_2、Conv16_2 這5 個(gè)尺寸不同的特征層中生成預(yù)測(cè)框,預(yù)測(cè)框的數(shù)量由8 732減少為2 254;最后通過非極大值抑制,去除置信度低于0.5的邊框線條,得到檢測(cè)結(jié)果。
圖3 Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Network architecture of Att_Mobilenetv2_SSDLite
Att_Mobilenetv2_SSDLite 使用深度可分離卷積,替換原SSD 網(wǎng)絡(luò)中額外增加層的標(biāo)準(zhǔn)卷積層,極大減少了運(yùn)算量?;A(chǔ)網(wǎng)絡(luò)使用MobileNetV2,輕量型的基礎(chǔ)網(wǎng)絡(luò)對(duì)SSD 網(wǎng)絡(luò)的檢測(cè)精度、檢測(cè)速度和模型體積上都有良好的影響。
Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò)模型參數(shù)見表3?;A(chǔ)網(wǎng)絡(luò)層保留了MobileNetV2 的Conv1~Conv11,使用Att-Inverted Residual 逆殘差結(jié)構(gòu),縮減殘差結(jié)構(gòu)的重復(fù)次數(shù),去掉最后用于分類的全連接層和池化層;額外添加3 個(gè)卷積層作回歸預(yù)測(cè)層。
表3 Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò)參數(shù)Tab.3 network parameters of Att_Mobilenetv2_SSDLite
如圖4 所示,本文采用的注意力逆殘差結(jié)構(gòu)(Attention Inverted Residual)與ResNet 相反,在主干分支先對(duì)輸入通道使用1×1 的卷積進(jìn)行擴(kuò)張,在高維度上再使用深度卷積,而后再次經(jīng)過1×1 的卷積;在殘差結(jié)構(gòu)旁干分支中使用注意力算法,融合主干分支和旁干分支兩類特征,最后將學(xué)習(xí)到的特征,通過混洗通道打亂重組,破除固定通道間特征無法學(xué)習(xí)的障礙,進(jìn)一步提高網(wǎng)絡(luò)的特征提取能力。
圖4 Att_InvertedResidual 結(jié)構(gòu)Fig.4 Att_InvertedResidual structure
旁干分支中,先對(duì)輸入通道進(jìn)行全局池化壓縮操作(Squeeze),經(jīng)過壓縮處理后的二位特征通道將變成不同值的實(shí)數(shù),表示其在特征通道中響應(yīng)的全局分布;然后經(jīng)過FC 全連接層、ReLU、FC、Sigmoid的激活操作(Excitation),得到每個(gè)實(shí)數(shù)對(duì)應(yīng)的權(quán)重;最后再經(jīng)過加權(quán)操作(Reweight),分別給每個(gè)通道特征乘上權(quán)重,將權(quán)值賦給對(duì)應(yīng)通道。通過注意力加權(quán)操作后,網(wǎng)絡(luò)將重點(diǎn)關(guān)注權(quán)值更大的通道特征,有利于提取特征。
在逆殘差結(jié)構(gòu)的最后,用混洗通道操作(shuffle channel)打亂重組通道特征,是基于通道分組卷積實(shí)現(xiàn)的混洗通道卷積,將輸入通道特征分為g組,每組分別與對(duì)應(yīng)的卷積核卷積,卷積計(jì)算量降為原有的1/g,然后對(duì)g組通道打亂重組。原本封閉固定的通道在打亂重組后特征得到了交流,解決了由固定分組導(dǎo)致特征融合效果差的問題。
在本文提出的Att_MobileNetV2_SSDLite 模型中,將基礎(chǔ)網(wǎng)絡(luò)MobileNetV2 的逆殘差結(jié)構(gòu)替換為Att-InvertedResidual 結(jié)構(gòu)。實(shí)驗(yàn)證明,本文的殘差結(jié)構(gòu)可以在減少卷積層數(shù)量的同時(shí)保證特征提取能力。
特征層中提取到的預(yù)測(cè)框,通過最后的非極大值抑制,得到置信度較高的預(yù)測(cè)框,再經(jīng)過損失函數(shù)處理后,最終輸出檢測(cè)結(jié)果。SSD 的損失函數(shù)包含預(yù)測(cè)框定位回歸損失(SmoothL1 損失函數(shù)[18])和類別置信度分類損失(Softmax損失函數(shù))。
在回歸過程中,對(duì)預(yù)測(cè)框和默認(rèn)框重合程度的度量標(biāo)準(zhǔn)是交并比[9](IOU),表示預(yù)測(cè)框和默認(rèn)框重合部分占預(yù)測(cè)框和默認(rèn)框總面積的比例,用公式表示為:
但這種簡(jiǎn)單的面積交并比,并不能很好的反應(yīng)預(yù)測(cè)框和默認(rèn)框的重疊情況。例如:A∩B =0 時(shí)IOU =0,這時(shí)IOU無法反向傳遞梯度,不能指導(dǎo)訓(xùn)練參數(shù)改變;并且當(dāng)A∩B≠0 時(shí),預(yù)測(cè)框和默認(rèn)框有多種重疊形式,同樣不能指導(dǎo)梯度傳遞。為此,本文考慮預(yù)測(cè)框與默認(rèn)框的重疊程度,對(duì)IOU的計(jì)算方式做部分改進(jìn)。將預(yù)測(cè)框與默認(rèn)框兩中心點(diǎn)歐式距離作為懲罰項(xiàng),與預(yù)測(cè)框和默認(rèn)框重疊面積的最小矩形對(duì)角線做比,用公式表示為:
其中,d2(A,B)表示預(yù)測(cè)框A中心點(diǎn)與默認(rèn)框B中心點(diǎn)的歐式距離,c2表示預(yù)測(cè)框A與默認(rèn)框B最小覆蓋的矩形面積的對(duì)角線距離。用左上和右下兩點(diǎn)坐標(biāo)表示定位框位置,預(yù)測(cè)框記:A =(x1,y1,x2,y2);默認(rèn)框記:;預(yù)測(cè)框A與默認(rèn)框B最小覆蓋的矩形C記:。
預(yù)測(cè)框面積S與默認(rèn)框面積S′分別記為:
重疊面積SO為:
——針對(duì)江蘇省連云港市第二人民醫(yī)院腐敗案暴露出的問題和搞“團(tuán)團(tuán)伙伙”的嚴(yán)重危害性,江蘇省連云港市委常委、紀(jì)委書記、監(jiān)委主任劉海濤撰文稱,要堅(jiān)持懲前毖后、治病救人的原則,把嚴(yán)管和厚愛結(jié)合起來,系統(tǒng)運(yùn)用“四種形態(tài)”;對(duì)于違反政治紀(jì)律和政治規(guī)矩的苗頭性傾向性問題,早發(fā)現(xiàn)早提醒早處置,將問題解決在未發(fā)之際,持續(xù)建設(shè)風(fēng)清氣正的政治生態(tài)。(《中國(guó)紀(jì)檢監(jiān)察報(bào)》11月2日)
得到IOU為:
預(yù)測(cè)框與默認(rèn)框最小覆蓋矩形對(duì)角線Cl為:
預(yù)測(cè)框A與默認(rèn)框B中心點(diǎn)分別為:
歐式距離為:
最后可以得到預(yù)測(cè)框回歸損失函數(shù)為:
預(yù)測(cè)候選框[9]是在特征圖上,按一定縱橫比(aspect retios)生成的可能包含預(yù)測(cè)目標(biāo)的預(yù)測(cè)候選框,淺層分辨率高的特征圖主要檢測(cè)小目標(biāo),深層分辨率小的特征圖檢測(cè)大目標(biāo)。預(yù)測(cè)候選框通過非極大值抑制算法后,輸出與目標(biāo)最為匹配的檢測(cè)框。表4 與表5 分別列出了SSD 與本文算法Att_Mobilenetv2_SSDLite 在不同尺度特征圖上對(duì)應(yīng)的預(yù)測(cè)候選框數(shù)量。本文主要檢測(cè)目標(biāo)為菜品,菜品目標(biāo)通常是圖片中占比最大的目標(biāo),故本文在設(shè)置默認(rèn)候選框時(shí),關(guān)注更深層的特征圖的默認(rèn)候選框。
表4 SSD 與Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò)參數(shù)Tab.4 SSD and Att_Mobilenetv2_SSDLite network parameters
表5 Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò)參數(shù)Tab.5 Att_Mobilenetv2_SSDLite network parameters
第k個(gè)默認(rèn)候選框的大小Sk計(jì)算方式為:
特征圖上的每個(gè)像素點(diǎn)都會(huì)生成4 個(gè)或6 個(gè)默認(rèn)候選框,本文提出的Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò)生成2 254 個(gè)默認(rèn)候選框,主要舍棄了用于檢測(cè)小目標(biāo)的預(yù)測(cè)框。
本文針對(duì)菜品識(shí)別設(shè)計(jì)了Att_Mobilenetv2_SSDLite 網(wǎng)絡(luò),使用改進(jìn)后的Att_MobileNetV2 作基礎(chǔ)網(wǎng)絡(luò)提取特征,額外增加3 個(gè)卷積層作為回歸預(yù)測(cè)層。為了減小模型體積和提高檢測(cè)速度,類別置信度與定位回歸預(yù)測(cè)中均使用可分離卷積代替?zhèn)鹘y(tǒng)卷積。針對(duì)IOU不能很好反應(yīng)預(yù)測(cè)框與默認(rèn)框之間的重疊效果,設(shè)計(jì)了LMIOU回歸損失函數(shù),替換SmoothL1 損失函數(shù)。
實(shí)驗(yàn)環(huán)境為pytorch1.7、python3.7,AMD Ryzen 7 4800H 處理器,NVIDIA RTX 2060 6G,在windows 環(huán)境下運(yùn)行,使用數(shù)據(jù)集格式為PASCAL VOC。數(shù)據(jù)集為自建中餐菜品數(shù)據(jù)集Chinesefood,選取中餐菜品數(shù)據(jù)集release_data 中的20 類菜品,每個(gè)菜品1 067張圖片,數(shù)據(jù)集共包含21 340 張圖片;使用LabelImg 標(biāo)準(zhǔn)軟件生成VOC 格式數(shù)據(jù)集,按照80%、10%、10%的比例劃分訓(xùn)練數(shù)據(jù)、驗(yàn)證數(shù)據(jù)和測(cè)試數(shù)據(jù)。Batchsize設(shè)為32,初始學(xué)習(xí)率設(shè)為0.001,動(dòng)量為0.9,每迭代50 次降低學(xué)習(xí)率為上一階段0.5。
實(shí)驗(yàn)評(píng)價(jià)指標(biāo)為檢測(cè)速度(fps)、平均準(zhǔn)確率(Average Precision,mAP)和平均召回率(Average Recall,AR)。fps表示每秒檢測(cè)圖片數(shù)量,值越高表示檢測(cè)速度越快;mAP表示不同閾值條件下的平均準(zhǔn)確率,值越高表示檢測(cè)效果越好;AR表示平均召回率,值越高表示漏檢率越低。
式中,TP表示正樣本中預(yù)測(cè)正確部分;FP表示正樣本中預(yù)測(cè)錯(cuò)誤部分;FN表示負(fù)樣本中預(yù)測(cè)錯(cuò)誤部分。
對(duì)比實(shí)驗(yàn)設(shè)計(jì),使用不同數(shù)量回歸預(yù)測(cè)層的網(wǎng)絡(luò)進(jìn)行對(duì)比,尋找最合適數(shù)量的回歸預(yù)測(cè)層;針對(duì)本文提出的改進(jìn)點(diǎn)進(jìn)行控制變量組合訓(xùn)練,探索改進(jìn)點(diǎn)對(duì)網(wǎng)絡(luò)整體提升能力。訓(xùn)練過程使用自建的中餐菜品數(shù)據(jù)集Chinesefood,并對(duì)輸入的圖像隨機(jī)翻轉(zhuǎn)、裁剪以及顏色隨機(jī)調(diào)整。
4.3.1 不同數(shù)量回歸預(yù)測(cè)層對(duì)比
本文設(shè)計(jì)了分別有4、5、6 個(gè)回歸預(yù)測(cè)層的SSD模型。表6 列出了不同層結(jié)構(gòu)的網(wǎng)絡(luò)在菜品數(shù)據(jù)集上的表現(xiàn),其中features_number表示該模型包含回歸預(yù)測(cè)層的個(gè)數(shù)。
表6 不同數(shù)量預(yù)測(cè)層模型檢測(cè)對(duì)比Tab.6 Comparison of model detection with different numbers of prediction layers
回歸預(yù)測(cè)層數(shù)量越多,模型檢測(cè)準(zhǔn)確率越高,但是模型計(jì)算量隨之增加,導(dǎo)致檢測(cè)速度下降,每增加一層,準(zhǔn)確率大約提升1%,模型體積增大1~2 M,見表5?;貧w預(yù)測(cè)層數(shù)量為4 時(shí),檢測(cè)速度最快,模型體積也最小,但檢測(cè)準(zhǔn)確率與召回率最低;回歸預(yù)測(cè)層數(shù)量為6 時(shí),準(zhǔn)確率和召回率最高,但檢測(cè)速度大幅下降,模型體積也增大。圖5 為不同數(shù)量特征層的檢測(cè)效果。本文使用5 個(gè)回歸預(yù)測(cè)層的模型表現(xiàn)最好,保證了速度和準(zhǔn)確率,模型體積也控制在合適范圍。
圖5 不同數(shù)量預(yù)測(cè)層檢測(cè)效果Fig.5 The detection effect of different numbers of prediction layers
4.3.2 模型優(yōu)化效果
實(shí)驗(yàn)中分別比較了注意力逆殘差塊(Att-InvertedResidual)、深度可分離卷積(SperableConv2d)和回歸定位損失函數(shù)(LMIOU)對(duì)模型的增益效果。從表7 結(jié)果可見,注意力逆殘差塊提升準(zhǔn)確率約0.9%,深度可分離卷積可減小模型體積約24.6 M,回歸定位損失可提高準(zhǔn)確率1.6%,召回率1.2%。
表7 不同結(jié)構(gòu)對(duì)比Tab.7 Comparison of different structural
圖6 對(duì)比了使用LMIOU和SmoothL1 分別作為回歸定位損失的損失變化圖。實(shí)驗(yàn)表明,LMIOU損失函數(shù)對(duì)IOU 計(jì)算方式的調(diào)整,能更全面的了解預(yù)測(cè)框與默認(rèn)框的重疊關(guān)系,加快模型收斂,損失值下降更快,提升網(wǎng)絡(luò)識(shí)別準(zhǔn)確率。
圖6 不同損失函數(shù)對(duì)比Fig.6 Comparison of different loss functions
4.3.3 不同模型效果比較
從表8 可以看出,對(duì)比其它的目標(biāo)檢測(cè)模型,本文設(shè)計(jì)的模型相比SSD300、Tiny YOLO 和Mobilenetv1_SSD,準(zhǔn)確率相似,但模型體積最小,檢測(cè)速度也最優(yōu)越。對(duì)比Tiny SSD300,本文的模型雖然體積略大,但準(zhǔn)確率和速度都遠(yuǎn)遠(yuǎn)大于Tiny SSD300。圖7 對(duì)比了不同模型對(duì)菜品的檢測(cè)效果,綜合模型體積、準(zhǔn)確率和速度,本文的模型相比SSD 和YOLO 具有更好的效果。
圖7 不同目標(biāo)檢測(cè)模型檢測(cè)效果Fig.7 The detection effect of different target detection models
表8 不同模型檢測(cè)對(duì)比Tab.8 Comparison of different models
本文針對(duì)菜品識(shí)別設(shè)計(jì)了基于SSD 的輕量型目標(biāo)檢測(cè)網(wǎng)絡(luò)Att_Mobilenetv2_SSDLite 模型,該模型采用MobileNetV2 作為基礎(chǔ)網(wǎng)絡(luò),縮小模型體積提升檢測(cè)速度。對(duì)原MobileNetV2 模型中的逆殘差結(jié)構(gòu)做調(diào)整,使用注意力機(jī)制和混洗通道增強(qiáng)特征提取能力??紤]預(yù)測(cè)框與默認(rèn)框位置重疊因素設(shè)計(jì)回歸損失函數(shù),加快模型收斂。重新規(guī)劃回歸預(yù)測(cè)層數(shù)量,重點(diǎn)關(guān)注圖片中大目標(biāo),提高檢測(cè)準(zhǔn)確率。通過與其他目標(biāo)檢測(cè)網(wǎng)絡(luò)對(duì)比,本文提出的模型更加適合識(shí)別菜品,并且適合部署在存儲(chǔ)能力弱的其他平臺(tái)。