轉自:http://blog.csdn.net/carson2005/article/details/8316835
申明,本文是筆者在閱讀了幾篇行人檢測綜述性文章之後,翻譯、總結、歸納所得。方便自己瞭解行人檢測的發展趨勢,同時,也給打算從事行人檢測研究的朋友們提供一些思路吧。
行人檢測的曆史:
早期以靜態影像處理中的分割、邊緣提取、運動檢測等方法為主。例如:
(1)以Gavrila為代表的通用範本方法:基於輪廓的分層匹配演算法,構造了將近2500個輪廓模板對行人進行匹配, 從而識別出行人。為瞭解決模板數量眾多而引起的速度下降問題,採用了由粗到細的分層搜尋策略以加快搜尋速度。另外,匹配的時候通過計算模板與待檢測視窗的距離變換來度量兩者之間的相似性。
(2)以Broggi為代表的局部模板方法:利用不同大小的二值映像模板來對人頭和肩部進行建模,通過將輸入映像的邊緣映像與該二值模板進行比較從而識別行人,該方法被用到意大利Parma大學開發的ARGO智能車中。
(3)以Lipton為代表的光流檢測方法:計算運動地區內的殘餘光流;
(4)以Heisele為代表的運動檢測方法:提取行人腿部運動特徵;
(5)以Wohler為代表的神經網路方法:構建一個自適應時間延遲神經網路來判斷是否是人體的運動圖片序列;
以上方法,存在速度慢、檢測率低、誤判率高的特點。
行人檢測的現狀:
大體可以分為兩類:
(1)基於背景建模的方法:分割出前景,提取其中的運動目標,然後進一步提取特徵,分類判別;在存在下雨、下雪、颳風、樹葉晃動、燈光忽明忽暗等場合,該方法的魯棒性不高,抗幹擾能力較差。且背景建模方法的模型過於複雜,對參數較為敏感。
(2)基於統計學習的方法:根據大量訓練樣本構建行人檢測分類器。提取的特徵一般有目標的灰階、邊緣、紋理、形狀、梯度長條圖等資訊,分類器包括神經網路、SVM,adaboost等。該方法存在以下痛點:
(a)行人的姿態、服飾各不相同;
(b)提取的特徵在特徵空間中的分布不夠緊湊;
(c)分類器的效能受訓練樣本的影響較大;
(d)離線訓練時的負樣本無法涵蓋所有真實應用情境的情況;
儘管基於統計學習的行人檢測方法存在著諸多的缺點,但依然有很多人將注意力集中於此。典型的代表是法國研究人員Dalal在2005的CVPR發表的HOG+SVM的行人檢測演算法(Histograms of Oriented Gradients for Human Detection, Navneet Dalel,Bill Triggs, CVPR2005)。HOG運算元的介紹在筆者的另一篇部落格中有詳細介紹(http://blog.csdn.net/carson2005/article/details/7782726),而hog+svm的行人檢測演算法已經被OpenCV實現,筆者的一篇部落格中有詳細的流程介紹及參考代碼:http://blog.csdn.net/carson2005/article/details/7841443
考慮到背景建模和統計學習這兩種方法各有優缺點,有研究人員提出將這兩種方法予以結合來進行快速準確的行人檢測。其中的一個典型系統如下:
註:來自這篇文章:基於情境模型與統計學習的魯棒行人檢測演算法;自動化學報;2010年4月;
該文中,作者利用GMM來進行背景建模,利用Haar-like特徵對行人進行特徵描述,以AdaBoost級連接構作為分類器。並提出一種改進的弱分類器選擇演算法,從而使得弱分類器選擇和分類器重新訓練得以在10分鐘左右完成。
目前行人檢測的幾個典型方向
(備忘:state of the art,不知該詞彙該如何翻譯,暫且寫作“典型方向”,知道的朋友煩請告知);
Pepageorgios等人是第一個提出採用滑動視窗進行行人檢測的,他們採用SVM和多尺度Haar小波過完備基結合的方式進行行人檢測。而Viola和Jones則基於這種思路,用積分圖來完達到快速特徵計算的目的,並利用一種級連接構使用者高效的檢測,同時,利用AdaBoost演算法來進行自動特徵篩選。上述這些思路都構成了如今行人檢測運算元的基石。
受到SIFT運算元的啟發,Dalal和Triggs等人提出了梯度長條圖(Histogram Of Gradient, HOG)特徵用於行人的特徵描述,並通過實驗證明了HOG比基於灰階的特徵更富有資訊。而Shahua等人也提出了一種類似的方法來刻畫行人。自此以後,基於HOG的變種方法開始急劇增加,而所有的這些變種,幾乎都在一定程度上採用了HOG運算元的一些思想。形狀特徵也是一個對行人檢測有效特徵描述方法。Gavrila和Philomin等人利用Hausdorff距離變換和一種分層模板匹配方法來快速檢測行人。Wu和Nevatia則利用大量的線段和曲線,構成一種稱之為“edgelet”的特徵來局部的表達形狀特徵。有研究人員還利用boosting方法來學習頭部、軀幹、腿部以及全身的檢測運算元。類似的,有研究人員提出一種稱之為“shapelets”的特徵,它是一種基於局部映像地區(patch)的梯度來刻畫形狀特徵的。
運動則是行人檢測中的另一個重要線索。然而,在攝像機運動的情況下,有效利用運動特徵則是一個具有挑戰性的課題。在相機固定的情況下,Viola等人提出通過計算不同映像的haar-like特徵,可以獲得較好的效能提升。而對於攝像機不固定的情況,則需要將運動分類進行分解。Dalal等人利用光流場來對映像內部的運動進行統計建模,然後,在映像局部地區內進行一定的運動補償。
就單個特徵而言,目前還沒有那個特徵描述運算元比HOG運算元更加有效。當然,可以將其它特徵跟hog特徵結合起來,達到補充的作用。Wojek和Schiele研究發現,通過將Haar-like,shapelets,形狀上下文,hog特徵進行一定的組合,將會比任何其它單獨特徵描述運算元更加有效。而Walk等人在此基礎上考慮了顏色自相關和前面提到的運動特徵。類似的,Wu和Nevatia將HOG,edgelet和共變數特徵進行結合。Wang等人則提出將基於LBP的紋理特徵和HOG運算元相互結合,此外,還將SVM分類器進行改進,以便使其更加適用於遮擋的情況。當然,也有人提出將局部三值模式(LBP的一個變種),顏色資訊,隱式分割等同HOG進行結合,當然,上述方法相比單純的HOG而言,在效能上都有一定程度的提升。
Dollar等人在Viola和Jones的基礎上進行擴充,提出在多個通道上進行haar-like特徵提取,包括LUV色彩通道,灰階,梯度幅值等,該方法可謂一個多種特徵的大雜燴。Tuzel等人利用特種局部特徵的共變數矩陣作為一種特徵描述方法。此外,還有研究人員將注意力集中在“如何有效利用巨大的特徵空間”。因此,特徵縮小(feature mining)被研究人員提出來,採用包括最大下降法在內的各種各樣的策略來訓練boost分類器。
關於行人檢測的綜述性文章,筆者推薦一篇:Pedestrian Detection: An Evaluation of the state of the Art, PAMI,2012;需要的朋友可以在這裡下載:http://download.csdn.net/detail/carson2005/4904088