王國名,郝燦,石俊凱,高超,王博,周維虎*,高豆豆*
(1.中國科學(xué)院微電子研究所,北京 100094;2.中國科學(xué)院大學(xué),北京 101408)
隨著我國先進(jìn)制造和智能制造業(yè)的快速發(fā)展,對所需高端裝備的生產(chǎn)工裝測量、精密裝配檢測及整機(jī)精度檢測的精度要求越來越高,對以激光跟蹤儀為代表的大尺度空間坐標(biāo)精密測量儀器的需求也越來越迫切[1-3]。在飛機(jī)、船舶等大型裝置的精密裝配過程中,激光跟蹤儀如何在復(fù)雜生產(chǎn)環(huán)境下對合作目標(biāo)靶球進(jìn)行快速精確識別捕獲,從而精確引導(dǎo)激光自動對準(zhǔn)合作目標(biāo),是提升大型裝置精密裝配效率、提高斷光續(xù)接精度亟需解決的難題[4]。為了解決目標(biāo)的自動識別與自動測量問題,張滋黎等人[5]提出了一種基于視覺引導(dǎo)的激光測量系統(tǒng),實(shí)現(xiàn)了激光的自動對準(zhǔn);中國科學(xué)院大學(xué)[6]提出了一種大目標(biāo)高精度位置姿態(tài)測量技術(shù),利用單目相機(jī)獲取合作目標(biāo)的中心位置,準(zhǔn)確引導(dǎo)激光測距儀自動瞄準(zhǔn)合作目標(biāo)的中心位置,通過參數(shù)運(yùn)算得到待測目標(biāo)的空間位姿,從而實(shí)現(xiàn)高精度自動引導(dǎo)測量。
近年來,基于深度學(xué)習(xí)的機(jī)器視覺目標(biāo)檢測方法在精密檢測領(lǐng)域得到廣泛應(yīng)用,將深度學(xué)習(xí)方法用于合作目標(biāo)檢測,可極大地提高激光跟蹤儀對其合作目標(biāo)靶球的瞄準(zhǔn)精度。具有代表性的深度學(xué)習(xí)方法有基于區(qū)域推薦的目標(biāo)檢測方法(如Faster RCNN[7])和基于回歸的目標(biāo)檢測方法(如YOLO[5])?;趨^(qū)域推薦的目標(biāo)檢測方法分兩個(gè)步驟,首先預(yù)測可能存在目標(biāo)的區(qū)域,然后進(jìn)行目標(biāo)的分類與邊界定位,因此檢測速度較慢,難以滿足實(shí)時(shí)檢測的需求。
2016 年,Redmon 等人[8]首創(chuàng)YOLO 目標(biāo)檢測方法,使用單個(gè)卷積神經(jīng)網(wǎng)絡(luò)直接對目標(biāo)進(jìn)行位置回歸與類別預(yù)測,檢測速度可達(dá)到同時(shí)期兩步驟算法的5 倍,突破了目標(biāo)實(shí)時(shí)檢測的難題。但是,該方法在顯著提高檢測速度的同時(shí)模型檢測精度有所下降,尤其對小目標(biāo)的檢測精度較低,定位目標(biāo)準(zhǔn)確性差。針對此問題,Liu等人[9]提出了一種SSD(Single Shot MultiBox Detector)方法,在不同尺度特征圖上分別生成目標(biāo)的先驗(yàn)框,提高了模型對不同尺度目標(biāo)的檢測精度。Redmon 和Farhadi[10]提出的YOLOv2 方法借鑒了SSD 對多尺度特征的處理策略,對小尺寸目標(biāo)的檢測精度有所提高,且其檢測精度能夠滿足大部分應(yīng)用場景。然而,該方法仍然采用特征提取能力較弱的Darknet19基礎(chǔ)網(wǎng)絡(luò),目標(biāo)檢測精度有待進(jìn)一步提高。
深度學(xué)習(xí)方法利用卷積神經(jīng)網(wǎng)絡(luò)豐富提取圖像特征檢測目標(biāo),能夠滿足激光跟蹤儀不同工作距離條件下多尺度目標(biāo)檢測的需求。其中,YOLOv2 方法使用單個(gè)卷積神經(jīng)網(wǎng)絡(luò)直接對目標(biāo)進(jìn)行分類與回歸預(yù)測,檢測速度快,滿足激光跟蹤儀實(shí)時(shí)檢測合作目標(biāo)靶球的需求。但是YOLOv2的基礎(chǔ)網(wǎng)絡(luò)特征提取能力較弱,針對小目標(biāo)的定位能力較差,且復(fù)雜環(huán)境條件下的抗干擾能力較差,制約了合作目標(biāo)靶球的檢測精度。通過改進(jìn)基礎(chǔ)特征提取網(wǎng)絡(luò),可進(jìn)一步提高YOLOv2網(wǎng)絡(luò)對多尺度目標(biāo)的提取能力,從而提高檢測精度。
針對激光跟蹤儀跟蹤的合作目標(biāo)靶球形狀單一、紋理細(xì)節(jié)較少且場景復(fù)雜的問題,改進(jìn)基礎(chǔ)特征網(wǎng)絡(luò),提出一種基于YOLOv2單階段目標(biāo)檢測模型的靶球檢測方法,能夠有效克服復(fù)雜背景的干擾,提高合作目標(biāo)靶球的檢測精度,從而提升激光跟蹤儀對合作目標(biāo)的瞄準(zhǔn)精度。
Joseph Redmon 在2016 年提出了YOLOv2 網(wǎng)絡(luò)結(jié)構(gòu)[10],圖像輸入網(wǎng)絡(luò)后被劃分為S×S個(gè)網(wǎng)格,每個(gè)網(wǎng)格通過卷積神經(jīng)網(wǎng)絡(luò)后預(yù)測生成K個(gè)邊界框。邊界框包含目標(biāo)的置信度為Pr(Object),預(yù)測邊界框與真實(shí)邊界的交并比為目標(biāo)屬于第i類的條件概率為,則每個(gè)預(yù)測框的類別置信度表示為
式(1)表征了目標(biāo)的預(yù)測邊框與真實(shí)邊框重合程度以及目標(biāo)屬于第i類的概率。
大型裝置精密裝配時(shí),合作目標(biāo)的運(yùn)動范圍廣且隨機(jī)性強(qiáng),背景環(huán)境復(fù)雜,將YOLOv2直接用于合作靶球?qū)崟r(shí)檢測仍存在一定挑戰(zhàn)。YOLOv2 候選框所能匹配到的正負(fù)樣本比例極為懸殊,而YOLOv2 的“Fine-Grained Features”方法偏重于融合不同層的全局特征,融合時(shí)會損失部分多尺度特征圖的局部細(xì)節(jié)信息,造成對小尺寸目標(biāo)的檢測精度下降,制約了合作目標(biāo)檢測精度。
除了模型與各項(xiàng)參數(shù)外,訓(xùn)練數(shù)據(jù)集的樣本質(zhì)量也影響著深度學(xué)習(xí)網(wǎng)絡(luò)的最終檢測性能[11-12]。若待測樣本極易被模型檢測,則其被認(rèn)為是簡單樣本;若待測樣本較難被模型檢測,則其被認(rèn)為是困難樣本。相關(guān)研究表明:在模型訓(xùn)練困難樣本時(shí),會產(chǎn)生較大的梯度變化,通過降低簡單樣本的權(quán)重,增大困難樣本在訓(xùn)練中的權(quán)重,使其對損失的貢獻(xiàn)變大,能夠有效提高模型的優(yōu)化效率。
文章提出了一種結(jié)合注意力機(jī)制框架結(jié)構(gòu)與困難樣本挖掘的方法,通過注意力機(jī)制來自適應(yīng)提取合作目標(biāo)靶球周圍的有用信息。注意力機(jī)制模塊從多個(gè)感受野提取到大量上下文信息,并自適應(yīng)提取顯著對象周圍的有用信息。同時(shí)使用了更深度化的特征提取網(wǎng)絡(luò),提取更豐富的全局語義信息與局部定位信息,從而得到更好的檢測與定位精度?;谧⒁饬C(jī)制與困難樣本挖掘的改進(jìn)YOLOv2模型網(wǎng)絡(luò)圖如圖1所示,使用RestNet50替換了原YOLOv2 中的Darknet19 特征提取網(wǎng)絡(luò),并增加了注意力機(jī)制(AM)模塊以提升模型對困難樣本的挖掘能力。在圖像輸入特征提取網(wǎng)絡(luò)前對其進(jìn)行切片(Slice)操作,使用最近鄰下采樣(Focus)將原本只有RGB 三通道的輸入圖像擴(kuò)充到12 個(gè)通道,經(jīng)過卷積組件(CBL)和殘差組件(Rex Unit)處理后,進(jìn)行特征融合(Concat),得到包含豐富特征且無信息損失的特征圖,在輸出層利用注意力機(jī)制獲取有用的目標(biāo)信息。相較標(biāo)準(zhǔn)的YOLOv2網(wǎng)絡(luò),新的特征圖具有更強(qiáng)的小目標(biāo)檢測能力,且在復(fù)雜背景下的魯棒性更強(qiáng)。
圖1 基于注意力機(jī)制與困難樣本挖掘的改進(jìn)YOLOv2模型網(wǎng)絡(luò)圖Fig.1 Improved YOLOv2 network based on attention mechanism and difficult sample mining
構(gòu)建的合作目標(biāo)靶球數(shù)據(jù)集使用面陣CCD 相機(jī)采集,使用PASCALVOC 標(biāo)準(zhǔn)數(shù)據(jù)集格式標(biāo)注,部分樣本圖像如圖2 所示,其中(a),(b),(d)為不同場景的圖像,(b),(c)為同一場景不同角度的圖像,標(biāo)注目標(biāo)為合作目標(biāo)靶球。合作目標(biāo)靶球在圖像中接近圓形,在構(gòu)建數(shù)據(jù)集時(shí)用圓形瓶蓋、圓形器件等構(gòu)建靶球的復(fù)雜背景。
圖2 部分合作目標(biāo)靶球數(shù)據(jù)集圖像Fig.2 Sample images of the cooperative target ball dataset
數(shù)據(jù)集包含1056 張圖像。每張圖像大小為640×480 pixels,每幅圖像僅包含一個(gè)合作目標(biāo)靶球,其最小邊界框的左上角與右下角坐標(biāo)作為真實(shí)值保存為標(biāo)簽。在真實(shí)應(yīng)用場景中,合作目標(biāo)靶球可能出現(xiàn)在圖像的任意位置,數(shù)據(jù)集中合作目標(biāo)靶球的位置分布如圖3(a)所示,數(shù)據(jù)集中合作目標(biāo)靶球在圖像中的面積占比分布如圖3(b)所示,可以看出長寬比小的區(qū)域樣本密集,小目標(biāo)在整個(gè)數(shù)據(jù)集中占比較高。
圖3 合作目標(biāo)靶球分布圖Fig.3 Distribution of cooperative target balls
深度學(xué)習(xí)目標(biāo)檢測模型的檢測性能一定程度上受數(shù)據(jù)集質(zhì)量的影響。在實(shí)際應(yīng)用中背景極為復(fù)雜,且合作目標(biāo)靶球在圖像中的大小會發(fā)生變化,為了增加模型對強(qiáng)背景干擾的魯棒性并提高圖像中任意大小合作目標(biāo)靶球的檢測精度,需要針對小目標(biāo)進(jìn)行數(shù)據(jù)增強(qiáng)[13]。
實(shí)驗(yàn)中發(fā)現(xiàn),使用Mixup[14]數(shù)據(jù)增強(qiáng)方法不能解決復(fù)雜背景造成的檢測精度下降的問題。由于合作目標(biāo)靶球的結(jié)構(gòu)外形單一,形狀近似的背景目標(biāo)極易對檢測造成干擾,且訓(xùn)練樣本中小目標(biāo)數(shù)據(jù)較少,采用測試集檢測小目標(biāo)樣本時(shí)效果較差。因此,本文提出了一種圖像拼接的數(shù)據(jù)增強(qiáng)方法:從原始數(shù)據(jù)集隨機(jī)選取4 張圖像,對4 張圖像分別進(jìn)行翻轉(zhuǎn)、旋轉(zhuǎn)、縮放操作后,拼接成一幅圖像,對于縮小圖像進(jìn)行0 像素填充,擴(kuò)充圖像至原圖像大小,對于放大圖像隨機(jī)截取包含合作目標(biāo)靶球的和原圖大小相同的區(qū)域,如此就形成了新的增強(qiáng)數(shù)據(jù)集。拼接增強(qiáng)后的圖像增加了合作目標(biāo)背景復(fù)雜度,從而提高模型對復(fù)雜背景干擾的魯棒性。且由于4 張圖像拼接減小了訓(xùn)練樣本合作目標(biāo)靶球的尺寸,從而有效地提高了模型對小尺度合作目標(biāo)靶球的檢測精度。采用數(shù)據(jù)集中隨機(jī)4 幅圖像進(jìn)行圖像拼接后生成的數(shù)據(jù)增強(qiáng)圖像如圖4 所示,其中O 為目標(biāo)靶球。該方法增強(qiáng)了原數(shù)據(jù)集中圖像的背景復(fù)雜度,有效地增加了檢測模型對復(fù)雜環(huán)境的魯棒性,以拼接圖像作為訓(xùn)練樣本,使合作目標(biāo)靶球的檢測準(zhǔn)確率得到顯著提高。
圖4 部分經(jīng)過數(shù)據(jù)增強(qiáng)后的合作目標(biāo)靶球數(shù)據(jù)集圖像Fig.4 Sample images of the cooperative target ball dataset by stitching enhancement
合作目標(biāo)靶球檢測使用平均準(zhǔn)確率AP(Average Precision)和每秒檢測幀數(shù)FPS(Frames Per Second)作為評價(jià)指標(biāo)。如圖5 所示,內(nèi)部矩形為預(yù)測為合作目標(biāo)靶球的樣本數(shù)量,外部矩形為所有被檢測為非合作目標(biāo)靶球的樣本數(shù)量。TP(True Positives)為預(yù)測與實(shí)際均為合作目標(biāo)靶球的樣本數(shù)量,F(xiàn)P(False Positives)為預(yù)測為合作目標(biāo)靶球但實(shí)際為干擾目標(biāo)的樣本數(shù)量,F(xiàn)N(False Negatives)為未檢出合作目標(biāo)靶球的樣本數(shù)量,TN(True Negatives)為預(yù)測為非合作目標(biāo)且實(shí)際為非合作目標(biāo)靶球樣本數(shù)量。
圖5 預(yù)測合作目標(biāo)靶球與真實(shí)合作目標(biāo)靶球的TP,F(xiàn)P,F(xiàn)N和TN的定義Fig.5 Definitions of TP,F(xiàn)P,F(xiàn)N and TN for predicted cooperative target balls and real cooperative target balls
查準(zhǔn)率p(Precision)和查全率r(Recall)可分別表示為
AP為合作目標(biāo)靶球PR曲線(Precision-Recall Curve)所包含的面積。使用11 點(diǎn)法[15]計(jì)算各個(gè)類別的AP,計(jì)算公式如式(4)所示。
按照8∶1∶2 的比例將原始數(shù)據(jù)集分為訓(xùn)練集、驗(yàn)證集與測試集。采用2.2節(jié)所述的方法對原始數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)。采用未參加訓(xùn)練的207張?jiān)瓟?shù)據(jù)集中的圖像進(jìn)行算法性能測試,其中小目標(biāo)測試樣本約占總測試樣本數(shù)量的40%。實(shí)驗(yàn)所使用的高性能圖像工作站配置為Intel Core I7 v4 3.3 GHz CPU,128.00 GB內(nèi)存,RTX2080 Ti GPU,11.00 GB GPU 顯存。合作目標(biāo)靶球檢測實(shí)驗(yàn)在Windows10 系統(tǒng)Pycharm 平臺和Visual Studio 2019平臺上進(jìn)行,所有程序均采用python 語言和C/C++語言編程實(shí)現(xiàn);程序所使用的深度學(xué)習(xí)框架為Py-Torch(C 語言對應(yīng)為LibTorch)。模型訓(xùn)練過程中的動量設(shè)置為0.9,訓(xùn)練批次大小為4,權(quán)值衰減系數(shù)為1×10-4,訓(xùn)練初始學(xué)習(xí)率為5×10-3,最大迭代次數(shù)為30000,在迭代進(jìn)行到5000 次和12000 次時(shí),學(xué)習(xí)率分別減小至5×10-4和5×10-5。
為比較本文提出的結(jié)合注意力機(jī)制和困難數(shù)據(jù)挖掘的改進(jìn)YOLOv2 的檢測性能,分別對Faster-RCNN、標(biāo)準(zhǔn)YOLOv2 和本文提出的改進(jìn)YOLOv2三種模型采用原始數(shù)據(jù)集和數(shù)據(jù)增強(qiáng)后數(shù)據(jù)集進(jìn)行模型訓(xùn)練,并采用同一測試集進(jìn)行合作目標(biāo)靶球檢測,6 種測試結(jié)果見表1。由實(shí)驗(yàn)結(jié)果可知,相較原始數(shù)據(jù)集,經(jīng)數(shù)據(jù)增強(qiáng)后的數(shù)據(jù)集檢測精度有了顯著提高。本文提出的改進(jìn)YOLOv2方法的檢測準(zhǔn)確率為92.25%,相較FasterRCNN 模型檢測準(zhǔn)確率提高了5.79%,且檢測速度接近Faster-RCNN 模型的5 倍,能夠有效滿足合作目標(biāo)靶球高精度檢測要求。
表1 不同模型合作目標(biāo)靶球檢測結(jié)果Tab.1 Detection results of cooperative target balls by different models
利用標(biāo)準(zhǔn)的YOLOv2 與改進(jìn)的YOLOv2 對同一數(shù)據(jù)集中不同圖像中合作目標(biāo)靶球進(jìn)行對比檢測試驗(yàn),結(jié)果如圖6 和圖7 所示,同時(shí)在3 個(gè)場景條件下進(jìn)行檢測,標(biāo)準(zhǔn)YOLOv2模型在復(fù)雜背景下對小目標(biāo)存在誤檢和漏檢,而本文提出的改進(jìn)的YOLOv2 方法在復(fù)雜背景下的抗干擾性能較好,能夠保持較高的小目標(biāo)檢測準(zhǔn)確率,相較標(biāo)準(zhǔn)YOLOv2方法具有明顯優(yōu)勢。
圖6 標(biāo)準(zhǔn)YOLOv2模型的不同圖像中目標(biāo)靶球的檢測結(jié)果Fig.6 Detection results of target ball in different images of classical YOLOv2 network
圖7 改進(jìn)YOLOv2模型的不同圖像中目標(biāo)靶球的檢測結(jié)果Fig.7 Detection results of target ball in different images of improved YOLOv2 network
為解決激光跟蹤儀在大型裝置精密裝配過程中對合作目標(biāo)瞄準(zhǔn)精度較低的問題,探尋基于深度學(xué)習(xí)的目標(biāo)檢測方法,以提升復(fù)雜背景下合作目標(biāo)靶球的檢測準(zhǔn)確率與檢測速度。分析了實(shí)際應(yīng)用中檢測距離變化而使靶標(biāo)在圖像中尺寸不同,導(dǎo)致YOLOv2 深度卷積神經(jīng)網(wǎng)絡(luò)算法模型對合作目標(biāo)靶球檢測精度較低的現(xiàn)象,提出引入基于注意力機(jī)制與困難樣本挖掘的方法提升多尺度目標(biāo)檢測精度;針對復(fù)雜背景條件下,合作目標(biāo)靶球外形單一,紋理細(xì)節(jié)較少的特點(diǎn),提出了基于拼接圖像對數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)的方法,增加復(fù)雜背景和小目標(biāo)樣本的數(shù)量,有效提高了模型的檢測準(zhǔn)確率。實(shí)驗(yàn)結(jié)果表明,本文提出的改進(jìn)YOLOv2 模型和數(shù)據(jù)增強(qiáng)方法能夠顯著提高復(fù)雜背景下小目標(biāo)合作目標(biāo)靶球的檢測精度,適用于遠(yuǎn)距離的合作目標(biāo)跟蹤,能夠滿足激光跟蹤儀的實(shí)際應(yīng)用要求。