亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種AdaBoost級聯(lián)分類器快速檢測方法與流程

文檔序號:12468710閱讀:508來源:國知局
一種AdaBoost級聯(lián)分類器快速檢測方法與流程

本發(fā)明屬于目標(biāo)檢測和識別技術(shù)領(lǐng)域,涉及一種AdaBoost級聯(lián)分類器快速檢測方法。



背景技術(shù):

在目標(biāo)檢測方法中,現(xiàn)在常用的一類方法是基于統(tǒng)計(jì)學(xué)習(xí)的分類器設(shè)計(jì)算法。在機(jī)器學(xué)習(xí)方法中,AdaBoost能夠?qū)⑷醴诸惼鹘M合起來構(gòu)成強(qiáng)分類器,并在人臉檢測等方面也得到了成功的應(yīng)用。在OpenCV(開源計(jì)算機(jī)視覺庫)中該算法結(jié)合Haar特征、HOG等特征得到成功實(shí)現(xiàn)和應(yīng)用,并為廣大計(jì)算機(jī)視覺研究人員使用,使其成為各種場合下目標(biāo)檢測應(yīng)用的首選。在OpenCV的幫助下,我們可以很快應(yīng)用AdaBoost算法結(jié)合各種特征對目標(biāo)檢測應(yīng)用的性能進(jìn)行測試,從而對算法的性能做出評估。

AdaBoost算法最早源于Schapire在1989年提出的Boosting(自舉)算法,她是一種能夠“Boost”任意給定學(xué)習(xí)算法精度的普適方法。1995年Freund和Schapirey又對其進(jìn)行了改進(jìn),形成了最初的AdaBoost(AdaptiveBoosting)算法,之后又出現(xiàn)了很多基于此方法的變形,主要有GAB(GentleAdaBoost)、DAB(DiscreteAdaBoost)、RAB(RealAdaBoost)和LAB(LogitAdaBoost)。AdaBoost算法的核心是通過調(diào)整樣本分布和弱分類器權(quán)值,自動(dòng)地從弱分類器空間中篩選出若干關(guān)鍵的弱分類器,并通過某種方式整合為一個(gè)強(qiáng)分類器。

根據(jù)Rainer等人對變形的幾種AdaBoost算法的測試和比較,GAB(GentleAdaBoost)算法在分類性能上不僅僅是最優(yōu)的,也是最快的,因此選用這種方法來訓(xùn)練強(qiáng)分類器,算法流程如下:

1.給定N個(gè)樣本(x1,y1),…(xN,yN),其中xi∈Rk,yi∈{-1,1}。

2.初始化權(quán)值wi=1/N,i=1,…N。

3.迭代form=1,…,M

a.通過ωi設(shè)置yi到xi的加權(quán)最小平方,調(diào)整退化函數(shù)fm(x);

b.計(jì)算

c.令ωi←ωi*esp(-yifm(xi)),i=1,…,N重新歸一化權(quán)值使∑iωi=1;

4.輸出強(qiáng)分類器:

OpenCV中對經(jīng)典AdaBoost算法的四種實(shí)現(xiàn)形式選擇提供了接口,可以測試對比各種訓(xùn)練方法下得到的訓(xùn)練器的性能。另外對于訓(xùn)練終止條件提供接口可進(jìn)行選擇。滿足檢測率和誤報(bào)率可以終止訓(xùn)練?;蛘咧付ㄈ醴诸惼鱾€(gè)數(shù)的最大值,這樣可以控制訓(xùn)練時(shí)間,但是這樣可能存在得到的強(qiáng)分類器達(dá)不到指定的檢測率和誤報(bào)率訓(xùn)練就終止了。

級聯(lián)分類器是由一系列的分類器的串聯(lián)組成,用于下級分類器的樣本就要求是上一級分辨正確的正樣本和分辨錯(cuò)誤的負(fù)樣本來做本級訓(xùn)練的正樣本和負(fù)樣本,這樣才可以達(dá)到層層精確篩選的目的,非目標(biāo)樣本應(yīng)盡可能在較早級聯(lián)層次得到濾除,只有通過所有級分類器的樣本才被認(rèn)定為正樣本即目標(biāo)區(qū)域。

級聯(lián)分類器設(shè)計(jì)思路就需要指定各個(gè)參加級聯(lián)的強(qiáng)分類器具備相應(yīng)的結(jié)構(gòu),所謂相應(yīng)的結(jié)構(gòu)的第一點(diǎn)要求是前面分類器的結(jié)構(gòu)簡單也即強(qiáng)分類器中包含盡可能少的弱分類器,這樣才能提高檢測速度。第二點(diǎn)要求是檢測率高,能夠?yàn)V除那些與目標(biāo)差異較大的負(fù)樣本。那么對于參與訓(xùn)練的負(fù)樣本的選擇就需要盡可能選擇與正樣本差異大且多樣化的負(fù)樣本,才能得到滿足分類器級聯(lián)設(shè)計(jì)思想的強(qiáng)分類器。第三點(diǎn)要求是級聯(lián)的下一級分類器是對上一級分類器無法分辨的樣本進(jìn)行再次準(zhǔn)確分類,因此,在級聯(lián)的檢測器中不斷增加更多的強(qiáng)分類器可以很快排除背景區(qū)域,從而節(jié)約出時(shí)間用于那些更像目標(biāo)的區(qū)域進(jìn)行計(jì)算。在級聯(lián)結(jié)構(gòu)中,前面幾級的分類器相對說結(jié)構(gòu)比較簡單,使用的特征數(shù)較少,但檢測率很高,同時(shí)能夠盡可能地濾除那些與目標(biāo)差異較大的負(fù)樣本。后面級的分類器則使用更多的特征和更復(fù)雜的結(jié)構(gòu),從而可以將那些與目標(biāo)相似的負(fù)樣本與目標(biāo)物體區(qū)分開。

為了能夠檢測到不同尺度下的目標(biāo),目前常用的檢測方式可以總結(jié)為三種,第一種是縮放待檢測圖像,構(gòu)造圖像金字塔,用與標(biāo)準(zhǔn)訓(xùn)練樣本大小相同的窗口去對不同尺度下的檢測圖像進(jìn)行遍歷檢測。第二種是直接在待檢測圖像上用不同尺度的窗口進(jìn)行遍歷,將遍歷窗口歸一化到標(biāo)準(zhǔn)訓(xùn)練樣本大小再送入分類器進(jìn)行判別。第三種是直接在待檢測圖像上用不同尺度的窗口進(jìn)行遍歷,按照尺度對分類器進(jìn)行尺度變換,將不同尺度的遍歷窗口直接送入相應(yīng)尺度的分類器進(jìn)行判別。相比之下,第三種方式縮放分類器的運(yùn)算與縮放待檢測圖像和縮放檢測窗口的運(yùn)算量要小很多,并且可以做提前運(yùn)算,存儲備用。在求取Haar特征時(shí)還可以利用積分圖像快速求取特征,運(yùn)算速度占一定優(yōu)勢,但在檢測性能方面由于縮放分類器會帶來一定的誤差,因此較之第二種方法檢測性能有所下降。



技術(shù)實(shí)現(xiàn)要素:

(一)要解決的技術(shù)問題

本發(fā)明要解決的技術(shù)問題是:客服現(xiàn)有技術(shù)中的缺陷,提供一種AdaBoost級聯(lián)分類器快速檢測方法,使得到的分類器在保持檢測速度的前提下可以進(jìn)一步提高檢測性能。

(二)技術(shù)方案

為了解決上述技術(shù)問題,本發(fā)明提供一種AdaBoost級聯(lián)分類器快速檢測方法,其包括以下步驟:

S1:訓(xùn)練基于AdaBoost的一級級聯(lián)分類器;

S2:測試一級級聯(lián)分類器每一級的合并后的檢測性能;

S3:根據(jù)一級級聯(lián)分類器合并后的檢測性能,確定使用縮放窗口檢測方法的開始層數(shù)X;

S4:使用X層一級級聯(lián)分類器和合并操作對樣本庫進(jìn)行檢測,確定檢測到的正樣本和誤檢的負(fù)樣本;

S5:使用檢測到的正樣本和誤檢的負(fù)樣本重新訓(xùn)練AdaBoost二級級聯(lián)分類器;

S6:采用對一級級聯(lián)分類器縮放分類器和二級級聯(lián)分類器縮放檢測窗口結(jié)合的方式進(jìn)行檢測。

其中,所述步驟S1中,基于AdaBoost的一級級聯(lián)分類器的訓(xùn)練過程為:建立一個(gè)訓(xùn)練樣本庫,設(shè)定訓(xùn)練參數(shù),得到若干個(gè)AdaBoost分類器級聯(lián)在一起作為最終的分類器輸出。

其中,所述步驟S1中,訓(xùn)練樣本庫中,以待檢測目標(biāo)作為正樣本,非檢測目標(biāo)圖像作為負(fù)樣本。

其中,所述步驟S1中,訓(xùn)練參數(shù)包括訓(xùn)練的正、負(fù)樣本數(shù)量、樣本歸一化大小、終止訓(xùn)練的檢測率和誤報(bào)率、AdaBoost的類型,弱分類器類型。

其中,所述步驟S2中,測試一級級聯(lián)分類器每一級的合并后的檢測性能的過程中,檢測窗口經(jīng)過一級級聯(lián)分類器的每一級時(shí),被判斷為正樣本的將繼續(xù)進(jìn)行下一級的判斷,如果沒有下一級將做為檢測到的目標(biāo)框輸出;被判斷為負(fù)樣本的檢測框?qū)⒆鳛榉悄繕?biāo)框輸出,并且不再進(jìn)行下一級的判斷;

對于級聯(lián)分類器的每一級對檢測窗口都有一個(gè)判斷輸出,將此輸出與標(biāo)記結(jié)果比對,判斷在當(dāng)前層下輸出的正確性即檢測率和誤報(bào)率。

其中,所述步驟S3中,確定使用縮放窗口檢測方法的開始層數(shù)X時(shí),測試一級級聯(lián)分類器檢測并且合并之后的檢測性能,根據(jù)系統(tǒng)要求的檢測率,選擇與系統(tǒng)要求的檢測率最接近且高于系統(tǒng)要求的檢測率的那一層與二級級聯(lián)分類器級聯(lián),并將這一層確定為使用縮放窗口檢測方法的開始層是X。

其中,所述步驟S4中,使用X層一級級聯(lián)分類器和合并操作對樣本庫進(jìn)行檢測,使用檢測到的正樣本作為二級級聯(lián)分類器訓(xùn)練用的正樣本,使用誤檢作為二級級聯(lián)分類器訓(xùn)練用的負(fù)樣本。

其中,所述步驟S5中,使用檢測到的正樣本和誤檢的負(fù)樣本重新訓(xùn)練AdaBoost二級級聯(lián)分類器時(shí),使用的訓(xùn)練樣本為一級級聯(lián)分類器做步驟S4篩選后的樣本。

其中,所述步驟S6中,對一級級聯(lián)分類器采用縮放分類器的方式進(jìn)行檢測,對于各個(gè)尺度下分類器使用的HAAR特征使用積分圖像計(jì)算得到,經(jīng)過一級分類器的篩選和合并操作后,單幀圖像內(nèi)剩余少量的待分析窗口,將這些少量的待分析窗口送入二級級聯(lián)AdaBoost分類器使用縮放窗口的方式檢測,即將一級分類器的檢測結(jié)果縮放至標(biāo)準(zhǔn)模板大小再送入分類器進(jìn)行檢測。

(三)有益效果

上述技術(shù)方案所提供的AdaBoost級聯(lián)分類器快速檢測方法,選用一級級聯(lián)分類器與二級級聯(lián)分類器相結(jié)合的方式,在保證了檢測速度的同時(shí),進(jìn)一步的提高了系統(tǒng)的檢測性能。

附圖說明

圖1為現(xiàn)有技術(shù)中級聯(lián)分類器的級聯(lián)示意圖。

圖2為本發(fā)明實(shí)施例中檢測方法的級聯(lián)示意圖。

具體實(shí)施方式

為使本發(fā)明的目的、內(nèi)容、和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和實(shí)施例,對本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。

參照圖2所示,本實(shí)施例AdaBoost級聯(lián)分類器快速檢測方法包括以下步驟:

S1:訓(xùn)練基于AdaBoost的一級級聯(lián)分類器

通?;贏daBoost的級聯(lián)分類器的訓(xùn)練是通過建立一個(gè)訓(xùn)練樣本庫,根據(jù)實(shí)際需求選擇訓(xùn)練參數(shù),得到若干個(gè)AdaBoost分類器級聯(lián)在一起作為最終的分類器輸出。其中訓(xùn)練樣本庫通常選取大量待檢測目標(biāo)作為正樣本,非檢測目標(biāo)圖像作為負(fù)樣本。訓(xùn)練參數(shù)包括很多,關(guān)鍵的幾個(gè)參數(shù)有訓(xùn)練的正負(fù)樣本數(shù)量、樣本歸一化大小、終止訓(xùn)練的檢測率和誤報(bào)率、AdaBoost的類型,弱分類器類型等等,都會影響到最終的分類器的性能。

影響AdaBoost分類器性能的最重要的因素就是用于訓(xùn)練的正負(fù)樣本,它不但影響到分類器的檢測性能,同時(shí)還影響到分類器的檢測效率。檢測性能高要求分類器能夠正確的判別正負(fù)樣本的類別。檢測效率要求分類器能夠快速的判別出樣本的類別。AdaBoost級聯(lián)分類器的訓(xùn)練是訓(xùn)練若干個(gè)AdaBoost分類器級聯(lián)在一起。級聯(lián)的使用可以提高分類器的檢測效率,通常AdaBoost級聯(lián)分類器的訓(xùn)練方法是在確定訓(xùn)練用的正負(fù)樣本后,用此樣本庫訓(xùn)練得到一個(gè)AdaBoost分類器,用這個(gè)AdaBoost分類器對樣本庫中的正負(fù)樣本進(jìn)行判別,把正確判別的正樣本和錯(cuò)誤判別的負(fù)樣本作為下一級訓(xùn)練用的樣本,訓(xùn)練得到下一級AdaBoost分類器,依照此方法訓(xùn)練得到若干個(gè)AdaBoost分類器,將它們級聯(lián)在一起作為最終的AdaBoost級聯(lián)分類器。

通常訓(xùn)練AdaBoost分類器將所有選中的訓(xùn)練樣本全部參與到訓(xùn)練中,這種方式得到分類器較為復(fù)雜,尤其作為級聯(lián)分類器的第一級非常影響檢測效率。為了不影響級聯(lián)分類器的檢測性能,又能提高級聯(lián)分類器的檢測效率,選用一種提高級聯(lián)分類器檢測效率的訓(xùn)練方法。此方法可描述為在訓(xùn)練級聯(lián)分類器的第一級AdaBoost分類器時(shí),在訓(xùn)練樣本庫中挑選具有代表性的訓(xùn)練樣本作為第一級AdaBoost分類器的訓(xùn)練樣本,得到一個(gè)檢測效率可以接受的簡單的分類器。此第一級分類器可以排除大部分非檢測目標(biāo),但可以保留全部待檢測目標(biāo)。這樣大部分可被簡單高效的分類器排除掉,進(jìn)入下一級分類器進(jìn)行判別的檢測區(qū)域量急劇減少,通過這種方式達(dá)到提高檢測效率的目的。由于所有的待檢測目標(biāo)可繼續(xù)由后續(xù)的級聯(lián)分類器進(jìn)行判斷,因而不會降低檢測性能。本發(fā)明描述的具有代表性的訓(xùn)練樣本是指清晰的正樣本和與正樣本差距較大的負(fù)樣本。以檢測行人為例,正樣本可挑選各種姿態(tài)的清晰行人,負(fù)樣本可以選擇來源于天空、地面、建筑物等與行人差距較大的負(fù)樣本。

S2:測試一級級聯(lián)分類器每一級的合并后的檢測性能

檢測窗口通經(jīng)過級聯(lián)分類器的每一級時(shí),被判斷為正樣本的將繼續(xù)進(jìn)行下一級的判斷,如果沒有下一級將做為檢測到的目標(biāo)框輸出。被判斷為負(fù)樣本的檢測框?qū)⒆鳛榉悄繕?biāo)框輸出,并且不再進(jìn)行下一級的判斷。對于級聯(lián)分類器的每一級對檢測窗口都有一個(gè)判斷輸出。將此輸出與標(biāo)記結(jié)果比對,可以判斷在當(dāng)前層下輸出的正確性即檢測率和誤報(bào)率。由于通常在真實(shí)的檢測目標(biāo)附近會有幾個(gè)不同尺度或者稍有偏移的檢測框出現(xiàn),它們通常都被視為正檢。由于我們采用級聯(lián)分類器設(shè)計(jì)方案,將尺度不同或者稍有偏移的檢測框合并通常不會減低檢測率,并且可以減少進(jìn)入下一級級聯(lián)分類器的檢測框的數(shù)量。因此我們要測試每一級級聯(lián)分類器的合并后的檢測性能以方便采取適當(dāng)?shù)膶訑?shù)與下一級進(jìn)行級聯(lián)

S3:根據(jù)一級級聯(lián)分類器合并后的檢測性能,確定使用縮放窗口檢測方法的開始層數(shù)X

隨著級聯(lián)分類器級聯(lián)層數(shù)的增加,誤報(bào)率下降的同時(shí)檢測率也隨之下降。分類器性能的通常要保持一定的檢測率同時(shí)要求誤報(bào)率盡可能低或者不高于一定的閾值。通常在待檢測目標(biāo)上會得到幾個(gè)不同尺度或者稍有偏移的檢測框,對于這樣的結(jié)果再使用一步合并操作可使這幾個(gè)檢測框合并為一個(gè)框,這樣再進(jìn)入下一級級聯(lián)分類器時(shí)可明顯減少待檢框數(shù)量,提高檢測速度。因此在這里我們在準(zhǔn)備與二級級聯(lián)分類器級聯(lián)時(shí)需要測試一級級聯(lián)分類器檢測并且合并之后的檢測性能,根據(jù)系統(tǒng)要求的檢測率,選擇與系統(tǒng)要求的檢測率最接近且高于系統(tǒng)要求的檢測率的那一層與二級級聯(lián)分類器級聯(lián)。將這一層確定為使用縮放窗口檢測方法的開始層是X。

S4:使用X層一級級聯(lián)分類器和合并操作對樣本庫進(jìn)行檢測,確定檢測到的正樣本和誤檢的負(fù)樣本

使用X層一級級聯(lián)分類器和合并操作對樣本庫進(jìn)行檢測,使用檢測到的正樣本作為二級級聯(lián)分類器訓(xùn)練用的正樣本,使用誤檢作為二級級聯(lián)分類器訓(xùn)練用的負(fù)樣本。

S5:使用檢測到的正樣本和誤檢的負(fù)樣本重新訓(xùn)練AdaBoost二級級聯(lián)分類器

此二級級聯(lián)分類器的訓(xùn)練方法同一級級聯(lián)分類器,只是訓(xùn)練樣本需使用一級級聯(lián)分類器做步驟S4篩選后的樣本。

S6:采用對一級級聯(lián)分類器縮放分類器和二級級聯(lián)分類器縮放檢測窗口結(jié)合的方式對待檢測目標(biāo)進(jìn)行檢測。

對一級級聯(lián)分類器采用縮放分類器的方式進(jìn)行檢測,對于各個(gè)尺度下分類器使用的HAAR特征可以使用積分圖像計(jì)算得到,并且避免了使用縮放檢測窗口的操作步驟,可以快速提高檢測速度。一級分類器可以排除大部分的誤報(bào),并保留一定的檢測率。經(jīng)過一級分類器的篩選和合并操作后,單幀圖像內(nèi)僅剩余少量的待分析窗口。將這些少量的待分析窗口送入二級級聯(lián)AdaBoost分類器再進(jìn)行分析可進(jìn)一步排除一定的誤報(bào),由于二級級聯(lián)分類器使用縮放窗口的方式檢測,即將一級分類器的檢測結(jié)果縮放至標(biāo)準(zhǔn)模板大小再送入分類器進(jìn)行檢測。二級分類器由于采用縮放檢測窗口的方式進(jìn)行檢測可以規(guī)避一級分類器采用縮放分類器方式檢測帶來的誤差,從而二級分類器的檢測性能更高,而縮放少量的檢測窗口帶來的計(jì)算量的增加是可以接受的。

以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明技術(shù)原理的前提下,還可以做出若干改進(jìn)和變形,這些改進(jìn)和變形也應(yīng)視為本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1