王國名,郝燦,石俊凱,高超,王博,周維虎*,高豆豆*
(1.中國科學院微電子研究所,北京 100094;2.中國科學院大學,北京 101408)
隨著我國先進制造和智能制造業的快速發展,對所需高端裝備的生產工裝測量、精密裝配檢測及整機精度檢測的精度要求越來越高,對以激光跟蹤儀為代表的大尺度空間坐標精密測量儀器的需求也越來越迫切[1-3]。在飛機、船舶等大型裝置的精密裝配過程中,激光跟蹤儀如何在復雜生產環境下對合作目標靶球進行快速精確識別捕獲,從而精確引導激光自動對準合作目標,是提升大型裝置精密裝配效率、提高斷光續接精度亟需解決的難題[4]。為了解決目標的自動識別與自動測量問題,張滋黎等人[5]提出了一種基于視覺引導的激光測量系統,實現了激光的自動對準;中國科學院大學[6]提出了一種大目標高精度位置姿態測量技術,利用單目相機獲取合作目標的中心位置,準確引導激光測距儀自動瞄準合作目標的中心位置,通過參數運算得到待測目標的空間位姿,從而實現高精度自動引導測量。
近年來,基于深度學習的機器視覺目標檢測方法在精密檢測領域得到廣泛應用,將深度學習方法用于合作目標檢測,可極大地提高激光跟蹤儀對其合作目標靶球的瞄準精度。具有代表性的深度學習方法有基于區域推薦的目標檢測方法(如Faster RCNN[7])和基于回歸的目標檢測方法(如YOLO[5])?;趨^域推薦的目標檢測方法分兩個步驟,首先預測可能存在目標的區域,然后進行目標的分類與邊界定位,因此檢測速度較慢,難以滿足實時檢測的需求。
2016 年,Redmon 等人[8]首創YOLO 目標檢測方法,使用單個卷積神經網絡直接對目標進行位置回歸與類別預測,檢測速度可達到同時期兩步驟算法的5 倍,突破了目標實時檢測的難題。但是,該方法在顯著提高檢測速度的同時模型檢測精度有所下降,尤其對小目標的檢測精度較低,定位目標準確性差。針對此問題,Liu等人[9]提出了一種SSD(Single Shot MultiBox Detector)方法,在不同尺度特征圖上分別生成目標的先驗框,提高了模型對不同尺度目標的檢測精度。Redmon 和Farhadi[10]提出的YOLOv2 方法借鑒了SSD 對多尺度特征的處理策略,對小尺寸目標的檢測精度有所提高,且其檢測精度能夠滿足大部分應用場景。然而,該方法仍然采用特征提取能力較弱的Darknet19基礎網絡,目標檢測精度有待進一步提高。
深度學習方法利用卷積神經網絡豐富提取圖像特征檢測目標,能夠滿足激光跟蹤儀不同工作距離條件下多尺度目標檢測的需求。其中,YOLOv2 方法使用單個卷積神經網絡直接對目標進行分類與回歸預測,檢測速度快,滿足激光跟蹤儀實時檢測合作目標靶球的需求。但是YOLOv2的基礎網絡特征提取能力較弱,針對小目標的定位能力較差,且復雜環境條件下的抗干擾能力較差,制約了合作目標靶球的檢測精度。通過改進基礎特征提取網絡,可進一步提高YOLOv2網絡對多尺度目標的提取能力,從而提高檢測精度。
針對激光跟蹤儀跟蹤的合作目標靶球形狀單一、紋理細節較少且場景復雜的問題,改進基礎特征網絡,提出一種基于YOLOv2單階段目標檢測模型的靶球檢測方法,能夠有效克服復雜背景的干擾,提高合作目標靶球的檢測精度,從而提升激光跟蹤儀對合作目標的瞄準精度。
Joseph Redmon 在2016 年提出了YOLOv2 網絡結構[10],圖像輸入網絡后被劃分為S×S個網格,每個網格通過卷積神經網絡后預測生成K個邊界框。邊界框包含目標的置信度為Pr(Object),預測邊界框與真實邊界的交并比為目標屬于第i類的條件概率為,則每個預測框的類別置信度表示為

式(1)表征了目標的預測邊框與真實邊框重合程度以及目標屬于第i類的概率。
大型裝置精密裝配時,合作目標的運動范圍廣且隨機性強,背景環境復雜,將YOLOv2直接用于合作靶球實時檢測仍存在一定挑戰。YOLOv2 候選框所能匹配到的正負樣本比例極為懸殊,而YOLOv2 的“Fine-Grained Features”方法偏重于融合不同層的全局特征,融合時會損失部分多尺度特征圖的局部細節信息,造成對小尺寸目標的檢測精度下降,制約了合作目標檢測精度。
除了模型與各項參數外,訓練數據集的樣本質量也影響著深度學習網絡的最終檢測性能[11-12]。若待測樣本極易被模型檢測,則其被認為是簡單樣本;若待測樣本較難被模型檢測,則其被認為是困難樣本。相關研究表明:在模型訓練困難樣本時,會產生較大的梯度變化,通過降低簡單樣本的權重,增大困難樣本在訓練中的權重,使其對損失的貢獻變大,能夠有效提高模型的優化效率。
文章提出了一種結合注意力機制框架結構與困難樣本挖掘的方法,通過注意力機制來自適應提取合作目標靶球周圍的有用信息。注意力機制模塊從多個感受野提取到大量上下文信息,并自適應提取顯著對象周圍的有用信息。同時使用了更深度化的特征提取網絡,提取更豐富的全局語義信息與局部定位信息,從而得到更好的檢測與定位精度?;谧⒁饬C制與困難樣本挖掘的改進YOLOv2模型網絡圖如圖1所示,使用RestNet50替換了原YOLOv2 中的Darknet19 特征提取網絡,并增加了注意力機制(AM)模塊以提升模型對困難樣本的挖掘能力。在圖像輸入特征提取網絡前對其進行切片(Slice)操作,使用最近鄰下采樣(Focus)將原本只有RGB 三通道的輸入圖像擴充到12 個通道,經過卷積組件(CBL)和殘差組件(Rex Unit)處理后,進行特征融合(Concat),得到包含豐富特征且無信息損失的特征圖,在輸出層利用注意力機制獲取有用的目標信息。相較標準的YOLOv2網絡,新的特征圖具有更強的小目標檢測能力,且在復雜背景下的魯棒性更強。

圖1 基于注意力機制與困難樣本挖掘的改進YOLOv2模型網絡圖Fig.1 Improved YOLOv2 network based on attention mechanism and difficult sample mining
構建的合作目標靶球數據集使用面陣CCD 相機采集,使用PASCALVOC 標準數據集格式標注,部分樣本圖像如圖2 所示,其中(a),(b),(d)為不同場景的圖像,(b),(c)為同一場景不同角度的圖像,標注目標為合作目標靶球。合作目標靶球在圖像中接近圓形,在構建數據集時用圓形瓶蓋、圓形器件等構建靶球的復雜背景。

圖2 部分合作目標靶球數據集圖像Fig.2 Sample images of the cooperative target ball dataset
數據集包含1056 張圖像。每張圖像大小為640×480 pixels,每幅圖像僅包含一個合作目標靶球,其最小邊界框的左上角與右下角坐標作為真實值保存為標簽。在真實應用場景中,合作目標靶球可能出現在圖像的任意位置,數據集中合作目標靶球的位置分布如圖3(a)所示,數據集中合作目標靶球在圖像中的面積占比分布如圖3(b)所示,可以看出長寬比小的區域樣本密集,小目標在整個數據集中占比較高。

圖3 合作目標靶球分布圖Fig.3 Distribution of cooperative target balls
深度學習目標檢測模型的檢測性能一定程度上受數據集質量的影響。在實際應用中背景極為復雜,且合作目標靶球在圖像中的大小會發生變化,為了增加模型對強背景干擾的魯棒性并提高圖像中任意大小合作目標靶球的檢測精度,需要針對小目標進行數據增強[13]。
實驗中發現,使用Mixup[14]數據增強方法不能解決復雜背景造成的檢測精度下降的問題。由于合作目標靶球的結構外形單一,形狀近似的背景目標極易對檢測造成干擾,且訓練樣本中小目標數據較少,采用測試集檢測小目標樣本時效果較差。因此,本文提出了一種圖像拼接的數據增強方法:從原始數據集隨機選取4 張圖像,對4 張圖像分別進行翻轉、旋轉、縮放操作后,拼接成一幅圖像,對于縮小圖像進行0 像素填充,擴充圖像至原圖像大小,對于放大圖像隨機截取包含合作目標靶球的和原圖大小相同的區域,如此就形成了新的增強數據集。拼接增強后的圖像增加了合作目標背景復雜度,從而提高模型對復雜背景干擾的魯棒性。且由于4 張圖像拼接減小了訓練樣本合作目標靶球的尺寸,從而有效地提高了模型對小尺度合作目標靶球的檢測精度。采用數據集中隨機4 幅圖像進行圖像拼接后生成的數據增強圖像如圖4 所示,其中O 為目標靶球。該方法增強了原數據集中圖像的背景復雜度,有效地增加了檢測模型對復雜環境的魯棒性,以拼接圖像作為訓練樣本,使合作目標靶球的檢測準確率得到顯著提高。

圖4 部分經過數據增強后的合作目標靶球數據集圖像Fig.4 Sample images of the cooperative target ball dataset by stitching enhancement
合作目標靶球檢測使用平均準確率AP(Average Precision)和每秒檢測幀數FPS(Frames Per Second)作為評價指標。如圖5 所示,內部矩形為預測為合作目標靶球的樣本數量,外部矩形為所有被檢測為非合作目標靶球的樣本數量。TP(True Positives)為預測與實際均為合作目標靶球的樣本數量,FP(False Positives)為預測為合作目標靶球但實際為干擾目標的樣本數量,FN(False Negatives)為未檢出合作目標靶球的樣本數量,TN(True Negatives)為預測為非合作目標且實際為非合作目標靶球樣本數量。

圖5 預測合作目標靶球與真實合作目標靶球的TP,FP,FN和TN的定義Fig.5 Definitions of TP,FP,FN and TN for predicted cooperative target balls and real cooperative target balls
查準率p(Precision)和查全率r(Recall)可分別表示為

AP為合作目標靶球PR曲線(Precision-Recall Curve)所包含的面積。使用11 點法[15]計算各個類別的AP,計算公式如式(4)所示。

按照8∶1∶2 的比例將原始數據集分為訓練集、驗證集與測試集。采用2.2節所述的方法對原始數據集進行數據增強。采用未參加訓練的207張原數據集中的圖像進行算法性能測試,其中小目標測試樣本約占總測試樣本數量的40%。實驗所使用的高性能圖像工作站配置為Intel Core I7 v4 3.3 GHz CPU,128.00 GB內存,RTX2080 Ti GPU,11.00 GB GPU 顯存。合作目標靶球檢測實驗在Windows10 系統Pycharm 平臺和Visual Studio 2019平臺上進行,所有程序均采用python 語言和C/C++語言編程實現;程序所使用的深度學習框架為Py-Torch(C 語言對應為LibTorch)。模型訓練過程中的動量設置為0.9,訓練批次大小為4,權值衰減系數為1×10-4,訓練初始學習率為5×10-3,最大迭代次數為30000,在迭代進行到5000 次和12000 次時,學習率分別減小至5×10-4和5×10-5。
為比較本文提出的結合注意力機制和困難數據挖掘的改進YOLOv2 的檢測性能,分別對Faster-RCNN、標準YOLOv2 和本文提出的改進YOLOv2三種模型采用原始數據集和數據增強后數據集進行模型訓練,并采用同一測試集進行合作目標靶球檢測,6 種測試結果見表1。由實驗結果可知,相較原始數據集,經數據增強后的數據集檢測精度有了顯著提高。本文提出的改進YOLOv2方法的檢測準確率為92.25%,相較FasterRCNN 模型檢測準確率提高了5.79%,且檢測速度接近Faster-RCNN 模型的5 倍,能夠有效滿足合作目標靶球高精度檢測要求。

表1 不同模型合作目標靶球檢測結果Tab.1 Detection results of cooperative target balls by different models
利用標準的YOLOv2 與改進的YOLOv2 對同一數據集中不同圖像中合作目標靶球進行對比檢測試驗,結果如圖6 和圖7 所示,同時在3 個場景條件下進行檢測,標準YOLOv2模型在復雜背景下對小目標存在誤檢和漏檢,而本文提出的改進的YOLOv2 方法在復雜背景下的抗干擾性能較好,能夠保持較高的小目標檢測準確率,相較標準YOLOv2方法具有明顯優勢。

圖6 標準YOLOv2模型的不同圖像中目標靶球的檢測結果Fig.6 Detection results of target ball in different images of classical YOLOv2 network

圖7 改進YOLOv2模型的不同圖像中目標靶球的檢測結果Fig.7 Detection results of target ball in different images of improved YOLOv2 network
為解決激光跟蹤儀在大型裝置精密裝配過程中對合作目標瞄準精度較低的問題,探尋基于深度學習的目標檢測方法,以提升復雜背景下合作目標靶球的檢測準確率與檢測速度。分析了實際應用中檢測距離變化而使靶標在圖像中尺寸不同,導致YOLOv2 深度卷積神經網絡算法模型對合作目標靶球檢測精度較低的現象,提出引入基于注意力機制與困難樣本挖掘的方法提升多尺度目標檢測精度;針對復雜背景條件下,合作目標靶球外形單一,紋理細節較少的特點,提出了基于拼接圖像對數據集進行數據增強的方法,增加復雜背景和小目標樣本的數量,有效提高了模型的檢測準確率。實驗結果表明,本文提出的改進YOLOv2 模型和數據增強方法能夠顯著提高復雜背景下小目標合作目標靶球的檢測精度,適用于遠距離的合作目標跟蹤,能夠滿足激光跟蹤儀的實際應用要求。