初學者區分不同的相關計算機視覺任務可能具有挑戰性,例如,影像分類比較易于理解,但目標定位和目標檢測之間的差異可能會令人困惑,尤其是當所有三個任務都可以等同地稱為目標識別時,

影像分類涉及為影像分配類標簽,而目標定位涉及在影像中的一個或多個物件周圍繪制邊界框,目標檢測更具挑戰性,它結合了這兩個任務,并在影像中的每個感興趣的目標周圍繪制一個邊界框,并為它們分配一個類標簽,所有這些問題統稱為目標識別,
在這篇文章中,你將發現對目標識別問題和旨在解決該問題的最先進深度學習模型的詳細介紹,看完這篇文章,你就會知道:
- 物體識別是指用于識別數碼照片中物體的相關任務的集合,
- 基于區域的卷積神經網路或 R-CNN 是一系列用于解決目標定位和識別任務的技術,專為提高模型性能而設計,
- You Only Look Once,或 YOLO,是為速度和實時使用而設計的第二類物件識別技術,
什么是物體識別?
物體識別是一個通用術語,用于描述涉及識別照片中的物體的相關計算機視覺任務的集合,
影像分類涉及預測影像中一個目標的類別, 目標定位是指識別影像中一個或多個物件的位置并在其范圍周圍繪制邊界框, 目標檢測結合了這兩個任務,并對影像中的一個或多個物件進行定位和分類,

因此,我們可以區分這三個計算機視覺任務:
影像分類:預測影像中物件的型別或類別,
- 輸入:具有單個物體的影像,例如照片,
- 輸出:一個類標簽(例如一個或多個映射到類標簽的整數),
目標定位:定位影像中存在的物件并用邊界框指示它們的位置,
- 輸入:包含一個或多個物體的影像,例如照片,
- 輸出:一個或多個邊界框(例如由一個點、寬度和高度定義),
目標檢測:使用邊界框定位目標的存在以及影像中所定位物體的型別或類別,
- 輸入:包含一個或多個物體的影像,例如照片,
- 輸出:一個或多個邊界框(例如由一個點、寬度和高度定義),以及每個邊界框的類標簽,
對這種計算機視覺任務細分的進一步擴展是目標分割,也稱為“目標實體分割”或“語意分割”,其中通過突出顯示物體的特定像素而不是粗邊界框來指示已識別物體的實體,從這個細分中,我們可以看到物件識別是指一組具有挑戰性的計算機視覺任務,

大多數影像識別問題的最新創新都是參與 ILSVRC 任務的一部分,這是一年一度的學術競賽,針對這三種問題型別中的每一種都有單獨的挑戰,目的是在可以更廣泛地利用的每個級別上促進獨立和單獨的改進,例如,請參閱以下三種相應任務型別的串列:
- 影像分類:演算法生成影像中存在的目標類別串列,
- 單目標定位:演算法生成影像中存在的目標類別串列,以及一個軸對齊的邊界框,指示每個目標類別的一個實體的位置和比例,
- 目標檢測:演算法生成影像中存在的目標類別串列以及軸對齊的邊界框,指示每個目標類別的每個實體的位置和比例,
我們可以看到“單目標定位”是更廣泛定義的“目標定位”的更簡單版本,將定位任務限制在影像中的一種型別的目標上,我們可以假設這是一個更容易的任務,下面是一個比較單個物件定位和物件檢測的示例,取自 ILSVRC 論文,

使用預測類標簽的平均分類誤差來評估影像分類模型的性能,使用預期類的預期邊界框和預測邊界框之間的距離來評估單物件定位模型的性能,而使用影像中已知物件的每個最佳匹配邊界框的精度和召回率來評估物件識別模型的性能,
現在我們已經熟悉了物件定位和檢測的問題,讓我們來看看一些最近表現最好的深度學習模型,
R-CNN 模型
R-CNN 系列方法指的是 R-CNN,它可能代表“具有 CNN 特征的區域”或“基于區域的卷積神經網路”,由 Ross Girshick 等人開發,
這包括為目標定位和目標識別而設計和演示的 R-CNN、Fast R-CNN 和 Faster-RCNN 技術,
1)卷積神經網路(R-CNN)
R-CNN 在 Ross Girshick 等人論文中有所描述,它可能是卷積神經網路在目標定位、檢測和分割問題上的首次大規模成功應用之一,該方法在基準資料集上得到了證明,在 VOC-2012 資料集和 200 類 ILSVRC-2013 物件檢測資料集上取得了當時最先進的結果,
他們提出的 R-CNN 模型由三個模塊組成; 他們是:
- 模塊 1:區域提案,生成和提取類別獨立區域提議,例如:候選邊界框,
- 模塊 2:特征提取器,從每個候選區域中提取特征,例如:使用深度卷積神經網路,
- 模塊 3:分類器,將特征分類為已知類別之一,例如:線性 SVM 分類器模型,

計算機視覺技術用于在稱為“選擇性搜索”的影像中提出候選區域或潛在目標的邊界框,盡管設計的靈活性允許使用其他區域提議演算法,
該模型使用的特征提取器是在 ILSVRC-2012 影像分類競賽中獲勝的 AlexNet deep CNN, CNN 的輸出是一個 4,096 元素的向量,它描述了影像的內容,該向量被饋送到線性 SVM 進行分類,具體而言,每個已知類別訓練一個 SVM,
這是CNNs在物體定位和識別問題上的一個相對簡單直接的應用,該方法的缺點是速度較慢,需要對區域提議演算法生成的每個候選區域進行基于 CNN 的特征提取,這是一個問題,因為該論文描述了在測驗時對每個影像大約 2,000 個提議區域進行操作的模型,

2)Fast R-CNN
鑒于 R-CNN 的巨大成功,當時在微軟研究院作業的 Ross Girshick 在 2015 年的一篇題為“Fast R-CNN”的論文中提出了一個擴展來解決 R-CNN 的速度問題,
該論文首先回顧了 R-CNN 的局限性,總結如下:
- 訓練是一個多階段的管道,涉及三個獨立模型的準備和操作,
- 訓練在空間和時間上都是昂貴的,在每張影像上訓練如此多的區域建議的深度 CNN 非常慢,
- 目標檢測很慢,使用深度 CNN 對如此多的區域建議進行預測非常慢,
Fast R-CNN 被提議作為單個模型而不是管道來直接學習和輸出區域和分類,
該模型的架構將照片中的一組區域提議作為輸入,通過深度卷積神經網路傳遞,預訓練的 CNN,例如 VGG-16,用于特征提取,深度 CNN 的末端是一個自定義層,稱為感興趣區域池化層或 RoI 池化層,它提取特定于給定輸入候選區域的特征,
CNN 的輸出然后由全連接層解釋,然后模型分為兩個輸出,一個用于通過 softmax 層進行類別預測,另一個用于邊界框的線性輸出,然后對給定影像中的每個感興趣區域重復此程序多次,

該模型的訓練和預測速度明顯更快,但仍然需要與每個輸入影像一起提出一組候選區域,
3)Faster R-CNN
Shaoqing Ren 等人進一步改進了模型架構,以提高訓練速度和檢測速度,在 Microsoft Research 的 2016 年論文“Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks”中,
該架構是在 ILSVRC-2015 和 MS COCO-2015 目標識別和檢測競賽任務中獲得第一名的基礎,該架構旨在作為訓練程序的一部分提出和改進區域提案,稱為區域提案網路或 RPN,然后,在單個模型設計中,這些區域與 Fast R-CNN 模型一起使用,這些改進既減少了區域提議的數量,又將模型的測驗時間操作加速到接近實時,并具有當時最先進的性能,
雖然它是一個單一的統一模型,但該架構由兩個模塊組成:
- 模塊 1:區域提案網路, 用于提議區域和該區域中要考慮的物件型別的卷積神經網路,
- 模塊 2:Fast R-CNN, 用于從建議區域提取特征并輸出邊界框和類別標簽的卷積神經網路,
兩個模塊都在深度 CNN 的相同輸出上運行, 區域提議網路充當 Fast R-CNN 網路的注意力機制,通知第二個網路看或注意的地方,

RPN 的作業原理是獲取預訓練的深度 CNN(例如 VGG-16)的輸出,并在特征圖上傳遞一個小網路,并為每個區域建議輸出多個區域建議和類別預測,區域提議是邊界框,基于所謂的錨框或預定義形狀,旨在加速和改進區域提議,類別預測是二元的,表明存在或不存在物件,即提議區域的所謂“物件性”,
在兩個子網路同時訓練的情況下使用交替訓練的程序,盡管是交錯的,這允許同時為兩個任務定制或微調特征檢測器深度 CNN 中的引數,
YOLO 模型系列
另一個流行的物件識別模型系列統稱為 YOLO 或“你只看一次(You Only Look Once)”,由 Joseph Redmon 等人開發,
R-CNN 模型通常可能更準確,但 YOLO 系列模型速度快,比 R-CNN 快得多,可以實時實作目標檢測,
1)YOLO
YOLO 模型首先由 Joseph Redmon 等人描述, 在 2015 年題為“You Only Look Once:統一的實時目標檢測”的論文中,請注意,R-CNN 的開發者 Ross Girshick 也是這項作業的作者和貢獻者,然后是 Facebook AI Research,
該方法涉及一個端到端訓練的單個神經網路,它將照片作為輸入并直接預測每個邊界框的邊界框和類標簽, 該技術提供較低的預測準確度(例如,更多的定位錯誤),盡管以每秒 45 幀的速度運行,對于速度優化版本的模型,每秒運行速度高達 155 幀,
該模型首先將輸入影像拆分為一個單元格網格,如果邊界框的中心落在單元格內,則每個單元格負責預測邊界框, 每個網格單元預測一個包含 x、y 坐標以及寬度和高度以及置信度的邊界框, 類別預測也基于每個單元格,

例如,一張影像可能被劃分為一個 7×7 的網格,網格中的每個單元格可以預測 2 個邊界框,從而產生 94 個建議的邊界框預測, 然后將類概率圖和具有置信度的邊界框組合成一組最終的邊界框和類標簽, 從下面的論文中截取的影像總結了模型的兩個輸出,

2)YOLOv2 (YOLO9000) and YOLOv3
該模型由 Joseph Redmon 和 Ali Farhadi 在其 2016 年題為“YOLO9000:更好、更快、更強”的論文中更新,以進一步提高模型性能,
盡管該模型的這種變體被稱為 YOLO v2,但描述了該模型的一個實體,該實體在兩個目標識別資料集上并行訓練,能夠預測 9,000 個目標類別,因此命名為“YOLO9000”,
對模型進行了許多訓練和架構更改,例如使用批量歸一化和高解析度輸入影像,
與 Faster R-CNN 一樣,YOLOv2 模型使用錨框,這是在訓練期間定制的具有有用形狀和大小的預定義邊界框,影像邊界框的選擇是使用對訓練資料集的 k 均值分析進行預處理的,
重要的是,邊界框的預測表示發生了變化,允許小的變化對預測的影響較小,從而產生更穩定的模型,不是直接預測位置和大小,而是預測偏移以相對于網格單元移動和重塑預定義的錨框,并通過邏輯函式進行抑制,

Joseph Redmon 和 Ali Farhadi 在 2018 年題為“YOLOv3:增量改進”的論文中提出了對該模型的進一步改進, 改進相當小,包括更深的特征檢測器網路和較小的表征變化,
總結
人工智能已經走進我們的生活,并應用于各個領域,它不僅給行業帶來了巨大的經濟效益,也為我們的生活帶來了許多改變和便利,
目標檢測技術的安防場景示例:
在人工智能技術+視頻領域,TSINGSEE青犀視頻基于多年視頻領域的技術經驗積累,也不斷研發,將AI檢測、智能識別技術融合到各個視頻應用場景中,如:安防監控、視頻中的人臉檢測、人流量統計、危險行為(攀高、摔倒、推搡等)檢測識別等,典型的示例如EasyCVR視頻融合云服務,具有AI人臉識別、車牌識別、語音對講、云臺控制、聲光告警、監控視頻分析與資料匯總的能力,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/337836.html
標籤:其他
上一篇:【100個 Unity小知識點】?? | Unity 可以在編輯器中讀取Excel,打包成exe后就無法讀取的問題
