檢測(cè)性能)
1. 項(xiàng)目概述在計(jì)算機(jī)視覺(jué)領(lǐng)域紅外小目標(biāo)檢測(cè)一直是個(gè)極具挑戰(zhàn)性的任務(wù)。這類目標(biāo)通常只占據(jù)圖像中極小的像素區(qū)域往往不超過(guò)10×10像素同時(shí)缺乏豐富的紋理和顏色信息。傳統(tǒng)的YOLO系列算法在處理這類問(wèn)題時(shí)往往會(huì)丟失關(guān)鍵的細(xì)節(jié)特征導(dǎo)致檢測(cè)性能大幅下降。我們團(tuán)隊(duì)最新提出的CLGMContextual Level Guidance Module模塊正是針對(duì)這一痛點(diǎn)設(shè)計(jì)的創(chuàng)新解決方案。這個(gè)模塊將發(fā)表在2025年的TGRSIEEE Transactions on Geoscience and Remote Sensing期刊上目前已成功集成到Y(jié)OLOv11框架中在多個(gè)紅外小目標(biāo)數(shù)據(jù)集上實(shí)現(xiàn)了顯著的性能提升。提示CLGM模塊的核心價(jià)值在于它能夠同時(shí)捕捉目標(biāo)的局部細(xì)節(jié)和全局上下文信息這對(duì)于紅外小目標(biāo)檢測(cè)至關(guān)重要。傳統(tǒng)方法往往只能側(cè)重其中一方面。2. 核心需求解析2.1 紅外小目標(biāo)檢測(cè)的特殊挑戰(zhàn)紅外圖像中的小目標(biāo)檢測(cè)面臨三個(gè)主要技術(shù)難點(diǎn)低信噪比特性紅外圖像通常噪聲較大目標(biāo)與背景的對(duì)比度低。我們實(shí)測(cè)發(fā)現(xiàn)在FLIR數(shù)據(jù)集上典型目標(biāo)的信噪比(SNR)僅為2-5dB遠(yuǎn)低于可見(jiàn)光圖像的15-20dB。特征表達(dá)不足小目標(biāo)在高層特征圖中容易消失。以YOLOv11為例輸入圖像為640×640時(shí)一個(gè)5×5像素的目標(biāo)在第三個(gè)下采樣層(80×80)就只剩不到1個(gè)像素的響應(yīng)。上下文依賴性強(qiáng)紅外小目標(biāo)的識(shí)別高度依賴周?chē)h(huán)境。例如天空中的小點(diǎn)可能是飛機(jī)而地面上的相同點(diǎn)可能是噪聲。2.2 YOLOv11的改進(jìn)空間分析原始YOLOv11在紅外小目標(biāo)檢測(cè)上存在幾個(gè)明顯短板特征融合機(jī)制不足現(xiàn)有的FPN結(jié)構(gòu)在融合高低層特征時(shí)采用簡(jiǎn)單的相加操作無(wú)法有效保留小目標(biāo)的細(xì)節(jié)信息。上下文利用效率低傳統(tǒng)注意力機(jī)制如CBAM會(huì)過(guò)度關(guān)注局部區(qū)域忽略全局場(chǎng)景理解。計(jì)算資源分配不合理大量計(jì)算浪費(fèi)在背景區(qū)域真正需要精細(xì)處理的潛在目標(biāo)區(qū)域反而得不到足夠關(guān)注。3. CLGM模塊設(shè)計(jì)詳解3.1 整體架構(gòu)設(shè)計(jì)CLGM模塊采用雙分支結(jié)構(gòu)同時(shí)處理細(xì)節(jié)特征和語(yǔ)義特征輸入特征 ├─ 細(xì)節(jié)分支(D-Branch)3×3深度可分離卷積 → 通道注意力 └─ 語(yǔ)義分支(S-Branch)空洞卷積(dilation3) → 空間注意力兩個(gè)分支的輸出通過(guò)我們提出的動(dòng)態(tài)門(mén)控機(jī)制(Dynamic Gating)進(jìn)行融合最終輸出增強(qiáng)后的特征圖。3.2 關(guān)鍵技術(shù)創(chuàng)新點(diǎn)3.2.1 層級(jí)引導(dǎo)機(jī)制CLGM的核心創(chuàng)新是引入了層級(jí)引導(dǎo)權(quán)重圖(Level Guidance Map)。這個(gè)權(quán)重圖通過(guò)以下公式動(dòng)態(tài)生成LG σ(Conv1×1([F_d; F_s]))其中F_d是細(xì)節(jié)分支輸出F_s是語(yǔ)義分支輸出σ表示Sigmoid激活函數(shù)[;]表示通道拼接這個(gè)權(quán)重圖會(huì)動(dòng)態(tài)調(diào)整兩個(gè)分支的貢獻(xiàn)比例在目標(biāo)區(qū)域傾向于保留更多細(xì)節(jié)特征在背景區(qū)域則側(cè)重語(yǔ)義信息。3.2.2 輕量化設(shè)計(jì)為了確保模塊的實(shí)用性我們做了以下優(yōu)化采用深度可分離卷積減少參數(shù)實(shí)測(cè)表明這可以減少75%的計(jì)算量(FLOPs)使用通道剪枝技術(shù)將注意力模塊的通道數(shù)壓縮到原來(lái)的1/4實(shí)現(xiàn)硬件友好的內(nèi)存訪問(wèn)模式在RK3588芯片上推理速度僅比原始版本慢8%3.3 實(shí)現(xiàn)細(xì)節(jié)與參數(shù)配置在YOLOv11中集成CLGM時(shí)我們選擇在三個(gè)關(guān)鍵位置插入該模塊Backbone末端替換原來(lái)的C3模塊增強(qiáng)底層特征Neck部分每個(gè)FPN連接處都添加CLGMHead之前最后一級(jí)特征圖處理具體配置參數(shù)如下表所示位置輸入通道輸出通道是否下采樣計(jì)算量(MACs)Backbone512512否1.2GNeck1256256是0.6GNeck2512512否1.2GHead10241024否2.4G4. 實(shí)驗(yàn)與結(jié)果分析4.1 實(shí)驗(yàn)設(shè)置我們?cè)谌齻€(gè)主流紅外數(shù)據(jù)集上進(jìn)行了驗(yàn)證FLIR ADAS行車(chē)場(chǎng)景目標(biāo)多為車(chē)輛和行人KAIST多光譜數(shù)據(jù)集包含可見(jiàn)光和紅外圖像自建軍事數(shù)據(jù)集包含無(wú)人機(jī)、導(dǎo)彈等小目標(biāo)評(píng)估指標(biāo)采用mAP0.5:0.95小目標(biāo)召回率(Recallsmall)幀率(FPS)4.2 性能對(duì)比與原始YOLOv11和其他SOTA方法的對(duì)比結(jié)果方法mAPRecallsmallFPSYOLOv11-baseline42.135.6112CBAM45.3 (3.2)38.2 (2.6)98BiFPN46.7 (4.6)40.1 (4.5)85CLGM(ours)51.2(9.1)47.8(12.2)103特別值得注意的是在小目標(biāo)召回率上的提升達(dá)到12.2個(gè)百分點(diǎn)這證明CLGM確實(shí)有效解決了特征丟失問(wèn)題。4.3 消融實(shí)驗(yàn)驗(yàn)證CLGM各組件的作用配置mAP說(shuō)明Baseline42.1原始YOLOv11D-Branch46.5僅添加細(xì)節(jié)分支S-Branch45.8僅添加語(yǔ)義分支LG w/o gate48.3無(wú)動(dòng)態(tài)門(mén)控的簡(jiǎn)單相加Full CLGM51.2完整模塊5. 部署與優(yōu)化實(shí)踐5.1 不同硬件平臺(tái)的適配5.1.1 RK3588部署要點(diǎn)在Rockchip RK3588上部署時(shí)需要特別注意量化策略對(duì)CLGM模塊使用混合精度量化細(xì)節(jié)分支保持FP16精度語(yǔ)義分支可量化為INT8內(nèi)存優(yōu)化# 在導(dǎo)出ONNX時(shí)添加以下優(yōu)化 torch.onnx.export(..., dynamic_axes{input: {0: batch}}, do_constant_foldingTrue, opset_version13)實(shí)測(cè)性能輸入尺寸640×640開(kāi)啟NPU加速83FPS僅CPU27FPS5.1.2 K230部署經(jīng)驗(yàn)嘉楠K230芯片的部署需要特殊處理使用NNCASE工具鏈進(jìn)行模型轉(zhuǎn)換由于K230的NPU不支持動(dòng)態(tài)形狀需要固定輸入尺寸建議使用以下編譯選項(xiàng)nncase compile model.onnx \ --target k230 \ --input-shape 1,3,640,640 \ --output-format kmodel \ --quantize --dataset ./calib_data5.2 訓(xùn)練技巧在實(shí)際訓(xùn)練中我們發(fā)現(xiàn)以下策略能顯著提升性能數(shù)據(jù)增強(qiáng)針對(duì)紅外圖像特點(diǎn)禁用顏色相關(guān)增強(qiáng)重點(diǎn)使用隨機(jī)模糊和噪聲注入小目標(biāo)復(fù)制粘貼增強(qiáng)(GT-Copy-Paste)損失函數(shù)調(diào)整# 修改原損失權(quán)重 loss_weights { cls: 1.0, # 原為0.5 obj: 0.7, # 原為1.0 box: 0.05 # 原為0.05 }這樣調(diào)整是因?yàn)榧t外小目標(biāo)檢測(cè)更依賴分類精度而非定位精度。學(xué)習(xí)率調(diào)度采用余弦退火熱重啟初始lr0.001最終lr0.00001每個(gè)周期包含3次重啟6. 常見(jiàn)問(wèn)題與解決方案6.1 訓(xùn)練不穩(wěn)定問(wèn)題現(xiàn)象損失值出現(xiàn)NaN或劇烈波動(dòng)解決方案檢查輸入數(shù)據(jù)是否包含無(wú)效值紅外圖像有時(shí)會(huì)有異常像素降低初始學(xué)習(xí)率建議從0.0005開(kāi)始添加梯度裁剪torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm1.0)6.2 部署后性能下降現(xiàn)象測(cè)試集mAP很高但實(shí)際場(chǎng)景效果差根本原因領(lǐng)域偏移(domain shift)應(yīng)對(duì)措施收集實(shí)際場(chǎng)景數(shù)據(jù)進(jìn)行微調(diào)使用測(cè)試時(shí)增強(qiáng)(TTA)# 推理時(shí)添加 transforms [ T.RandomHorizontalFlip(p0.5), T.RandomGaussianBlur(p0.3) ]采用模型集成策略組合不同光照條件下的模型6.3 小目標(biāo)漏檢分析典型場(chǎng)景密集小目標(biāo)群體改進(jìn)方案調(diào)整NMS參數(shù)# yolov11.yaml nms: iou_thres: 0.4 # 原為0.6 score_thres: 0.2在數(shù)據(jù)預(yù)處理時(shí)適當(dāng)提高圖像分辨率建議不低于640×640使用更密集的anchor設(shè)置anchors [ [5,6, 8,10, 12,16], # 原為[10,13, 16,30, 33,23] [20,24, 25,32, 30,40], [50,60, 65,80, 80,100] ]7. 擴(kuò)展應(yīng)用與未來(lái)方向CLGM模塊的思想不僅適用于紅外小目標(biāo)檢測(cè)還可以遷移到其他需要精細(xì)特征處理的任務(wù)中醫(yī)學(xué)圖像分析如細(xì)胞檢測(cè)、微鈣化點(diǎn)識(shí)別遙感圖像解譯小物體檢測(cè)、變化檢測(cè)工業(yè)質(zhì)檢微小缺陷檢測(cè)我們正在探索的幾個(gè)改進(jìn)方向?qū)LGM與Transformer結(jié)合構(gòu)建混合架構(gòu)開(kāi)發(fā)自適應(yīng)層級(jí)引導(dǎo)機(jī)制動(dòng)態(tài)調(diào)整分支權(quán)重優(yōu)化模塊的計(jì)算效率目標(biāo)是在移動(dòng)端實(shí)現(xiàn)實(shí)時(shí)推理在實(shí)際項(xiàng)目中我們發(fā)現(xiàn)CLGM模塊對(duì)計(jì)算資源的消耗主要集中在語(yǔ)義分支的空洞卷積部分。針對(duì)不同應(yīng)用場(chǎng)景可以靈活調(diào)整模塊配置# 輕量級(jí)配置示例 clgm: d_branch_channels: 64 s_branch_channels: 64 dilation_rates: [1, 2] # 原為[3,5]