吳誠遠(yuǎn) 蘇輝躍 許又勻 邵燕 陳宇恒



摘 ?要:標(biāo)簽檢測(cè)對(duì)現(xiàn)代智能圖書館的建設(shè)十分重要,但在實(shí)際應(yīng)用的精度上仍然有待提高。本研究提出一種改進(jìn)的YOLOv5圖書檢測(cè)方法。該方法利用Mosaic數(shù)據(jù)增強(qiáng)方法,在數(shù)據(jù)預(yù)處理方面,通過批處理將圖片的大小限定在一定范圍內(nèi),減少擬合,豐富數(shù)據(jù)的多樣性,以此提高實(shí)際訓(xùn)練的效果。同時(shí)利用了DIOUS_nms替換了原有的傳統(tǒng)nms方法,來提高實(shí)際的識(shí)別效果。相較于原YOLOv5模型而言,推理時(shí)間降低了17%,平均準(zhǔn)確率提高了2.7%。可見該方法模型小,準(zhǔn)確度高,具有部署到移動(dòng)端設(shè)備上的潛力。
關(guān)鍵詞:Mosaic;DIOUS_nms;YOLOv5;數(shù)據(jù)增強(qiáng);標(biāo)簽?zāi)繕?biāo)檢測(cè)
智能圖書館是指讀者可以自主利用圖書館適配軟件,能夠方便、快捷的搜尋到書籍并且能夠精準(zhǔn)定位到書籍的位置,如同地圖一樣,可以大大減少讀者往返尋找的時(shí)間。目前圖書館已經(jīng)普遍配備搜尋書籍的設(shè)備,但是搜尋的結(jié)果僅僅包括了書籍的館藏位置、館藏標(biāo)簽號(hào)等有限信息,對(duì)于書籍的具體位置,仍然需要讀者自己去尋找。此外,由于書籍的館藏信息更新不及時(shí),也會(huì)常常造成讀者花費(fèi)長(zhǎng)時(shí)間卻無法找到的問題。目前這些任務(wù)主要依靠人工來進(jìn)行完成,時(shí)間成本高,位置不準(zhǔn)確。本文基于圖像識(shí)別的智能識(shí)別定位技術(shù)是未來圖書館的發(fā)展方向,這些任務(wù)主要依靠標(biāo)簽檢測(cè)技術(shù)來完成。因此,書籍的標(biāo)簽檢測(cè)算法是其中的關(guān)鍵。
為此,國內(nèi)外學(xué)者針對(duì)標(biāo)簽檢測(cè)算法進(jìn)行了廣泛的研究。王鈺深[1]等提出了利用改進(jìn)的概率霍夫線算法將書籍依據(jù)書脊來進(jìn)行分割,再通過特征匹配來識(shí)別出書簽的信息。崔晨[2]等提出了利用文本檢測(cè)來進(jìn)行書脊的定位,基于序貫分割來有效的降低光照對(duì)實(shí)際結(jié)果的影響,并且保證了字符不漏檢。曾文[3]等基于改進(jìn)Mask R-CNN的方法來對(duì)書籍的特征點(diǎn)進(jìn)行提取,從而實(shí)現(xiàn)提取書籍信息的功能。以上方式的基本思路是根據(jù)書籍的特點(diǎn)來設(shè)計(jì)特定算法來進(jìn)行進(jìn)行識(shí)別,這種單一算法檢測(cè)效率較高,但是需要大量的手動(dòng)特征點(diǎn)提取和調(diào)整,過程繁瑣,工程量較大,魯棒性較差。
針對(duì)該問題,本文提出在原有的YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)基礎(chǔ)之上進(jìn)行改進(jìn),進(jìn)而使用了基于Mosaic數(shù)據(jù)增強(qiáng)的標(biāo)簽檢測(cè)算法和DIOU_nms的檢測(cè)框識(shí)別策略。該方法利用了改進(jìn)的Mosaic-9算法來增廣數(shù)據(jù)量,提升數(shù)據(jù)集數(shù)據(jù)的多樣化,進(jìn)而達(dá)到了模型在不同光照、環(huán)境下較高的檢測(cè)能力,使得其能夠較為適合一般的檢測(cè)環(huán)境,進(jìn)而提高了模型的魯棒性。DIOU_nms能夠有效提升檢測(cè)的精度,減少錯(cuò)檢、漏檢的情況。
1 標(biāo)簽檢測(cè)算法
1.1目標(biāo)檢測(cè)算法
書籍的標(biāo)簽檢測(cè)是一個(gè)目標(biāo)檢測(cè)任務(wù),由于本場(chǎng)景僅僅存在標(biāo)簽這一個(gè)類別,主要的難點(diǎn)在于多目標(biāo)的位置定位和識(shí)別。目前基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法主要分為兩類:一類是基于區(qū)域提取的兩階段目標(biāo)檢測(cè)模型,如R-CNN[4] Fast R-CN、 Faster R-CNN等,將目標(biāo)檢測(cè)分為特征提取和特征分類兩步;另一類是直接進(jìn)行位置回歸的單階段目標(biāo)檢測(cè)模型,如SSD、YOLO系列等,將目標(biāo)檢測(cè)轉(zhuǎn)換成回歸問題,本文主要使用的是基于候選區(qū)域的兩階段檢測(cè)算法。在特征提取和特征融合方面,主要采用了AF-FPN來解決模型大小和識(shí)別精度不兼容的問題,使得目標(biāo)模型在移動(dòng)設(shè)備也能夠進(jìn)行網(wǎng)絡(luò)部署。AF-FPN主要利用自適應(yīng)注意力模塊(AAM)和特征增強(qiáng)模塊(FEM)來降低特征圖生成時(shí)的數(shù)據(jù)損失并且增強(qiáng)其特征信息,可以有效的處理標(biāo)簽的多尺度信息的檢測(cè)性能。此外,本文采用了Mosaic數(shù)據(jù)增強(qiáng)(Data Enhancement)和DIOU_nms的方式來豐富數(shù)據(jù)集并提升其魯棒性,使其更加適合特定場(chǎng)景下的目標(biāo)檢測(cè)任務(wù)。
1.2 Mosaic數(shù)據(jù)增強(qiáng)
數(shù)據(jù)增強(qiáng)目前已經(jīng)廣泛應(yīng)用于網(wǎng)絡(luò)優(yōu)化之中,可以有效提高CNN的性能,防止過擬合的發(fā)生。目前常見的單樣本數(shù)據(jù)增強(qiáng)的方法大致分為兩種:顏色變換(亮度、對(duì)比度等)和幾何變換(如縮放,翻轉(zhuǎn)、平移和縮放等等)。Mosaic數(shù)據(jù)增強(qiáng)綜合了顏色變換、幾何變換的優(yōu)點(diǎn),通過此方法可以豐富數(shù)據(jù)集。(如圖1)
具體的做法是從數(shù)據(jù)集中隨機(jī)選取四張像素一致的圖像,然后將圖像進(jìn)行隨機(jī)大小的裁剪,將第一張裁剪的圖像固定在新生成的圖像的左上角,第二張裁剪的圖像固定在左下角,第三張裁剪的圖像固定在右下角,第四張裁剪的圖像固定在右上角。不僅豐富了圖片的背景,而且使得目標(biāo)更加多樣。在本文場(chǎng)景下,目標(biāo)單一且標(biāo)簽處的特征變化較小,適當(dāng)使用Mosaic數(shù)據(jù)增強(qiáng)能夠有效增大數(shù)據(jù)集的實(shí)際利用率,提高實(shí)際的識(shí)別精度。
1.3 YOLOv5s模型
作為圖像識(shí)別領(lǐng)域比較熱門的算法,YOLOv5s因?yàn)槠漭p量化的模型大小,在低壓環(huán)境下不遜于v4版本的精度和速度,自適應(yīng)圖片處理,使得其對(duì)數(shù)據(jù)集的要求被進(jìn)一步降低,容易部署工程化實(shí)現(xiàn)等優(yōu)勢(shì)而更適合用于實(shí)際的場(chǎng)景應(yīng)用。目前YOLOv5的框架由輸入端(Input)、主干特征提取網(wǎng)絡(luò)(Backbone)、Neck和輸出層(Prediction)4個(gè)部分組成。
其主要的Backbone部分采用了Focus結(jié)構(gòu)和CSP結(jié)構(gòu),不同于YOLOv4僅僅在主干網(wǎng)絡(luò)使用了CSP結(jié)構(gòu),在YOLOv5s網(wǎng)絡(luò)中,CSP1_X結(jié)構(gòu)應(yīng)用于Backbone主干網(wǎng)絡(luò),另一種CSP2_X結(jié)構(gòu)應(yīng)用于Neck中。此外,YOLOv5網(wǎng)絡(luò)在Neck部分采用了FPN+PAN結(jié)構(gòu),通過借鑒CSPnet設(shè)計(jì)的CSP2結(jié)構(gòu)來有效加強(qiáng)網(wǎng)絡(luò)特征融合的能力。(結(jié)構(gòu)如圖2)
1.4 DIOU_nms
對(duì)于目標(biāo)檢測(cè)輸出處理的過程之中,YOLOv5對(duì)于目標(biāo)框的篩選主要采用的是nms操作,傳統(tǒng)的nms是對(duì)同一類別的候選框進(jìn)行篩選,檢測(cè)到置信度最大的檢測(cè)框,然后遍歷最大框附近的框并且計(jì)算IOU,IOU大的框?qū)?huì)被刪除(這里的IOU是表示高度重疊)。而在本數(shù)據(jù)集訓(xùn)練的過程中,對(duì)于一些薄且擺放不齊的書籍,訓(xùn)練的模型出現(xiàn)了識(shí)別框重疊,無法精準(zhǔn)確定標(biāo)簽位置,造成漏檢、錯(cuò)檢的情況。
為了提高YOLOv5對(duì)圖書館特定場(chǎng)景的檢測(cè)效果,本文對(duì)目標(biāo)檢測(cè)的后處理對(duì)目標(biāo)框的篩選,在nms非極大值抑制的基礎(chǔ)上提出一種 DIOU_nms的改進(jìn),同傳統(tǒng)nms方式相比,DIOU_nms方式針對(duì)部分遮擋重疊的目標(biāo),在DIOU_Loss的基礎(chǔ)之上,考慮了IOU值的同時(shí),也兼顧了兩個(gè)Box中心點(diǎn)之間的距離,同時(shí)添加影響因子,包含了groundtruth標(biāo)注框的信息,用于在訓(xùn)練時(shí)進(jìn)行回歸,而且相較于原本的回歸速度更快。因此,采用DIOU_nms方式可以在不增加計(jì)算成本的情況下,進(jìn)一步增加模型識(shí)別的準(zhǔn)確率。
DIOU_nms公式如下:
其中M表示高置信度候選框,bi就是遍歷各個(gè)框跟置信度高的重合情況。
此外,針對(duì)書籍標(biāo)簽屬于小目標(biāo)識(shí)別,本文引入改進(jìn)的Mosaic數(shù)據(jù)增強(qiáng)的方法,來解決原模型識(shí)別精度不高的問題,在保證高識(shí)別率的基礎(chǔ)上,進(jìn)一步提高模型的識(shí)別性能,使得數(shù)據(jù)集數(shù)據(jù)得到充分利用,提高訓(xùn)練效果。
2 實(shí)驗(yàn)結(jié)果和分析
為了驗(yàn)證本文中標(biāo)簽檢測(cè)算法的可行性、有效性,進(jìn)行了相關(guān)的模型訓(xùn)練實(shí)驗(yàn)。本節(jié)將會(huì)從實(shí)驗(yàn)環(huán)境、數(shù)據(jù)集來源、實(shí)驗(yàn)方法、評(píng)估標(biāo)準(zhǔn)來進(jìn)行闡述。
2.1實(shí)驗(yàn)環(huán)境
本文實(shí)驗(yàn)使用深度學(xué)習(xí)框架PyTorch訓(xùn)練模型,在訓(xùn)練過程中采用了cuda來進(jìn)行硬件加速。硬件環(huán)境如下:Amd 3700x、Nvidia RTX 2070super,32GB RAM,操作系統(tǒng)為Windows 10,代碼環(huán)境是Anaconda虛擬python3.8環(huán)境。
2.2數(shù)據(jù)集來源
由于是圖書館的特定環(huán)境下來實(shí)現(xiàn)工程化,目前沒有統(tǒng)一公開的書籍標(biāo)簽數(shù)據(jù)集,本文采用了自制標(biāo)簽數(shù)據(jù)集,所有圖片均采用COCO2017標(biāo)注格式。圖片數(shù)據(jù)全部來源于江蘇大學(xué)圖書館1L的真實(shí)書籍標(biāo)簽圖片。本文自制數(shù)據(jù)集共包含205張照片,該數(shù)據(jù)集共一個(gè)類別:標(biāo)簽(label)。
2.3實(shí)驗(yàn)方法
模型訓(xùn)練時(shí)將數(shù)據(jù)集205張照片隨機(jī)分成訓(xùn)練集、驗(yàn)證集、測(cè)試集3類,按照8:1:1的比例來進(jìn)行劃分。在訓(xùn)練階段將YOLOv5和Mosaic數(shù)據(jù)增強(qiáng)相結(jié)合,訓(xùn)練得到2個(gè)模型:YOLOv5、YOLOv5+Mosaic,然后采用DIOUS_nms來加強(qiáng)實(shí)驗(yàn)結(jié)果的對(duì)比,最終得到了YOLOv5、YOLOv5+Mosaic、YOLOv5+Mosaic+DIOUS_nms三個(gè)模型。將此3個(gè)模型進(jìn)行實(shí)驗(yàn)對(duì)比。使用了Mircosoft COCO數(shù)據(jù)集的預(yù)訓(xùn)練權(quán)重來進(jìn)行網(wǎng)絡(luò)參數(shù)的預(yù)訓(xùn)練,以此提高訓(xùn)練的速度。在輸入卷積神經(jīng)網(wǎng)絡(luò)之前,數(shù)據(jù)集的圖像分辨率全部調(diào)整為416×416。訓(xùn)練過程總共迭代300個(gè)epoch,并將初始學(xué)習(xí)率和Batch_size分別設(shè)置為1×10-3和16。Mosai函數(shù)的實(shí)現(xiàn)參考了YOLOv5的utils文件夾下的datasets.py文件,在原有的load_mosaic9函數(shù)上進(jìn)行改進(jìn),使得其更加適合本文書籍標(biāo)簽的應(yīng)用場(chǎng)景。
2.4 評(píng)估指標(biāo)
本文使用目標(biāo)檢測(cè)領(lǐng)域常用的平均精度均值(mean average precision,mAP)來評(píng)價(jià)算法的實(shí)際標(biāo)簽檢測(cè)效果。其中AP反映了單一類別的檢測(cè)效果,其計(jì)算公式為:
式中:ITP表示正樣本被預(yù)測(cè)正確的數(shù)量,IFP表示負(fù)樣本被預(yù)測(cè)為正樣本的數(shù)量,IFN表示正樣本被預(yù)測(cè)為負(fù)樣本的數(shù)量。根據(jù)不同的召回率r計(jì)算出對(duì)應(yīng)的查準(zhǔn)率p,而AP為不同的召回率和查準(zhǔn)率圍成的曲線面積。平均精度均值mAP為每類AP的平均值,可以反映模型整體的檢測(cè)性能。
3 結(jié)果與分析
模型在204張圖像測(cè)試集上,采用了2.4部分所提的評(píng)估標(biāo)準(zhǔn),對(duì)2.3實(shí)驗(yàn)方法所提及的2個(gè)模型進(jìn)行評(píng)估,實(shí)驗(yàn)結(jié)果如表1所示。
綜上,YOLOv5+Mosaic+DIOU_nms模型相較于原YOLOv5模型而言,各項(xiàng)指標(biāo)都有所提升,采用了Mosaic的模型,使得實(shí)際檢測(cè)的區(qū)域更加精確,DIOU_nms方式的改進(jìn),使得模型的錯(cuò)檢率大大下降。模型的檢測(cè)效果如圖3所示,其中測(cè)試圖像1和2是屬于驗(yàn)證集中的,測(cè)試圖像3和測(cè)試圖像4是屬于未標(biāo)注數(shù)據(jù)集中的。
根據(jù)以上模型檢測(cè)結(jié)果可知,本文提出的方法錯(cuò)檢率低,且驗(yàn)證的準(zhǔn)確性高。YOLOv5+Mosaic+DIOUS_nms模型在部分?jǐn)?shù)據(jù)集漏標(biāo)的情況下,依然能夠做到不漏檢,且檢測(cè)的區(qū)域準(zhǔn)確,可以通過crop函數(shù)將標(biāo)簽信息部分給完美的分割出來,魯棒性良好。
4.結(jié)論
針對(duì)原始YOLOv5算法在小目標(biāo)的復(fù)雜情況下的檢測(cè)效果欠佳的問題,本文引入數(shù)據(jù)增強(qiáng)和DIOU_nms的方法,有效提高了數(shù)據(jù)集的利用率和實(shí)際檢測(cè)結(jié)果的精確度,大大降低了實(shí)際目標(biāo)的錯(cuò)檢率,使得目標(biāo)框的回歸更加穩(wěn)定迅速,定位更加準(zhǔn)確。本文YOLOv5+Mosaic+DIOU_nms模型提高了YOLOv5算法在特定環(huán)境下的檢測(cè)效果和魯棒性,也驗(yàn)證了YOLOv5項(xiàng)目工程化的可行性,性能綜合優(yōu)于原版YOLOv5模型。但是在光照較暗的情況下仍然存在著一些漏檢情況。因此,下一步需要考慮改進(jìn)網(wǎng)絡(luò)特征提取的能力來獲得特征近似的標(biāo)簽?zāi)繕?biāo),在保證識(shí)別準(zhǔn)確度的前提下,提高算法的效率。
參考文獻(xiàn):
[1]王鈺深,黃悅恒,黃謙,劉沖.基于霍夫變換的書脊識(shí)別研究[J].科技創(chuàng)新與應(yīng)用,2020(36):7-11.
[2]崔晨,任明武.一種基于文本檢測(cè)的書脊定位方法[J].計(jì)算機(jī)與數(shù)字工程,2020,48(01):178-182+251.
[3]曾文雯,楊陽,鐘小品.基于改進(jìn)Mask R-CNN的在架圖書書脊圖像實(shí)例分割方法[J].計(jì)算機(jī)應(yīng)用研究,2021,38(11):3456-3459+3505.DOI:10.19734/j.issn.1001-3695.2021.01.0069.
[4]洪亮,王芳,蔡克衛(wèi),陳鵬宇,林遠(yuǎn)山.面向海洋牧場(chǎng)智能化建設(shè)的海珍品實(shí)時(shí)檢測(cè)方法[J].農(nóng)業(yè)工程學(xué)報(bào),2021,37(09):304-311.
作者簡(jiǎn)介:
吳誠遠(yuǎn):生于2000年11月,男,漢族,江蘇鎮(zhèn)江人, 江蘇大學(xué)本科在讀,軟件工程方向
項(xiàng)目來源:本文系江蘇大學(xué)2021年度大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練項(xiàng)目,項(xiàng)目編號(hào):202110299810X