行人檢測
行人檢測
行人檢測( Pedestrian Detection)是利用計算機視覺技術判斷圖像或者視頻序列中是否存在行人並給予精確定位。該技術可與行人跟蹤,行人重識別等技術結合,應用於人工智慧系統、車輛輔助駕駛系統、智能機器人、智能視頻監控、人體行為分析、智能交通等領域。
由於行人兼具剛性和柔性物體的特性,外觀易受穿著、尺度、遮擋、姿態和視角等影響,使得行人檢測成為計算機視覺領域中一個既具有研究價值同時又極具挑戰性的熱門課題。
行人檢測系統的研究起始於二十世紀九十年代中期。從最開始到2002年,研究者們借鑒、引入了一些圖像處理、模式識別領域的成熟方法,側重研究了行人的可用特徵、簡單分類演演算法。自2005 年以來,行人檢測技術的訓練庫趨於大規模化、檢測精度趨於實用化、檢測速度趨於實時化。隨著高校、研究所以及汽車廠商的研究持續深入,行人檢測技術得到了飛速的發展。
目前,國外的行人檢測系統的研究機構主要有卡內基梅隆大學(CMU)、麻省理工學院(MIT)、日本豐田汽車研究中心、戴姆勒-克萊斯勒研發中心等;國內的主要有清華大學、浙江大學、上海交通大學、西安交通大學、中國科學技術大學、吉林大學、中科院自動化所等。
現有行人檢測方法有三種,分別為基於全局特徵的方法、基於人體部位的方法、基於立體視覺的方法。
該類方法是目前較為主流的行人檢測方法,主要採用邊緣特徵、形狀特徵、統計特徵或者變換特徵等圖像的各類靜態特徵來描述行人,其中代表性的特徵包括Haar小波特徵、HOG 特徵、Edgelet特徵、Shapelet特徵和輪廓模板特徵等。
(1)基於Haar小波特徵的方法
Papageorgiou和Poggio最早提出Haar小波的概念,Viola等引進了積分圖的概念,加快了Harr特徵的提取速度,並將該方法應用於行人檢測,結合人體的運動和外觀模式構建行人檢測系統,取得了較好的檢測效果,為行人檢測技術的發展奠定了基礎。
(2)基於HOG特徵的方法
Dalal和Triggs在2005年提出梯度方向直方圖( Histogram of Oriented Gradients,HOG)的概念,並將其用於行人檢測,在 MIT行人資料庫上獲得近乎 100% 的檢測成功率;在包含視角、光照和背景等變化的 INRIA 行人資料庫上,也取得了大約 90% 的檢測成功率。HOG是目前使用最為廣泛的行人特徵描述子。
(3)基於edgelet特徵的方法
B. Wu等人提出了“小邊” ( Edgelet) 特徵的概念,即一些短的直線或者曲線片段,並將其應用於複雜場景的單幅圖像的行人檢測,在 CAVIAR 資料庫上取得了大約92%的檢測率。
(4)基於Shapelet特徵的方法
針對上述Edgelet特徵存在的缺點,Sabzmeydani在2007 年提出了一種可以利用機器學習的方法自動得到的特徵,即Shapelet特徵。該演演算法首先從訓練樣本提取圖片不同方向的梯度信息,然後利用AdaBoost演演算法進行訓練,從而得到Shapelet特徵。
(5)基於輪廓模板的方法
該方法是指利用圖像中目標物體的邊緣輪廓、紋理和灰度等信息構建模板,通過模板匹配的方法檢測目標。Gavrila等較早提出了基於人體邊緣輪廓的模板識別方法用以檢測行人。
(6)基於運動特徵的方法
近年來一些學者嘗試將目標的運動信息加入到行人檢測系統中,並與其他靜態特徵相結合用於檢測行人。其中較具代表性的演演算法包括: 1) Viola等人針對攝像機靜止的情況提出在不同圖像上計算Haar-like特徵,然後將運動信息與圖像的灰度信息相結合構建行人檢測系統。2) Dalal等針對攝像機運動的情況,提出將基於外觀的梯度描述子和基於運動的差分光流描述子相結合來構建行人檢測器,但該方法只對單個窗口的檢測比較有效,對於整幅圖像檢測效果則很差。
該類方法的基本思想是把人體分成幾個組成部分,然後對圖像中每部分分別檢測,最後將檢測結果按照一定的約束關係進行整合,最終判斷是否存在行人。
該類方法是指通過2個或2個以上的攝像機進行圖像採集,然後分析圖像中目標的三維信息以識別出行人。
該數據集是較早公開的行人數據集,主要是用數字照相機和攝像機在不同季節獲取的圖像和視頻,共 924 張行人圖片,圖像數據突出人體所在部分。該數據集的問題是未區分訓練集和測試集,圖像只有正面和背面兩個視角,沒有負樣本。
由 Dalal和Triggs於2005年創建,是目前使用最廣泛的靜態行人檢測資料庫之一。數據集中圖像尺寸為64×128 像素分為訓練數據集和測試數據集。訓練數據集中有正樣本圖像有614個,負樣本圖像1218 個;測試數據集中有正樣本圖像288個,負樣本圖像453個。
該數據集利用攝像機安裝在移動車輛上拍攝獲得,分為分類和檢測數據集。檢測數據集的訓練樣本集有兩類尺寸圖像,都屬於正樣本圖像,分別15560張,行人高度都大於72個像素;負樣本也有兩類尺寸,共6744張。測試數據集為一個時長27 分鐘的視頻,共 21 790 幀圖像(其中有 56 492 行人)。分類數據集有3個訓練集和兩個測試集,每個數據集有4 800個行人圖像,5000個非行人圖像。
該數據集是目前規模最大的行人檢測數據集之一,創建於2009年,也採用移動攝像機獲得,總共有約10個小時的視頻數據,視頻的解析度為640×480,30幀/秒。數據集分為11個子集,其中6個子集為為訓練集(包含192 000個行人,6100個正樣本和61000個負樣本),5個子集為測試集(155000個行人,56000個正樣本和 65000個負樣本)。
提供圖像對以便計算光流信息,該資料庫主要用於評估運動信息在行人檢測中的作用,常用於行人檢測及跟蹤研究中。
該數據集是目前規模較大的靜態圖像行人數據集,訓練集包含 187000個行人,5200個負樣本;測試集包含 6900個行人,50000個負樣本。
Ess 等建立了該行人數據集,用於對多個行人同時檢測。該數據集採用車上安裝的攝像頭拍攝得到,幀率為 13~14 fps,解析度為 640×480,標註了行人相關信息。
該資料庫包含三組數據集(USC-A、B、C),其中通過 XML格式標註了信息。USC-A中的圖像來源網路,共205個,其中有313個直立行人,行人之間不存在互相遮擋,但只有正面和背面兩個視角;USC-B 中的圖像來源於 CAVIAR 視頻資料庫,包括各種視角的行人,但行人之間有互相遮擋,共 54 個圖像,271 個行人;USC-C 中有 100 個圖像來源於網路,其中 232 個行人,行人之間沒有互相遮擋。
該資料庫目前包含六個數據集(CVC-1到CVC-6),都是在不同環境下拍攝的圖像,包括運動的行人和部分遮擋的行人,從而能對應用的演演算法做更好的性能估計。
行人檢測方法中主要用到的分類器有支持向量機(SVM)、Adaboost和神經網路分類器,下面分別對這幾種分類器進行概述。
Vapnik 提 出 的 支 持 向 量 機 (Support Vector Machine, SVM)是近年來具有完善理論基礎的分類器之一。SVM分類器是基於結構風險最小化規範的統計學習方法,根據所採用核函數的不同,可分為“線性 SVM”和“非線性 SVM”兩種。
神經網路分類器經過多年的發展,已經發展成為一個包含了眾多學習模型的機器學習演演算法群。最基本的神經網路是被應用廣泛的基於vanilla的神經網路系統,也可以稱為單隱藏層後向傳播網路,即單層感知器。神經網路通過學習的方式將模式的特徵隱藏在一些事先設定好的網路參數中,通過這種方式可以描述比較複雜的特徵,正因為神經網路具有這樣的特點,近年來在行人檢測技術領域也得到了廣泛地應用。
Adaboost 是由 Freund 和 Schapire最早在1997年提出來的一種自適應的 boosting 方式分類器,其中使用了指數損失函數,採用了基於貪心策略的前向分佈搜索方式,並進行加法建模。通過Adaboost 得到的分類器廣泛應用於模式識別和計算機視覺領域。
行人檢測在計算機應用領域有著非常廣泛的應用,比如車輛輔助駕駛系統、智能視頻監控、機器人、航拍圖像、人機交互系統、運動分析等。近年來智能車輛領域研究中備受關注的前沿方向,目前一些汽車生產廠商、大學和研究機構相繼開始了行人檢測技術的研究。比如,歐洲戴姆勒、德國大眾等就發起了旨在研究行人保護方案的 PROTECTOR 項目 , 並且已經取得了初步的成效。2004-2005年的SAVE- U項目實現的目標是減少行人和車輛碰撞造成的傷亡數量和事故等級, 並在危險狀況下駕駛員警告和車輛自動減速試驗車輛。作為無人駕駛的先驅技術之一,行人檢測系統在近幾年也已成為研發熱點,它通常整合到碰撞預防系統當中,利用雷達攝像頭和感應器來檢測行人,並及時減速剎車從而減少事故傷害。沃爾沃、豐田等車企已率先推出先進的行人檢測系統,而福特也推出了先進的行人檢測系統,能夠識別路上的行人並進行動態分析,預測他們是否會闖入駕駛路線中。除了傳統汽車公司外,很多網際網路公司也在研發行人檢測系統,以期實現智能汽車。谷歌最新的行人檢測系統只靠攝像機影像來掌握行人動向,但是優化了速度問題。此外,行人檢測在智能交通等領域也越來越受到重視。