摘 要:本文提出了一種集成分類器設(shè)計(jì)方法。通過智能選擇算法將一組弱分類器結(jié)合成為另一組強(qiáng)分類器,再將這些強(qiáng)分類器級聯(lián)成性能更好的分類器,提出的策略通過優(yōu)化組合基于AdaBoost的分類器,選擇出綜合性能最好的組合分類體系,有效提高了行人檢測的準(zhǔn)確性和效率。
關(guān)鍵詞:AdaBoost;行人檢測;分類器
DOI:10.16640/j.cnki.37-1222/t.2019.18.113
1 前言
行人檢測作為目標(biāo)檢測的一個(gè)重要分支,就實(shí)用價(jià)值而言,它廣泛的應(yīng)用于人機(jī)交互、視頻監(jiān)控、智能車輛等領(lǐng)域;就研究價(jià)值而言,由于人體不管是在角度、姿態(tài)、體型還是在燈光、服飾、部分遮擋等方面都會引起很大的變化,所以行人檢測有一定的研究意義。
目前主流的檢測方法基本上可以歸納為兩種:
(1)基于背景建模的方法:將前景從圖像中分離出來,并再將目標(biāo)從前景中分離出來,最后進(jìn)行目標(biāo)的特征提取,判別分類。(2)基于統(tǒng)計(jì)學(xué)習(xí)的方法:即分類器的訓(xùn)練是基于大規(guī)模的訓(xùn)練樣本。通常提取的目標(biāo)特征包括形狀、紋理、灰度等,常見的分類器有支持向量機(jī)、AdaBoost、決策樹等。
本文提出一種基于 AdaBoost 的行人檢測優(yōu)化算法,該算法引入優(yōu)化權(quán)重的方法, 提出一種基于級聯(lián)分類器的行人檢測方法。
2 AdaBoost算法的簡介
1995年,F(xiàn)reund和Schapire提出了AdaBoost算法[1],這是一種基于Boosting算法的自適應(yīng)算法。通過調(diào)整權(quán)重,將同一訓(xùn)練集上的弱分類器加權(quán)到最終的強(qiáng)分類器中。 實(shí)質(zhì)上算法是利用數(shù)據(jù)分布的改變來實(shí)現(xiàn)的,每個(gè)樣本的權(quán)重也是在上次分類的正確度及每次樣本子集中是否正確分類所有樣本的基礎(chǔ)上決定的。在權(quán)重改變之后的新樣本集被用作訓(xùn)練下分類器的輸入,然后在每一輪中獲得的分類器是最終分類器。
AdaBoost通過調(diào)整每個(gè)樣本的權(quán)重來獲得不同的樣本集。首先,對具有相同初始權(quán)重的樣本集進(jìn)行弱分類器的訓(xùn)練,然后減小正確分類的樣本的權(quán)重;增加錯(cuò)誤分類樣本的權(quán)重(為第輪各個(gè)樣本在樣本集中參與訓(xùn)練的概率),這樣就逐漸凸出了那些錯(cuò)誤分類的樣本,如此便獲得了一個(gè)新的樣本集。依次重復(fù)便得到個(gè)弱分類器即:,其中表示的權(quán)重,的大小是根據(jù)對應(yīng)分類器的分類性能來確定的。通過對組合的多個(gè)分類器進(jìn)行加權(quán)來生成最終分類器。由此可看出Adaboost算法主要關(guān)注那些關(guān)鍵的訓(xùn)練數(shù)據(jù),而剔除了不重要的數(shù)據(jù)特征。
級聯(lián)分類器即級聯(lián)多個(gè)強(qiáng)分類器,每個(gè)強(qiáng)分類器都是加權(quán)組合隨意個(gè)弱分類器而得。強(qiáng)分類器可以由不同數(shù)量的弱分類器組成。 對于負(fù)樣本的判斷,每個(gè)級別的強(qiáng)分類器具有高準(zhǔn)確率,因此只要發(fā)現(xiàn)檢測窗口是負(fù)樣本,丟棄此窗口會停止分類,從而大大節(jié)省了檢測時(shí)間。
級聯(lián)分類器具備以下兩個(gè)特征:
(1)基于AdaBoost的學(xué)習(xí)算法。最初AdaBoost算法是用來組合一系列弱分類器為一個(gè)強(qiáng)分類器的[2-3]。若一個(gè)弱分類器就是單個(gè)的特征,那么該算法就能將少部分關(guān)鍵特征從龐大的特征集中篩選出來,故而它是一種十分高效的特征選擇算法。(2)級聯(lián)結(jié)構(gòu)的分類器。所謂的級聯(lián)是指包括許多級別的分類器,并且只有前一級別的樣本可以進(jìn)入后一級。 因此,可以在前幾個(gè)階段快速消除許多非目標(biāo)樣本,從而為更像目標(biāo)區(qū)域的檢測節(jié)省了大量時(shí)間。
3 基于AdaBoost算法的行人檢測
3.1 系統(tǒng)框架
整個(gè)行人檢測系統(tǒng)的基本框架流程如圖所示,系統(tǒng)分為兩個(gè)模塊: 離線培訓(xùn)和在線檢測。訓(xùn)練分類器模塊又包括特征提取和級聯(lián)分類器訓(xùn)練,在檢測時(shí)只要加載離線訓(xùn)練好的分類器即可,將兩個(gè)模塊獨(dú)立可以節(jié)省時(shí)間。整個(gè)系統(tǒng)的輸入是一張圖像,輸出為標(biāo)記出行人的圖像。
3.2 特征提取與分類器訓(xùn)練
行人檢測系統(tǒng)主要的核心在于特征的提取和分類器的訓(xùn)練[4]。
(1)特征提取。在特征提取階段,首先計(jì)算每個(gè)樣本的積分圖,然后以數(shù)組元素的形式將積分圖放在內(nèi)存中,循環(huán)每個(gè)子窗口時(shí)可直接調(diào)用數(shù)組元素來計(jì)算子窗口的矩形特征和三角特征,然后將二者進(jìn)行算術(shù)相加即得該子窗口融合后的特征值。(2)分類器訓(xùn)練。首先計(jì)算樣本集的積分圖并執(zhí)行特征提取,然后根據(jù)AdaBoost訓(xùn)練強(qiáng)分類器的設(shè)定閾值得到每個(gè)融合特征對應(yīng)的一組弱分類器(其中閾值一般取該類特征的中值),再從中挑選最優(yōu)弱分類器,調(diào)用AdaBoost算法加權(quán)組合為強(qiáng)分類器,最后將這些強(qiáng)分類器級聯(lián)組合即得到了一個(gè)更強(qiáng)大的級聯(lián)分類器[5]。
級聯(lián)分類器每一級都比前一級復(fù)雜,且每一級都包含了多個(gè)弱分類器。幾乎所有正性樣本都通過每個(gè)分類器,但大多數(shù)非目標(biāo)都會同時(shí)被過濾掉。如此每一級就比前一級少了待檢測正樣本,且能夠剔除大部分非檢測目標(biāo),檢測速度明顯提高。
在檢測行人的整個(gè)過程中,逐步檢測級聯(lián)分類器,只有當(dāng)前分類器的樣本才會觸發(fā)下一級的分類。否則,檢測過程將立即終止,最后只有在通過所有級別的分類器后才會被確定為行人。
4 結(jié)語
本文主要介紹了AdaBoost算法在行人檢測模式中的應(yīng)用。由此可見級聯(lián)Adaboost算法的優(yōu)點(diǎn)在于它很好地結(jié)合了特征選取,從大量的特征中選擇最利于鑒別行人的特征,逐步檢測,大大提高行人檢測效率。
參考文獻(xiàn):
[1]Freund Y,Schapire R E.A short introduction to boosting [J].Journal of Japanese Society for Artificial Intellig ence,1999,14(05):771-780.
[2]陸朝霞.基于AdaBoost算法的行人檢測方法研究[D].西安:西北工業(yè)大學(xué),2007.
[3]趙向輝.面向目標(biāo)的帶先驗(yàn)概率的AdaBoost算法[J].四川大學(xué)學(xué)報(bào),2010,42(02):139-144.
[4]黃如錦,李誼,李文輝等.基于多特征AdaBoost的行人檢測算法[J].吉林大學(xué)學(xué)報(bào):理學(xué)版,2010(05):449-455.
[5]崔瀟瀟,姚安邦,王貴錦等.基于級聯(lián)AdaBoost的目標(biāo)檢測融合算法[J].自動化學(xué)報(bào),2009(04):417+42.
作者簡介:陳瑋瑋(1981-),女,江蘇宜興人,碩士,講師,研究方向:電子應(yīng)用技術(shù)。