• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種基于HOG的行人檢測(cè)算法

      2017-11-02 18:01王力劉子龍張帥旗
      軟件導(dǎo)刊 2017年10期
      關(guān)鍵詞:支持向量機(jī)

      王力++劉子龍++張帥旗+

      摘要:提出一種基于梯度方向直方圖與AdaBoost+SVM的行人檢測(cè)算法。方向梯度直方圖用于描述和提取行人的外觀及運(yùn)動(dòng)特征,并使得外觀、運(yùn)動(dòng)特征實(shí)現(xiàn)相互融合。在分類器的選擇上使用SVM作為AdaBoost的弱分類器對(duì)行人檢測(cè)器進(jìn)行分類訓(xùn)練,最終得到分類效果好的行人檢測(cè)器,實(shí)現(xiàn)更好的檢測(cè)性能。

      關(guān)鍵詞:行人檢測(cè);HOG算法;AdaBoost算法;支持向量機(jī)

      DOIDOI:10.11907/rjdk.171991

      中圖分類號(hào):TP312文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):16727800(2017)010006804

      0引言

      行人檢測(cè)是指對(duì)所需檢測(cè)的圖像采用一定的方法從而確定行人存在與否,若存在,則返回樣本并給予精確定位(包括行人的位置、大小、形態(tài)等)。近年來(lái),隨著科學(xué)技術(shù)蓬勃發(fā)展,電子商務(wù)在人們生活中的應(yīng)用逐漸深入,行人檢測(cè)在人臉識(shí)別、智能交通、身份確認(rèn)、內(nèi)容檢索等方面具有重要價(jià)值。雖然行人檢測(cè)技術(shù)已經(jīng)相當(dāng)成熟,并且應(yīng)用也十分廣泛,但該技術(shù)依然面臨著巨大挑戰(zhàn)。這些挑戰(zhàn)來(lái)自于多個(gè)方面:一是圖像的復(fù)雜程度,比如一張圖像里每個(gè)行人的行為動(dòng)作各不相同,有的跳,有的蹲,動(dòng)作各異,在特征提取時(shí)難度和工作量就會(huì)增加,動(dòng)作差異所帶來(lái)的影響較大;二是圖像里行人穿戴的衣服和頭飾,穿的衣服是寬松還是緊身、有沒(méi)有戴帽子等因素都會(huì)對(duì)特征的提取產(chǎn)生較大影響;三是圖像背景的不同對(duì)檢測(cè)結(jié)果造成差異,不同背景可能會(huì)造成誤檢,比如,行人和雕像或者人形樹(或者外觀類似人的一些物體)一起拍攝,則很有可能造成誤檢。還有一些其它外在因素,比如攝像頭拍攝角度、光照強(qiáng)弱等。但隨著科學(xué)技術(shù)的不斷發(fā)展,行業(yè)專家學(xué)者對(duì)行人檢測(cè)核心算法也在逐漸完善和改進(jìn),并取得了一系列突破,使得行人檢測(cè)技術(shù)的應(yīng)用領(lǐng)域更加寬廣。

      2005年,Dalal和Triggs[1]提出了一種基于梯度方向直方圖(Histograms ofOriented Gradients, HOG)的方法,對(duì)特征提取有很好效果。HOG算法主要思想是:先將一張待檢測(cè)的圖像分成64個(gè)像素塊,每個(gè)像素塊都被簡(jiǎn)稱為一個(gè)單元,每個(gè)單元形成9個(gè)方向(bin)上的直方圖,每4個(gè)單元構(gòu)成一個(gè)block,在處理過(guò)程中使每個(gè)block間存在重疊部分,最終在滑動(dòng)檢測(cè)窗口(由幾個(gè)block構(gòu)成)會(huì)得到空間上的特征向量。這就是特征提取基本原理,如圖1、圖2所示。

      本方案采用的方法是:在特征提取部分采用基于自適

      應(yīng)的滑動(dòng)窗口HOG。梯度直方圖特征提取基本思想是:即使沒(méi)有確切的相關(guān)梯度或者邊緣位置信息,物體局部外觀和形狀也往往深受局部強(qiáng)度梯度或者邊緣方向的影響。在實(shí)際應(yīng)用中,其通過(guò)將圖片窗口劃分成小的空間區(qū)域(細(xì)胞元)實(shí)現(xiàn),對(duì)于每一個(gè)胞元,都要對(duì)其中像素的一維梯度方向直方圖或是邊緣方向進(jìn)行累積統(tǒng)計(jì),合并后的直方圖就構(gòu)成了被檢測(cè)物的特征。為了使其對(duì)光照、陰影等條件更加不敏感,在使用它們之前進(jìn)行對(duì)比度歸一化尤為必要。此歸一化是指通過(guò)對(duì)更大的空間區(qū)域(塊)中某一特征的局部直方圖的“能量”進(jìn)行累積統(tǒng)計(jì),進(jìn)而對(duì)塊上的每一個(gè)胞元進(jìn)行歸一化實(shí)現(xiàn),將歸一化之后的描述子塊作為方向梯度直方圖(HOG)描述子。在分類器選擇上,本文對(duì)AdaBoost級(jí)聯(lián)分類器算法[2]加以改進(jìn)創(chuàng)新,將SVM[3]作為AdaBoost的弱分類器,將SVM和AdaBoost各自優(yōu)點(diǎn)進(jìn)行融合,然后選擇適宜的核函數(shù)參數(shù)(該核函數(shù)和參數(shù)下文會(huì)給出),從而提高特征分類的精準(zhǔn)度,直接去除一部分非人形區(qū)域,進(jìn)而減少了實(shí)驗(yàn)訓(xùn)練時(shí)間。實(shí)驗(yàn)結(jié)果表明,這種行人檢測(cè)方法性能好,且準(zhǔn)確性、誤檢率和漏檢率等均優(yōu)于傳統(tǒng)行人檢測(cè)方法。

      1方向梯度直方圖

      HOG算法是基于表面局部信息統(tǒng)計(jì)的特征描述子,在特征提取部分采用滑動(dòng)窗口機(jī)制,如圖1所示。HOG算法的核心思想是將一幅圖中局部目標(biāo)的形狀及表象通過(guò)梯度或邊緣的方向密度分布描述出來(lái)。首先將一幅圖片均勻劃分為多個(gè)互不重疊的單元cell(細(xì)胞),每一個(gè)cell的大小為n×n,然后分別計(jì)算出每一個(gè)像素的梯度,并且使用直方圖統(tǒng)計(jì)每個(gè)cell的梯度,最后將多個(gè)cell進(jìn)行合并,組成一個(gè)block(塊),將每個(gè)細(xì)胞的直方圖組合起來(lái)就可以構(gòu)成特征描述器。該算法原理如圖3所示。

      HOG算法包含5個(gè)步驟[4]:

      (1)圖像標(biāo)準(zhǔn)化。前人經(jīng)過(guò)大量的實(shí)驗(yàn)得出結(jié)論,圖像顏色所提供的信息作用不大,可先轉(zhuǎn)化為灰度圖,一方面便于處理,減少工作量,再者可以減少光照因素的影響,提高檢測(cè)器對(duì)光照的魯棒性。將圖像進(jìn)行壓縮處理轉(zhuǎn)化為灰度圖可以使原本某些局域光線亮度和陰影部分的反差不那么明顯,因此處理圖片信息的第一步是將圖像轉(zhuǎn)化為灰度圖,如圖4所示。

      (2)計(jì)算梯度。圖像中像素點(diǎn)(x,y)的梯度為:

      Gx(x,y)=H(x+1,y)-H(x-1,y)

      Gy(x,y)=H(x,y+1)-H(x,y-1)

      梯度幅值和方向分別為:

      G(x,y)=Gx(x,y)2+Gy(x,y)2

      α(x,y)=tan-1Gy(x,y)2Gx(x,y)2

      上式中,Gx(x,y)、Gy(x,y)、H(x,y)表示輸入圖像中像素點(diǎn)(x,y)處的水平方向梯度、垂直方向梯度和像素值。

      (3)單元格梯度投影。計(jì)算每個(gè)像素對(duì)基于以自身為中心的方向梯度元素邊緣方向直方圖的加權(quán)投影,并且將這些投影累積到cell的局部空間區(qū)域中的方向區(qū)間,細(xì)胞元可以是長(zhǎng)方形或者環(huán)形,方向區(qū)間在0~180°(無(wú)符號(hào)梯度)或是0~360°(有符號(hào)梯度)之間均勻分布。本文將cell的梯度方向360°分成9個(gè)方向塊進(jìn)行,從而為每個(gè)細(xì)胞單元構(gòu)建梯度方向直方圖。

      (4)塊內(nèi)歸一化梯度直方圖。由于圖像局部陰影使得各部分光照強(qiáng)弱不同,還存在前景背景對(duì)比差異,梯度幅值將會(huì)分布在一個(gè)很寬的范圍之內(nèi),因此有效的局部對(duì)比度歸一化對(duì)性能檢測(cè)效果尤為重要。本文將歸一化之后的塊描述符稱之為HOG描述符。endprint

      (5)收集HOG特征。在得到歸一化的梯度直方圖之后,還需要對(duì)滑動(dòng)檢測(cè)窗口中所有重疊的block收集其HOG特征,形成特征向量,然后才能送入AdaBoost+SVM組成的分類器中進(jìn)行分類訓(xùn)練,得到最終結(jié)果。

      例如,對(duì)于一個(gè)40*40的訓(xùn)練圖片,單元格=8*8像素,塊=2*2單元格,塊每次滑動(dòng)一個(gè)單元格,則特征維數(shù)=4*4*(2*2*9)=576維。

      2算法實(shí)現(xiàn)

      2.1Adaboost算法

      Boosting是一種用于提高學(xué)習(xí)算法準(zhǔn)確度,將弱學(xué)習(xí)方法提升為強(qiáng)學(xué)習(xí)方法的算法。Boosting算法的核心思想是把若干個(gè)分類器整合為一個(gè)分類器,它是AdaBoost算法的前身,繼承了Boosting算法的思想[5]。

      AdaBoost算法描述如下:

      首先輸入樣本集(x1,y1),…,(xN,yN),其中yi∈{1,-1},迭代次數(shù)為T;然后進(jìn)行初始化,樣本集上樣本的初始分布D1(i)=1N,也即樣本的權(quán)重為1N;For t=1 to T。

      (1)訓(xùn)練弱分類器h1:X→{-1,1},該弱分類器分布在Di上的誤差為:

      ε1=PD1htxi≠yi

      (2)計(jì)算該弱分類器的權(quán)重:

      α1=12In1-εtεt

      (3)更新訓(xùn)練樣本的分布:

      Dt+1(i)=Dt(i)exp(-αtyiht(xi))Zt

      其中,Zt為歸一化常數(shù)。zt=∑Ni=1Dt(i)exp(-αtyihi(xi))

      最后輸出強(qiáng)分類器:

      Hfinal(x)=sign∑Tt=1αtht(x)

      2.2支持向量機(jī)(SVM)

      支持向量機(jī)算法于1995年由Vapnik提出,該算法在解決小樣本、非線性及高維的模式識(shí)別上有許多獨(dú)特優(yōu)勢(shì)。SVM是建立在統(tǒng)計(jì)學(xué)習(xí)理論的VC維理論(所謂VC維是對(duì)函數(shù)類的一種度量,可以簡(jiǎn)單理解為問(wèn)題的復(fù)雜程度,VC維越高,一個(gè)問(wèn)題就越復(fù)雜。)和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理基礎(chǔ)上,根據(jù)有限的樣本信息在模型的復(fù)雜性和學(xué)習(xí)能力之間尋找一個(gè)最佳折衷,從而得到最優(yōu)的泛化能力[5]。

      支持向量機(jī)其實(shí)也是基于最優(yōu)分類面的思想訓(xùn)練出的一種分類算法,簡(jiǎn)言之,它是一個(gè)兩類分類模型,依賴預(yù)處理后的數(shù)據(jù),最終可轉(zhuǎn)化為一個(gè)凸二次規(guī)劃問(wèn)題的求解,在n維空間中找到一個(gè)分類超平面,將空間上的點(diǎn)進(jìn)行分類。圖5是線性分類的一個(gè)例子。

      圖5線性可分情況下的最優(yōu)分類線

      2.3AdaBoost+SVM算法

      上文分別介紹了AdaBoost和SVM算法。本文研究的重點(diǎn)在分類器的選擇上,對(duì)AdaBoost級(jí)聯(lián)分類器的算法加以改進(jìn),使用SVM作為AdaBoost的弱分類器,通過(guò)選擇并確定合適的核函數(shù)參數(shù),從而提高分類精度,減少訓(xùn)練時(shí)間,達(dá)到比較快速的檢測(cè)目的。本文SVM的核函數(shù)選取的是徑向基函數(shù),其函數(shù)表達(dá)式為[7]:

      k(x,xi)=exp-‖x-xi‖22σ2

      算法步驟可簡(jiǎn)化為:

      (1)SVM核函數(shù)的參數(shù)σ={σ1,σ2…},C={C1,C2…}。訓(xùn)練樣本S={(x1,y1),…,(xn,yn)},循環(huán)次數(shù)為T。

      (2)樣本的權(quán)重設(shè)定為:

      ω1i=1/N,i=1,…,N

      (3)訓(xùn)練一個(gè)基于徑向基核函數(shù)的SVM弱分類器。

      (4)對(duì)錯(cuò)誤率進(jìn)行計(jì)算。錯(cuò)誤率εt為:

      εt=∑Ni-1ωti,yi≠ht(xi)

      如果錯(cuò)誤率大于50%,則返回上一步重新訓(xùn)練,否則進(jìn)行下一步。

      (5)重置分類器的權(quán)重:

      αt=12ln1-εtεt

      (6)對(duì)訓(xùn)練樣本集的權(quán)重進(jìn)行重置:

      ωt+1i=ωtiexp-αtyihtxi Ct

      說(shuō)明:i=1,K、N、Ct均為歸一化參數(shù)。

      (7)T次循環(huán)或者達(dá)到預(yù)期精確度后,輸出經(jīng)過(guò)訓(xùn)練后的分類器:

      fx=sign∑Tt-1αthtx

      3實(shí)驗(yàn)結(jié)果與分析

      3.1實(shí)驗(yàn)數(shù)據(jù)庫(kù)

      實(shí)驗(yàn)數(shù)據(jù)庫(kù)樣本之一來(lái)自于自拍的行人圖片數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)包含了多種場(chǎng)所,背景各異。為了體現(xiàn)該算法的優(yōu)越性,本文采用的實(shí)驗(yàn)數(shù)據(jù)庫(kù)也包括比較專業(yè)的INRIA行人庫(kù)[8](http://pascal. inri一alpes. fr/data/human)。訓(xùn)練集有正樣本614張,其中包含2 416個(gè)行人,負(fù)樣本1 218張;測(cè)試集有正樣本288張,其中包含1 126個(gè)行人,負(fù)樣本453張。圖片中人體大部分為站立姿勢(shì)且高度大于100個(gè)像素。圖片主要來(lái)源于個(gè)人照片、谷歌等。照片清晰度較高,可用OpenCV正常讀取和顯示。具體實(shí)驗(yàn)樣本組成如表1所示。

      3.2實(shí)驗(yàn)過(guò)程

      本文算法驗(yàn)算是在OpenCV和Visual C++開發(fā)環(huán)境中實(shí)現(xiàn)。為了充分說(shuō)明該算法在行人檢測(cè)上確實(shí)有較大優(yōu)勢(shì),將得到的實(shí)驗(yàn)結(jié)果與文獻(xiàn)[1]和文獻(xiàn)[2]中的傳統(tǒng)算法分別基于HOG+AdaBoost、基于HOG+SVM進(jìn)行比較。為了更好對(duì)比實(shí)驗(yàn)結(jié)果,提出兩種衡量標(biāo)準(zhǔn)下的漏檢率和誤檢率。漏檢率(MR)是指未檢測(cè)出來(lái)的行人樣本數(shù)與行人樣本總數(shù)的比值,誤檢率(FPR)是指不是行人樣本卻被檢測(cè)為行人的數(shù)量與非行人樣本總數(shù)的比值。圖6為在被檢測(cè)樣本數(shù)據(jù)庫(kù)中隨機(jī)選取的一張檢測(cè)成功圖片。

      3.3實(shí)驗(yàn)結(jié)果

      在樣本庫(kù)中隨機(jī)選取1 000個(gè)樣本作為測(cè)試樣本集,總共進(jìn)行6次試驗(yàn),每次測(cè)試所得到的漏檢率和誤檢率分別如圖7、圖8所示。

      取6次試驗(yàn)的平均值作為結(jié)果,算法的漏檢率、誤檢率、運(yùn)行時(shí)間與傳統(tǒng)方法對(duì)比如表2所示。endprint

      4結(jié)語(yǔ)

      行人檢測(cè)是機(jī)器視覺(jué)和人工智能領(lǐng)域的研究熱點(diǎn),隨著該領(lǐng)域技術(shù)的日漸成熟,其重要性及應(yīng)用價(jià)值正為人們所了解,它在智能交通、樓宇智能監(jiān)控系統(tǒng)、高級(jí)人機(jī)接口、機(jī)動(dòng)車輔助系統(tǒng)等領(lǐng)域都具有重要應(yīng)用。本文將兩種傳統(tǒng)的分類器重新組合在一起,設(shè)計(jì)出一種新的算法分類器,該算法分別繼承了AdaBsoot和SVM算法的優(yōu)點(diǎn),在檢測(cè)的正確率上得到了很大提升,在訓(xùn)練時(shí)間上也有明顯縮短。實(shí)驗(yàn)結(jié)果表明,該算法具有檢測(cè)精度高、實(shí)時(shí)性好等優(yōu)點(diǎn),應(yīng)用前景極其廣泛。但是行人檢測(cè)領(lǐng)域還有很多困難仍需克服,比如,如何正確快速地檢測(cè)被遮擋的行人等。相信隨著科學(xué)技術(shù)的進(jìn)步及算法的改進(jìn),目前存在的問(wèn)題會(huì)得到解決,行人檢測(cè)技術(shù)也會(huì)在更多領(lǐng)域得到應(yīng)用和推廣。

      參考文獻(xiàn)參考文獻(xiàn):

      [1]DALAL NTRIGGS B.Histograms of oriented gradients for human detection[C].Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition,2005:886893.

      [2]DAMIEN SIMONNET,SERGIO A VELASTIN. Pedestrian detection based on Adaboost algorithm with a pseudo calibrated camera[C].2010 International Conference on Image Processing Theory,Tolls and Application,2010:5459.

      [3]B WU,R NEVATIA.Cluster boosted tree classifier for multiview.multipose object detection[C].IEEE 11th International Conference on computer Vision,2007:18.

      [4]張旭東.行人檢測(cè)技術(shù)研究[D].成都:電子科技大學(xué),2011.

      [5]錢惟賢,楊力,胡楷,等.一種基于AdaBoost的弱分類器內(nèi)部結(jié)構(gòu)調(diào)整方法[Z].CN,CN 103246897 A,2013.

      [6]VAPNIK V.統(tǒng)計(jì)學(xué)習(xí)理論的本質(zhì)[M].張學(xué)工,譯.北京:清華大學(xué)出版社,2000.

      [7]張莉.基于SVMAdaboost算法的行人檢測(cè)方法[J].工業(yè)儀表與自動(dòng)化裝置,2016(4):117120.

      [8]張春風(fēng),宋加濤,王萬(wàn)良.行人檢測(cè)技術(shù)綜述[J].電視技術(shù),2014,38(3):157162.

      責(zé)任編輯(責(zé)任編輯:孫娟)endprint

      猜你喜歡
      支持向量機(jī)
      基于支持向量回歸機(jī)的電能質(zhì)量評(píng)估
      基于智能優(yōu)化算法選擇特征的網(wǎng)絡(luò)入侵檢測(cè)
      基于改進(jìn)支持向量機(jī)的船舶縱搖預(yù)報(bào)模型
      基于支持向量機(jī)的金融數(shù)據(jù)分析研究
      管理類研究生支持向量機(jī)預(yù)測(cè)決策實(shí)驗(yàn)教學(xué)研究
      额敏县| 昭觉县| 深州市| 高尔夫| 名山县| 沛县| 六枝特区| 泽库县| 辉南县| 浪卡子县| 敖汉旗| 永川市| 和平区| 汉川市| 宝丰县| 乌恰县| 沧州市| 南川市| 临颍县| 敦煌市| 汉阴县| 大荔县| 宣汉县| 五指山市| 西乌| 周至县| 弥勒县| 古丈县| 麻江县| 驻马店市| 屯昌县| 宁远县| 枣阳市| 随州市| 商南县| 平陆县| 三江| 郴州市| 大邑县| 松溪县| 疏勒县|