1. 什麼是目標檢測?
目標檢測的主要任務是從圖像中定位感興趣的目標,需要準確判斷每個目標的具體類別,並給出每個目標的邊界框。
2. 實現目標檢測需要哪些步驟?
要實現目標檢測,傳統的方法主要分為預處理、窗口華東、特徵提取、特徵選擇、特徵分類和後處理六個步驟。
a) 預處理,對待檢測圖像進行圖像去噪、圖像增強、色彩空間轉換等操作
b) 在待檢測圖像中滑動一個固定大小的窗口,將窗口中的子圖像作為候選區
c) 利用特定算法對候選區域進行特徵提取
d) 從特徵向量中選擇具有代表性的特徵,降低特徵維數
e) 利用特徵分類器對特徵進行分類,判定候區是否包含了目標及其類別
f) 合併判定為統一類別的相交候選區,計算出每個目標的邊界框,完成目標檢測。
3. 目標檢測算法的研究難點在哪?
主要是兩個方面。第一,特徵提取,即如何提高特徵的表達能力和抗形變能力。第二,特徵分類,即如何提高分類器的準確度和速度。
3. 為什麼說使用設計的特徵存在缺點?
a) 設計的特徵為底層特徵,對目標表達能力不足
b) 設計的特徵的可分性較差,導致分類錯誤率較高
c) 設計的特徵具有針對性,很難選擇單一特徵應用於多目標檢測,如Haar特徵用於人臉檢測,HOG特徵用於行人檢測,Strip特徵用於車輛檢測
5.什麼是卷積神經網絡?
卷積神經網絡是一個層次模型,主要包括輸入層,卷積層,池化層、全連接層以及輸出層。
卷積神經網絡是專門針對圖像而設計,主要特點在於卷積層的特徵是由前一層的局部特徵通過卷積共享的權重得到。
在卷積神經網絡中,輸入圖像通過多個卷積層和池化層進行特徵提取,逐步由底層特徵變為高層特徵;高層特徵再經過全連接層和輸出層進行特徵分類,產生一維向量,表示當前輸入圖像的類別。
根據每層的功能,卷積神經網絡可劃分為兩個部分:由輸入層、卷積層和池化層構成特徵提取器,以及由全連接層和輸入層構成分類器。其中:
輸入層:作用是接收輸入圖像,輸入層的大小與輸入圖像的大小一致。
卷積層:作用是運用卷積操作提取特徵,卷積層越多,特徵表達能力越強。
池化層:通過設置在卷積層之後,通過對特徵圖的局部區域進行池化操作,使特徵具有一定的空間不變性。常用的池化操作有均值池化和最大值池化。池化層具有類似於特徵選擇的功能,根據一定規則從卷積特徵圖的局部區域計算出重要的特徵值,通常情況下,池化層會無重疊地選擇局部區域,因此,池化操作降低了特徵維度,同時保證了特徵具有抗形變的能力。池化層與卷積層的特徵圖是一一對應,因此,池化層的特徵圖個數與卷積層的特徵圖個數一致。
全連接層:
位於特徵提取之後,將前一層的所有神經元與當前層的每個神經元相連接。全連接層會根據輸出層的具體任務,有針對性地對高層特徵進行映射。
輸出層:輸出層的形式面向具體任務,如果將卷積神經網絡作為分類器使用,輸出層採用softmax回歸,產生一個圖形類別的預測向量y=(y1,…,ym)T,其中,M表示類別的個數。
6.卷積神經網絡的常見網絡類型有哪些?
常用的卷積神經網絡類型包括:LeNet-5,AlexNet,VGG,GooLeNet和ResNet等。
7. 基於卷積神經網絡實現的目標檢測算法怎麼分類?
根據卷積神經網絡的使用方式,可以將基於卷積神經網絡的目標檢測分為兩大類:基於分類的卷積神經網絡目標檢測和基於回歸的卷積神經網絡目標檢測。
傳統目標檢測方法包含預處理、窗口滑動、特徵提取、特徵選擇、特徵分類、後處理等步驟,而卷積神經網絡本身具有特徵提取、特徵選擇和特徵分類的功能。那麼,可以直接利用卷積神經網絡對每個滑動窗口產生的候選區進行二分類,判斷其是否為待檢測目標。相比於傳統目標檢測的六個步驟,基於分類的卷積神經網絡目標檢測只有:窗口滑動、圖像分類、後處理三個步驟,而且窗口滑動和後處理都是固定的方法。因此,該類方法的研究重點在於如何提升卷積神經網絡的特徵提取能力、特徵選擇能力以及特徵分類能力,以提高圖像識別的準確度。
基於分類的卷積神經網絡目標檢測充分利用了卷積神經網絡在圖像識別上的能力,然而,候選區提取的準確度很大程度上決定了這類方法的準確度。因此,研究者開始針對目標檢測重新設計卷積神經網絡的結構,提出了將卷積神經網絡作為回歸器,把整幅待檢測圖像看成一個候選區,直接輸入卷積神經網絡,回歸目標在待檢測圖像中的位置信息。這類方法可以稱為基於回歸的卷積神經網絡目標檢測。
8.基於卷積神經網絡實現的目標檢測目前存在哪些問題?
目前,基於卷積神經網絡的目標檢測取得了一定進展,但仍存在一些需要解決的問題。一方面,目前都是通過實驗來證明卷積神經網絡的有效性,訓練參數的設置大多依靠經驗和實踐,缺乏理論指導和量化分析;另一方面,需要針對目標檢測設計更加合理的網絡結構,提升檢測效率,實現多尺度多類別的目標檢測。