部署可扩展的目标检测管道:推理过程(下)
部署可擴展的目標檢測管道:推理過程(下)
融合
感興趣的目標可以被遮擋。有時只能看到目標的一小部分(少至幾個像素)。
? 圖19.車輛和交通信號燈被遮擋。
? 圖20:阻塞了總線。
? 圖21:左側的人被遮擋了。
像YOLOv3這樣的基于CNN的目標檢測方法有一個缺點,即要求特征圖生成對目標遮擋具有魯棒性。而且,僅引發許多特征圖并不能提高性能。已知諸如空間金字塔池之類的方法可以通過改進常規YOLOv3算法來更好地處理遮擋。
照明條件
照明的影響在像素級別上非常明顯。
? 圖22. 白天。
? 圖23:傍晚。
? 圖24:夜間。
結果表明,YOLOv3的分類和定位受光照均勻度的影響。
背景
感興趣的目標可能會混入其環境中,從而使其難以識別。
? 圖25.停車場背景。
? 圖26:公路背景。
? 圖27:城市市區背景。
YOLOv3在預測邊界時遍歷整個輸入圖像。通過附加的上下文,YOLO在背景區域中顯示出更少的誤報。
類間變異
感興趣的類別通常可以相對較寬,例如車輛。有許多不同類型的車輛,每種都有自己的外觀。
圖28.汽車,公共汽車和卡車的車輛類型。
YOLOv3通過避免軟最大化類來最大化類間可變性。取而代之的是,每個班級得分的預測都使用帶有閾值的邏輯回歸。
類內變異
同一類的目標看起來可能大不相同。
? 圖29.綠色汽車。
? 圖30:橙色車。
? 圖31:黃色汽車。
YOLOv3可以很好地執行目標識別,而不管圖像幀中是否存在類內差異。準確性是正確結果在所檢查病例總數中所占的比例。
分類精度=預測多少/實際標簽的實際數量
類 真實標簽計數
汽車 1,078,642
總線 33,307
卡車 63,128
行人 62,837
紅綠燈 827,182
標簽總數(所有類別的總和) 2,065,096
表1.真實標簽計數。
圖32.與預測相比,目標檢測的groundtruth。
類 正確的預測(計數) 總體精度 (%) 分類準確度 (%)
汽車 172,583 8 16
卡車 2,525 1個 4
總線 2,332 1個 7
紅綠燈 33,087 2 4
行人 15,709 7 25
表2.目標檢測精度。
正如所觀察到的那樣,從準確性的角度來看,這些類并不是很好的平衡,因此對于自動駕駛汽車開發中的模型圖像分類性能而言,它們不是合適的選擇。
圖33.具有每個類的精度和召回性能指標的目標檢測預測性能指標。
目標檢測精度不足以從整體預測中識別正確的預測。
總體上較低的準確性似乎還表明,用作YOLOv3模型構建的訓練數據的MSCOCO數據集并不嚴格代表輸入數據集。數據集的這種移動導致了明顯的性能下降。在自動駕駛汽車中普遍存在的訓練數據集選擇偏差和動態環境條件是一個普遍存在的問題,需要解決以提高目標檢測精度。
通過使用來自預訓練的YOLOv3模型的轉移訓練進行重新訓練,可以提高低目標檢測的準確性。在訓練階段,CNN框架初始化預訓練的YOLOv3模型。使用自定義數據集對網絡的各個層進行微調,可獲得更好的目標檢測精度。
預訓練的YOLOv3模型再訓練過程是另一篇文章的主題。但是,對于這篇文章,進一步評估了以mAP為最終指標的性能指標。對性能指標進行測量,使所有可配置參數保持不變,包括“交叉口相交”(IOU)閾值,客觀置信度和NMS閾值,以便可以將模型性能與基準MSCOCO數據集進行比較。預訓練過程的目標是縮小績效差距。
準確性衡量的是正確預測的比例,而準確性衡量的是所有預測的陽性中實際陽性的比例,而召回率則衡量的是預測為陽性的真實陽性的數量。
對于每個類,請使用以下公式:
精度=多少預測是肯定的/總預測
召回=預測的有多少是正數/實際數為真標簽
? 圖34.總線類的精度和召回性能指標。
? 圖35.卡車級的精度和召回性能指標。
? 圖36.汽車類別的精度和召回性能指標。
? 圖37.紅綠燈類的精度和召回性能指標。
精確度和召回率曲線是評估目標檢測器性能的絕佳方法,因為通過為每個目標類別繪制圖形來改變置信度。
? 如果一個類別的目標檢測器的精度隨查全率的提高而保持較高,則它是好的。通過改變置信度閾值,查準率和查全率仍然很高。
? 一個弱目標檢測器,需要增加被檢測物體的數量(較低的精度)來檢索所有地面真實物體(較高的查全率),從高精度值開始,并隨著查全率的提高而減小。
聲音目標檢測器的其它特征包括:
? 高精度(0個誤報)檢測器,僅可識別相關目標
? 高召回率(0個假陰性)檢測器,可以找到所有地面真相
稱為F1分數的單數評估指標有助于控制精度和召回率之間的權衡。
F1分數= 2 精度召回率/(精度+召回率)
圖35.在不同閾值水平下,F1按圖像評分。
當精度和召回率都很高時,F1分數就很高。對于所有其它結果,F1得分較低。
評估目標定位
目標檢測過程也需要對目標進行定位。使用IOU將預測的邊界框與地面真值邊界框進行比較。
IOU =兩個預測邊界框和相應的地面真相邊界框的交集面積/兩個預測邊界框和相應的地真邊界框的相交面積
IOU的范圍可以描述為0 <= IOU <= 1,其中零表示無重疊,而IOU顯示完美重疊。通常,具有特定IOU閾值的框確定候選預測邊界框。使用0.5 IOU閾值,與YOLOv3算法使用的基準IOU閾值相同。
添加到YOLOv3目標檢測算法中的NMS組件也使用IOU概念來使算法性能更好。NMS計算IOU以刪除多個檢測,以為每個檢測到的目標選擇一個邊界框,以生成推理局部圖像輸出。
評估目標檢測
在給定輸入數據集的情況下確定模型的性能時,使用單數度量很有幫助。
平均平均精度(“ mAP”)是每個類的平均精度的平均值,如下表所示,其IOU閾值為0.5,與YOLOv3算法使用的基準IOU閾值相同。
AP(汽車) 25
AP(巴士) 15
AP(卡車) 15
AP(交通燈) 25
AP(人) 40
地圖 24部署可擴展的目標檢測管道:推理過程(下)
表3.性能指標。
隨著IOU閾值的增加,mAP會降低。假設YOLOv3可以在三個尺度上進行預測,則可以分別計算小型,中型和大型目標的mAP,并且性能可能會分別從低到高變化很大。
歸納
解決數據分布,數據類型,注釋要求,質量參數,數據量以及自動化有效性方面的變化敏感性,對于實現最佳注釋精度和速度至關重要。
基于NVIDIA GPU的PyTorch YOLOv3加速的目標檢測推理管道顯示了在現實環境數據中受影響的一些典型挑戰,例如在注釋自主數據時受到照明,旋轉,縮放和遮擋的影響。這項工作可作為創建由推理性能指標支持的優化的,端到端,可擴展管道的概述,這有助于評估在輸入數據集上執行的注釋推理輸出的質量。
總結
以上是生活随笔為你收集整理的部署可扩展的目标检测管道:推理过程(下)的全部內容,希望文章能夠幫你解決所遇到的問題。