鄒盛, 周李兵, 季亮, 于政乾
(1. 中煤科工集團常州研究院有限公司,江蘇 常州 213015;2. 天地(常州)自動化股份有限公司,江蘇 常州 213015))
近年來,隨著煤礦智能化建設加速進行,機器視覺技術在井下行人檢測領域應用廣泛,通過圖像處理算法對行人目標進行檢測和分析,用于后續井下無人駕駛車輛感知和智能安防監控等,對于提高煤礦安全生產管理水平、防范人身傷亡事故具有重要意義[1-2]。受井下光線昏暗、光照不均、背景復雜、行人目標小且密集等特殊工況環境的影響,圖像中的行人目標存在邊緣細節特征少、信噪比低、與背景相似度高等問題,難以有效識別遮擋多尺度下的行人目標,導致基于機器視覺的行人檢測技術在井下應用面臨很大挑戰。
基于機器視覺的行人目標檢測技術主要分為基于傳統圖像處理算法和基于深度學習算法2 種。基于傳統圖像處理的行人目標檢測算法包括方向梯度直方圖(Histogram of Oriented Gradient, HOG)+支持向量機(Support Vector Machines,SVM)、積分通道特征(Integral Channel Features,ICF)+AdaBoost、可變形部件模型(Deformable Part Model,DPM)等[3],主要依賴人工設計特征,獲得的行人檢測特征主觀性強,魯棒性差,無法滿足煤礦井下暗光、粉塵等特殊工況的多尺度行人檢測需求。基于深度學習的行人目標檢測算法通過大規模數據集訓練學習,主動提取特征,解決了基于傳統圖像處理的行人目標檢測算法模型泛化能力差的問題,針對復雜環境下的圖像處理問題具有更大的性能優勢和應用潛力。基于深度學習的行人目標檢測算法主要包括two-stage 和one-stage 2 類。two-stage 算法通過區域生成網絡產生目標候選框,并對目標候選框進行分類回歸,以基于區域候選 框 的 卷 積 神 經 網 絡(Region-based Convolutional Neural Networks,RCNN)及 其 迭 代 升 級 網 絡Fast RCNN、Faster RCNN[4]為代表,優點是檢測效果較好;one-stage 算法采用端到端的方式訓練網絡,無需生成區域候選框,直接對目標檢測框進行分類回歸并輸出檢測結果,主要包括SSD[5]系列、YOLO[6]系列、CornerNet[7]系列等,優點是檢測速度快。李偉山等[8]提出了一種改進的Faster RCNN 煤礦井下行人檢測方法,以Faster RCNN 算法為基礎,對候選區域網絡(Region Proposals Network,RPN)結果進行改進,將不同層級的特征融合,以提高行人檢測準確率,但網絡計算量大,無法應用于實時系統中。李現國等[9]設計了一種基于DenseNet 網絡的輕量級卷積神經網絡作為SSD 網絡的基礎網絡﹐以滿足井下視頻行人實時檢測需求,并設計了基于ResNet 網絡的輔助網絡,以增強特征表征能力,雖然其檢測速度很快,但在井下遮擋、密集場景下的行人檢測效果不理想。張明臻[10]針對井下弱光環境中捕獲圖像質量不佳的問題,通過將弱光圖像分解為光照圖和反射圖進行增強和去噪處理,并將含有殘差塊的 Dense 模塊添加到 YOLO 網絡中,構建了基于 Dense-YOLO網絡的井下行人檢測模型,以降低弱光環境下行人檢測漏檢率,但其對于一些垂直邊緣較強,與背景相似度高的干擾物易造成虛警。
針對上述問題,本文提出了一種基于圖像融合和改進CornerNet-Squeeze 的煤礦井下行人檢測方法。該方法對紅外相機和深度相機采集的圖像進行融合,并結合二者優勢,提升井下行人檢測的精度;在CornerNet-Squeeze 的主干網絡后加入八度卷積(Octave Convolution,OctConv),增強行人目標邊緣特征,提高井下多尺度行人目標的檢測能力。
CornerNet 網絡作為一種one-stage 的 Anchor-Free 目標檢測算法,省略了生成錨框的步驟,具有與two-stage 算法相媲美的檢測精度[11-12],網絡結構如圖1 所示。其中沙漏型主干網絡Hourglass Network由2 個全卷積網絡Hourglass-52 Network 組成,通過一系列下采樣和上采樣操作,實現輸入圖像的多通道特征圖提取。提取的特征圖輸出到2 個分支模塊,并分別預測目標左上角和右下角2 組角點位置。每個角點分支預測模塊經過Corner Pooling 后,輸 出 Heatmap、Embeddings、Offsets 3 個 部 分[13]。Heatmap 輸出預測角點信息;Embeddings 輸出不同角點之間的距離,判斷2 個角點是否屬于同一個實例目標;Offsets 輸出從輸入映射到特征圖的誤差信息,調整目標角點位置。通過聚合三者信息預測得到目標角點,采用Soft-NMS 操作去除冗余框,最終輸出目標檢測結果。

圖1 CornerNet 網絡結構Fig. 1 CornerNet network structure
沙漏型主干網絡Hourglass Network 中單個Hourglass-52 Network 網絡結構如圖2 所示[14-16]。該網絡中使用了大量的Res 殘差模塊,當輸入圖像尺寸為256×256 時, 主干網絡部分的參數量高達18 700 萬,巨大的參數量造成大部分計算資源集中消耗,導致實時性降低,且其計算復雜度會隨輸入圖像尺寸增大呈指數增加[16]。為降低沙漏型主干網絡復雜度,追求更高的實時性,CornerNet-Squeeze 在CornerNet 基礎上結合SqueezeNet[17-18]的思想,采用SqueezeNet 中的fire 模塊代替Hourglass network 中的Res 殘差模塊,對其進行精簡處理。Res 殘差模塊由2 個3 × 3 大小的卷積層和跳躍連接組成;fire 模塊先使用1 × 1 卷積層對數據進行降維處理,再用可分離的1 × 1 卷積層和3 × 3 卷積層進行組合擴展。采用1× 1 的卷積核參數量為3 × 3 卷積核的1/9,可大大減少Hourglass network 計算參數,提高模型的推理速度。

圖2 Hourglass-52 Network 網絡結構Fig. 2 Hourglass-52 Network structure
CornerNet-Squeeze 網絡只對沙漏型主干網絡做了輕量化處理,但面對復雜背景和小目標圖像時,往往目標特征提取不完整,影響Heatmap 熱圖對目標角點位置的判斷,導致目標檢測框定位錯誤。因此,本文在CornerNet-Squeeze 的沙漏型主干網絡后引入OctConv[19-20]特征增強模塊,在 不 明 顯 增 加CornerNet-Squeeze 網絡復雜度的情況下,加強對目標邊緣特征的提取能力,提高Heatmap 熱圖對角點預測的準確性,減少CornerNet-Squeeze 網絡由于目標角點漏檢導致空間距離較小的同類目標及小目標誤檢情況。改進CornerNet-Squeeze 網絡結構如圖3 所示。

圖3 改進CornerNet-Squeeze 網絡結構Fig. 3 Improved CornerNet-Squeeze network structure
在卷積神經網絡中,卷積計算得到的特征圖中存在高頻部分和低頻部分,通過分離特征圖,增加高頻信息輸出,可更多地提取圖像中所關注目標的輪廓特征,有助于增強目標邊緣特征,提高識別率。本文在CornerNet-Squeeze 網絡中引入OctConv 特征增強模塊,對經沙漏型主干網絡提取的特征圖中高低頻特征分量進行分離,輸出更多代表目標輪廓信息的高頻特征,增強目標邊緣特征。其處理步驟如下。
1) 采用1 × 1 的Conv 對主干網絡提取的特征圖進行降維處理。
2) 降維后的特征圖通過OctConv 分離?融合高低頻特征信息,過程如圖4 所示。

圖4 OctConv 操作過程Fig. 4 OctConv operation procedure
首先沿通道尺寸使用系數 α將沙漏型主干網絡提取的特征圖分解為高頻分量H和低頻分量L,為輸入特征張量,α ∈[0,1], α = 0 時僅輸出高頻分量, α = 1 時僅輸出低頻分量,c為通道數,h,w為特征張量的空間維度。然后對高頻分量H進行平均池化和卷積操作,對低頻分量L進行卷積和上采樣操作,分別輸出融合特征分量Hm和Lm。最后加權得到融合的特征信息M。求解過程為
式中:C為k×k的卷積核,C∈Fc×k×k,k為卷積核大小; ?為卷積運算;P為池化操作;U為上采樣操作;ρ為幅值系數, ρ ∈(0,1)。
3) 輸出的高頻信息經過1 × 1 反卷積 DConv 操作,還原圖像原有尺寸,在后續角點預測模塊經處理生成Heatmap,計算角點得到目標檢測結果。
為充分采集煤礦井下行人數據,將紅外相機和深度相機安裝在防爆無軌膠輪車車頂,采集的原始數據以視頻方式保存。通過對視頻抽幀得到深度圖像和紅外圖像,基于尺度不變特征變換算法對紅外圖像和深度圖像進行配準對齊,對配準圖像進行中心裁剪以消除邊緣部分的對齊誤差,最終得到1 000 組 480× 360 的紅外圖像和深度圖像對齊圖像。
采用雙尺度圖像融合(Two-scale Image Fusion,TIF)算法[21]通過圖像分解、圖像合并、圖像重構對1 000 組紅外圖像和深度圖像對齊圖像進行融合處理。為了進一步提高融合后圖像的成像品質,采用形態學方法對融合圖像進行處理,突出行人的紋理細節和灰度特征,消除冗余的背景干擾。圖像融合處理原理如圖5 所示。

圖5 圖像融合處理原理Fig. 5 Principle of image fusion processing
1) 圖像分解。首先使用均值濾波器 μ(x,y)對原始紅外圖像f1(x,y)和 原始深度圖像f2(x,y)進行圖像分解,分別獲得紅外圖像基礎層圖像f1b(x,y)、深度圖像基礎層圖像f2b(x,y),并通過原始紅外圖像和原始深度圖像與紅外圖像基礎層圖像和深度圖像基礎層圖像的差值得到紅外圖像細節層圖像f1d(x,y)和深度圖像細節層圖像f2d(x,y)。
2) 圖像合并。采用算術平均策略對基礎層圖像進行合并,得到基礎層合并圖像fb(x,y),fb(x,y)=采用加權處理策略對細節層圖像進行合并,分別對原始紅外圖像f1(x,y)和原始深度圖像f2(x,y)進行均值濾波和中值濾波,計算均值濾波圖像 φf1, φf2和中值濾波圖像 θf1,θf2的歐拉距離,得到視覺顯著圖像 ε1(x,y) 和 ε2(x,y),進一步計算得到細節層的加權合并系數矩陣和細節層合并圖像fd(x,y)=δ1(x,y)f1d(x,y)+δ2(x,y)f2d(x,y) 。
3) 圖像重構。對合并后的基礎層圖像和細節層圖像采用像素位對應相加進行圖像重構,得到最后深度圖像和紅外圖像的融合圖像z(x,y)=fb(x,y)+fd(x,y)。
4) 形態學處理。采用先腐蝕后膨脹形態學開運算對融合后的圖像進行形態學處理,消除亮度較高的細小區域,去除孤立的小點、毛刺,消除小物體,平滑較大物體邊界,減小背景干擾,突出行人輪廓特征。
經過上述步驟處理后的深度圖像和紅外圖像融合結果如圖6 所示。可看出融合圖像結合了紅外圖像的行人灰度特征和深度圖像的輪廓邊緣,經過形態學處理后,減少了環境信息干擾,突出了行人特征,有助于提高行人檢測的準確率。

圖6 圖像融合處理過程Fig. 6 Process of image fusion
對深度圖像、紅外圖像及融合圖像使用標注軟件LabelImg 進行人工標注,得到3 種訓練數據集。
整個數據集包含遮擋、密集人群、小目標在井下低照度、水霧、粉塵等特殊場景樣本,總計約2 000 個行人目標。
行人目標檢測模型的訓練平臺為NVIDIA GeForce GTX 2080Ti,內存為32 GB,操作系統為Ubuntu18.04LTS,采用Pytorch 深度學習框架,推理平臺為礦用本安型邊緣計算裝置,具有14TOP 算力。紅外、 深度、融合數據集均包含1 000 張圖像,將圖像數據集按比例隨機劃分,訓練集和驗證集分別包含700 張和100 張圖像樣本,測試集包含200 張圖像樣本。在模型訓練時先對輸入圖像進行隨機裁剪、擴充、水平翻轉和不等比例縮放,以增強數據集,再對圖像采用主成分分析方法(Principal Component Analysis,PCA)進行白化操作,降低輸入數據的冗余性。設置最大訓練周期為500,初始學習率為0.001,每經過100 次迭代,學習率降為原來的0.5 倍。模型訓練使用 Early-Stopping 策略,當模型驗證損失值多次不下降時,認為模型達到收斂狀態,自動結束訓練。 使用改進CornerNet-Squeeze 網絡和原始CornerNet、CornerNet-Squeeze 網絡分別在3 種數據集上進行訓練,得到相應的模型。
選取CornerNet-Squeeze 網絡與改進CornerNet-Squeeze 網絡在同一數據集上進行訓練,驗證損失值曲線如圖7 所示。可看出迭代400 次后2 個模型逐漸達到收斂, 改進 CornerNet-Squeeze 網絡較CornerNet-Squeeze 網絡驗證損失值低,說明改進CornerNet-Squeeze 網絡訓練模型具有更好的泛化能力。

圖7 同一數據集下驗證損失值曲線Fig. 7 Validation-Loss value curve under the same data set
采用準確率p、召回率R、漏檢率F、平均精度A及幀速率(Frames Per Second,FPS)作為性能評價指標。
式中:NTP為被預測為正樣本的正樣本數量;NFP為被預測為正樣本的負樣本數量;NFN為被預測為負樣本的正樣本數量;A為平均精度,用來衡量算法的檢測精度。
小尺度目標的評價指標為As(像素面積小于32×32 的目標檢測平均精度),中等尺度目標評價指標為Am(像素面積大于32×32 且小于96×96 的目標檢測平均精度),大尺度目標評價指標為Ab(像素面積大于96×96 的目標檢測平均精度)。
訓練完成后,不同模型針對不同數據集的行人目標檢測性能見表1。可看出對于同一數據集,CornerNet-Squeeze 模 型 和 改 進CornerNet-Squeeze 模型的檢測速度比CornerNet 模型高;改進CornerNet-Squeeze 模型的檢測精度較CornerNet-Squeeze 模型和CornerNet 模型高,由此可見改進CornerNet-Squeeze 模型在提升行人目標檢測準確性的同時,保持了原算法的檢測速度;同一模型采用不同數據集訓練時,融合圖像數據集訓練得到的模型檢測精度較深度圖像和紅外圖像數據集訓練得到模型檢測精度高,檢測速度略有下降,這是由于圖像的融合處理導致計算量增加,犧牲了部分檢測速率,但不影響模型的實時檢測性能,說明融合圖像能充分結合深度圖像和紅外圖像二者的優勢,有利于提高模型的檢測精度。

表1 不同模型的行人目標檢測性能Table 1 Pedestrian target detection performance of different models
為驗證本文算法在不同背景下的行人檢測效果,設定輕微遮擋(遮擋范圍10%~30%)、部分遮擋(遮擋范圍30%~60%)、嚴重遮擋(遮擋范圍60%~80%)、大尺寸目標(行人高度大于80 像素)、中小尺寸目標(行人高度40~80 像素)、極小尺寸目標(行人高度小于40 像素)6 種行人目標測試場景,采用融合圖像數據集訓練的3 種模型進行行人目標檢測,結果見表2。可看出在6 種測試場景下,改進CornerNet-Squeeze 模型漏檢率均最低。

表2 不同背景下行人目標檢測效果Table 2 Pedestrian target detection effect in different backgrounds
為進一步驗證改進CornerNet-Squeeze 的可行性和先進性, 與主流目標檢測算法YOLOv4 在COCO2014 行人數據集上訓練得到的模型進行比較,結果見表3。可看出改進CornerNet-Squeeze 算法的精度A較YOLOv4 提高了 1.1%,檢測速度提高了6.7%。對于小尺度行人目標,改進CornerNet-Squeeze 算法的As明顯優于YOLOv4 算法,但對于中等和大尺寸行人目標,改進CornerNet-Squeeze 算法的Am,Ab較YOLOv4 算法有所下降,這是由于中等和大尺寸目標在圖像中占比較大,特征相對顯著,在此類圖像下本文算法對目標邊緣增強效果有限。

表3 在COCO2014 行人數據集上性能對比Table 3 Performance comparison on the COCO2014 pedestrian dataset
測試集中部分圖像的行人目標檢測結果如圖8 所示,從左到右分別為紅外圖像、深度圖像和融合 圖 像 在 CornerNet-Squeeze 和 改 進 CornerNet-Squeeze 上的測試結果。可看出采用融合圖像在2 種模型上進行行人目標檢測的置信度較紅外圖像和深度圖像均有所提升;改進CornerNet-Squeeze 有效檢測出了紅外圖像和融合圖像中遠處小目標,而CornerNet-Squeeze 未能檢出。

圖8 3 種數據的檢測結果Fig. 8 Test results of three kinds of data
1) 采用SqueezeNet 中的fire 模塊替換CornerNet中沙漏型主干網絡的Res 模塊實現輕量化改造,CornerNet-Squeeze 模型較CornerNet 模型在檢測速率上有明顯提升;引入OctConv 特征增強模塊,所得改進CornerNet-Squeeze 模型較CornerNet-Squeeze、CornerNet 模型在檢測精度上顯著提高。可見改進CornerNet-Squeeze 模型在提升行人檢測準確性的同時兼顧了檢測實時性。
2) 采用融合圖像數據集訓練得到的模型檢測精度較紅外圖像、深度圖像數據集訓練得到的模型高,FPS 略有下降,表明融合圖像能充分結合深度圖像和紅外圖像的優勢,有利于提高模型檢測精度,但圖像的融合處理導致計算量增加,犧牲了部分檢測速率。
3) 改進CornerNet-Squeeze 模型的漏檢率最低,針對遮擋及多尺度行人目標的檢測具有一定優勢。
4) 與YOLOv4 相比,在 COCO2014 行人數據集上改進CornerNet-Squeeze 的平均精度提高了 1.1%,檢測速度提高了6.7%。
5) 改進CornerNet-Squeeze 模型能夠有效檢測出圖像中的遠處小目標,對小目標的檢測能力提升明顯。