無人機之眼 | 目標檢測-基本概念掃盲

  目標檢測任務是計算機視覺的主要分支之一,但對於目標檢測具體做什麼,目標檢測算法的有哪些類別以及相關定義卻很少會有人關注,雖然這些對於解決實際問題顯得有些無關緊要,但對於更加系統性的學習還是非常必要的。本文僅面向深度學習領域的目標檢測。

一、什麼是目標檢測

  • 目標檢測(Object Detection)的任務是找出圖像中所有感興趣的目標(物體),確定它們的類別和位置,是計算機視覺領域的核心問題之一。由於各類物體有不同的外觀、形狀和姿態,加上成像時光照、遮擋等因素的干擾,目標檢測一直是計算機視覺領域最具有挑戰性的問題。
  • 計算機視覺中關於圖像識別有四大類任務:

分類-Classification:解決“是什麼?”的問題,即給定一張圖片或一段視頻判斷裏面包含什麼類別的目標。

定位-Location:解決“在哪裏?”的問題,即定位出這個目標的位置。

檢測-Detection:解決“是什麼?在哪裏?”的問題,即定位出這個目標的位置並且知道目標物是什麼。

分割-Segmentation:分爲實例的分割(Instance-level)和場景分割(Scene-level),解決“每一個像素屬於哪個目標物或場景”的問題。

file

二、目標檢測要解決的核心問題

  除了圖像分類之外,目標檢測要解決的核心問題是:

1.目標可能出現在圖像的任何位置。

2.目標有各種不同的大小。

3.目標可能有各種不同的形狀。

三、目標檢測算法分類

  基於深度學習的目標檢測算法主要分爲兩類:

1.Two stage目標檢測算法

  • 先進行區域生成(region proposal,RP)(一個有可能包含待檢物體的預選框),再通過卷積神經網絡進行樣本分類。
  • 任務:特徵提取—>生成RP—>分類/定位迴歸。
  • 常見的two stage目標檢測算法有:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN和R-FCN等。

2.One stage目標檢測算法

  • 不用RP,直接在網絡中提取特徵來預測物體分類和位置。
  • 任務:特徵提取—>分類/定位迴歸。
  • 常見的one stage目標檢測算法有:OverFeat、YOLOv1、YOLOv2、YOLOv3、SSD和RetinaNet等 file

四、目標檢測的應用

  目標檢測具有巨大的實用價值和應用前景。應用領域包括人臉檢測、行人檢測、車輛檢測、飛機航拍或衛星圖像中道路的檢測、車載攝像機圖像中的障礙物檢測、醫學影像在的病竈檢測等。還有在安防領域中,可以實現比如安全帽、安全帶等動態檢測,移動偵測、區域入侵檢測、物品看護等功能。

五、結尾

  本文節選自《深度學習500問》,想要更加深入瞭解學習上文中所提及的算法,可以進入書中目標檢測章節進行學習。

  • End -

技術發展的日新月異,阿木實驗室將緊跟技術的腳步,不斷把機器人行業最新的技術和硬件推薦給大家。看到經過我們培訓的學員在技術上突飛猛進,是我們培訓最大的價值。如果你在機器人行業,就請關注我們的公衆號,我們將持續發佈機器人行業最有價值的信息和技術。 阿木實驗室致力於爲機器人研發提供開源軟硬件工具和課程服務,讓研發更高效!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章