天天看點

物體檢測算法的曆史發展脈絡綜述

物體檢測(或目标檢測),是計算機視覺領域非常重要的應用,是許多項目的基礎。在計算機視覺識别領域,主要有分類和檢測兩大主要任務,分類隻需要把目前物體歸屬到特定類别,而檢測除了需要分類外,還需要檢測出物體的具體位置坐标,是一種更嚴格意義上的識别。物體檢測應用領域很廣,比如人臉檢測, 汽車檢測、人體及其他部件檢測、logo檢測、常見物體檢測等。

對于一個專業的計算機視覺從業者來說,能較好的了解物體檢測的曆史發展脈絡,則能把握整個技術趨勢,拓展思維,明白算法的原理,對算法改進和應用大有益處。

從整個目标檢測的發展來看,主要經曆了兩個階段:

1. 滑動窗方法:

2. region proposal方法:

1. 滑動窗方法

滑動窗方法,是用不同尺寸的視窗在圖檔内滑動,提取目前視窗的視覺特征,然後送給分類器進行類别判别,最後根據每個滑動窗的分類置信度,拟合出最終的物體位置。

滑動窗方法有兩個缺點:一是計算效率,需要處理成千上萬個視窗,未做優化政策的情況下,性能低下;二是手工設計特征(如hog特征, haar特征, LBP特征, color特征及各種特征的組合等),不能更加詳盡的表達物體的特點,造成識别率較低。

物體檢測早期的算法,大多基于滑動窗,有三個重要的算法裡程碑:

(1)cascade + haar特征:

 https://becominghuman.ai/face-detection-using-opencv-with-haar-cascade-classifiers-941dbb25177

(2)  svm + hog/lbp特征:

https://medium.com/@mithi/vehicles-tracking-with-hog-and-linear-svm-c9f27eaf521a

https://medium.com/@richa.agrawal228/person-detection-in-various-posture-using-hog-feature-and-svm-classifier-2c3a3991022c

(3) dpm + hog特征

https://www.rossgirshick.info/ (rbg大神的首頁,憑借DPM獲得終身成就獎,之後的rcnn系列也是該大神創世之作)

Object Detection with Discriminatively Trained Part Based Models 

Visual Object Detection with Deformable Part Models // 這是兩篇DPM的傑作,闡述了訓練,測試,cascade等,個人覺得,dpm不過時,需要認真研究一下,許多概念都對今後的基于proposal的檢測方法有奠基作用(bound boxing, anchor, nms, cascade等等), dpm的源碼(lsvm, llda)等在優化之後,能夠達到較高的訓練和推理效率,值得研究和移植

https://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Girshick_Deformable_Part_Models_2015_CVPR_paper.pdf // 這篇文章,大神論證了dpm就是卷積神經網絡,個人覺得也是,dpm是rcnn的一種過度,其實svm也是兩層的簡單神經網絡(wx+b)

2.region proposal方法:

(1)rbg大神系列

Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation // rcnn

Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition // 何凱明

Fast R-CNN // fast rcnn

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks // faster rcnn , 此三篇功力深厚(rpn網絡, roi-pooling)

(2) r-fcn

https://arxiv.org/abs/1605.06409 代季峰,何凱明  // 解決檢測中roi-pooling與平移的沖突,同時降低了roi-pooling 逐個計算的負載

(3) Mask R-CNN

(4) yolo & ssd:

基本原理就是合并rpn網絡和分類網絡,box位置經過一次回歸得到,同時以固定的網格作為預設的anchor, 速度提升

(5)data driven:

主要之STN(spatial transform network, deformable R-FCN等),通過訓練,學習一些變換參數,個人覺得,這個方向可能會成為主流

總之,在工程實踐過程中,需要根據實際需要,熟悉每種檢測技術的優缺點,酌情使用,沒有哪一種檢測技術或者分類技術是萬能的,也沒有哪一種網絡是最棒的,論文研究和實際應用還是有很大不同.

繼續閱讀