一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法
【專利摘要】本發(fā)明公開了一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,用以解決現(xiàn)有行人檢測算法檢測精度不高、算法復(fù)雜和多模塊融合困難等問題。采用了一種新的端到端的卷積神經(jīng)網(wǎng)絡(luò),通過構(gòu)建帶有標注的訓練樣本集,采用端到端訓練,得到一個能預(yù)測行人候選框和相應(yīng)框的置信度的卷積神經(jīng)網(wǎng)絡(luò)模型。測試時,將測試圖片輸入訓練好的模型內(nèi),即可得到相應(yīng)的行人檢測框和置信度。最后進行非極大值抑制和閥值篩選,得到最佳行人區(qū)域。本發(fā)明與以往發(fā)明相比,具有兩大優(yōu)勢:一是端到端訓練和測試,使整個模型訓練和測試都極為容易;二是本發(fā)明通過構(gòu)建候選框回歸網(wǎng)絡(luò),解決了行人尺度和比例問題,不需要以往的發(fā)明采用的金字塔技術(shù),極大的節(jié)約了計算資源。
【專利說明】
-種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于模式識別技術(shù)領(lǐng)域,尤其設(shè)及一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測 方法。
【背景技術(shù)】
[0002] 模式識別是人工智能和圖像處理領(lǐng)域的一個重要交叉學科,是近年來研究熱點所 在。早期的任務(wù)的解決方法主要依靠人類的專業(yè)領(lǐng)域知識,來設(shè)計某個算法或者構(gòu)建某個 系統(tǒng),問題解決效果受人類的知識水平所限制。隨著人工智能的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)于90年 代由Lecun正式提出。Hinton在2012年對原始的卷積神經(jīng)網(wǎng)絡(luò)進行了改進,在Image化t大賽 上取得了第一的成績。從此W后,卷積神經(jīng)網(wǎng)絡(luò)開始廣泛應(yīng)用于計算機視覺、自然語言處理 和智能捜索等領(lǐng)域。卷積神經(jīng)網(wǎng)絡(luò)由于其層間聯(lián)系和參數(shù)共享等優(yōu)勢,使其廣泛運用在圖 像處理中。
[0003]經(jīng)過對現(xiàn)有技術(shù)的檢索發(fā)現(xiàn),中國專利文獻號CN105335716A公開(公告)日 2016.02.17,公開了一種基于改進UD腳是取聯(lián)合特征的行人檢測方法,包含:圖像預(yù)處理;基 于卷積神經(jīng)網(wǎng)絡(luò)對預(yù)處理的圖像提取人體整體特征和局部特征;對步驟整體特征和局部特 征輸出的類別概率進行加權(quán)得到最終概率值,根據(jù)最終概率值判斷原始輸入圖像是否包含 行人,該技術(shù)雖然實現(xiàn)了與W前模型相比較低的漏檢率,但實際漏檢率還是偏高,而且該技 術(shù)并沒有做到端到端的訓練,必須依靠于冊G+CSS++SVM算法來獲得行人的初始候選區(qū)域。 該技術(shù)需要進行模塊級聯(lián),使整個系統(tǒng)偏復(fù)雜。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的就在于為了解決上述問題而提供一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行 人檢測方法。本發(fā)明最終在加州理工測試集上實現(xiàn)了 18.66%的漏檢率。
[0005] 本發(fā)明通過W下技術(shù)方案來實現(xiàn)上述目的: 一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其包括W下步驟: 通過構(gòu)建帶有標注圖片庫作為訓練樣本集,直接端到端訓練,得到一個能預(yù)測行人候 選框和行人候選框置信度的卷積神經(jīng)網(wǎng)絡(luò)模型; 測試時,將測試圖片輸入卷積神經(jīng)網(wǎng)絡(luò)模型,得到相應(yīng)的行人檢測框和置信度; 最后進行非極大值抑制篩選,壓縮重復(fù)的行人檢測框; 閥值篩選,根據(jù)置信度選出最佳的行人檢測框。
[0006] 上述技術(shù)方案中,所述標注是指記錄下行人在整張圖像中的左上角點和右下角點 的坐標。
[0007] 上述技術(shù)方案中,所述端到端是指除了數(shù)據(jù)預(yù)處理外的所有操作,都可W包含在 一個卷積神經(jīng)網(wǎng)絡(luò)的框架內(nèi)。
[000引上述技術(shù)方案中,所述的卷積神經(jīng)網(wǎng)絡(luò)模型是由16個卷積層,和一個上采樣層和 一個Softmax層構(gòu)成,前13個卷積層按順序依次級聯(lián),將上采樣層接到第13個卷積層上,然 后上采樣層輸出與第10個卷積層進行級聯(lián),并將級聯(lián)后的特征接入到第14個卷積層上,第 15個卷積層和第16個卷積層均直接連接到第14個所述卷積層上,Softmax層連接到第15個 卷積層上;其中,上采樣層負責對第13個卷積層進行插值放大2倍;第15個卷積層輸出行人 檢測框包含行人的置信度,第16個卷積層輸出行人檢測框的位置參數(shù),Softmax層負責對置 信度進行歸一化處理。
[0009] 上述技術(shù)方案中,訓練卷積神經(jīng)網(wǎng)絡(luò)的具體步驟如下: Al:構(gòu)建卷積神經(jīng)網(wǎng)絡(luò); A2:對網(wǎng)絡(luò)進行初始化,對于18層網(wǎng)絡(luò)架構(gòu):卷積層巧Ij卷積層13參數(shù)finetune自 Image化t的VGG16模型,并將前4層學習率設(shè)置為0。其它層由高斯分布生成的小隨機數(shù)初始 化網(wǎng)絡(luò)中待訓練參數(shù); A3:對輸入的樣本圖像每一點計算錯點框,并與原始的標注區(qū)域計算偏移量,將圖像、 圖像標簽和偏移量輸入到網(wǎng)絡(luò)中,進行前向傳播。
[0010] A4:利用SmoothLl和SoftMaxwit化OSS作為損失函數(shù),得到誤差項。使用反向傳播 算法,利用SGD調(diào)整網(wǎng)絡(luò)參數(shù),使誤差項最小。
[0011] 上述技術(shù)方案中,所述的非極大值抑制是指,多個互相重合的行人檢測框中,按照 輸出的置信度,選出置信度最大的那個行人檢測框,其它行人檢測框舍棄。
[0012] 上述技術(shù)方案中,所述的閥值選擇是指,在輸出的行人檢測框中,選擇置信度大于 一定數(shù)值的行人檢測框,作為最佳行人檢測框。
[0013] 本發(fā)明的有益效果在于: 采用了一種新的端到端的卷積神經(jīng)網(wǎng)絡(luò),通過構(gòu)建帶有標注的訓練樣本集和端到端訓 練,得到一個能預(yù)測行人候選框和相應(yīng)框的置信度的卷積神經(jīng)網(wǎng)絡(luò)模型。測試時,將測試圖 片輸入訓練好的模型內(nèi),即可得到相應(yīng)的行人檢測框和置信度。最后進行非極大值抑制和 閥值篩選。本發(fā)明與W往發(fā)明相比,具有兩大優(yōu)勢:一是端到端訓練和測試,使整個模型訓 練測試都極為容易;二是本發(fā)明通過構(gòu)建候選框回歸網(wǎng)絡(luò),解決了行人尺度和比例問題,不 需要W往的發(fā)明采用的金字塔技術(shù),極大的節(jié)約了計算資源。本發(fā)明最終實現(xiàn)了較好的回 召率和較低的漏檢率。
【附圖說明】
[0014] 圖1是本發(fā)明所述行人檢測方法的流程圖; 圖2為本發(fā)明所述18層網(wǎng)絡(luò)的示意圖。
【具體實施方式】
[0015] 下面結(jié)合附圖對本發(fā)明作進一步說明: 本發(fā)明中的一些術(shù)語解釋如下: 術(shù)語1 : BP算法 BP算法是一種反向傳播算法,分為前向過程、反向過程兩部分,其中前向過程是指將數(shù) 據(jù)輸入到網(wǎng)絡(luò)中得到最終結(jié)果的過程,反向過程是指將前向過程和樣本實際數(shù)值的差值作 為誤差,對網(wǎng)絡(luò)權(quán)重進行更新的過程。
[0016] 如圖1所示,本發(fā)明通過構(gòu)建帶有標注圖片庫作為訓練樣本集,直接端到端訓練, 得到一個能預(yù)測行人候選框和相應(yīng)框的置信度的卷積神經(jīng)網(wǎng)絡(luò)模型。測試時,將測試圖片 輸入訓練好的模型內(nèi),即可得到相應(yīng)的行人檢測框和置信度。最后進行非極大值抑制和閥 值篩選。
[0017] 其中,標注是指記錄下行人在一整張圖像中的左上角點和右下角點的坐標。
[0018] 在具體操作中,采用了化Itech的訓練集,不同天氣情況、不同場景下,通過行車記 錄儀拍攝的行人照片(包括背景),從拍攝照片中標出行人位置,通過ignore label進行訓 練樣本選擇,得到包含行人彩色圖片9100張,并做鏡像變換來增大樣本數(shù)量,把所得到的 圖像短邊尺寸歸一化為800,之后構(gòu)建卷積神經(jīng)網(wǎng)絡(luò),并將訓練樣本集送入模型進行訓練。
[0019] 如圖2所示,卷積神經(jīng)網(wǎng)絡(luò)中的卷積層1到卷積層13串聯(lián),即Conv 1 -Conv 13依次串 聯(lián),然后將上采樣層(Dconv)接到Convl3上,并將上采樣層的輸出和ConvlO的輸出級聯(lián),然 后級聯(lián)后的特征輸入到ConvH中,卷積層15和卷積層16直接連接到卷積層14上,即將 ConvlS和Convie均直接與ConvH相連接,Softmax層直接連接到卷積層15上。其中,前13個 卷積層(Convl-Convl3)作為特征提取,上采樣層負責對特征圖進行放大2倍,第14個卷積層 (Convl4)作為特征映射,剩余2個卷積層(ConvlS和Convie)分別輸出回歸框包含行人的置 信度和回歸框的位置參數(shù),Softmax層負責對置信度進行歸一化調(diào)整,其中四個卷積層 (Conv2、Conv4、Conv7和ConvlO)后面跟了ReLU和pool操作,其它卷積層后面跟了ReLU操 作,其中pool操作的核大小為2,偏移量為2。網(wǎng)絡(luò)參數(shù)如表1所示。
[0020] 表 1
構(gòu)建錯點框大小為(32*32,48*48,64*64,80*80)像素和1個比較典型的行人比例(2.4) 基準框,共4個基準框,具體偏移量為[-1,-15,18,32],[-11,-39,28,56],[-31,-87,48, 104],[-71,-183,88,200]。
[0021 ]卷積神經(jīng)網(wǎng)絡(luò)訓練和測試步驟: 1、樣本準備,來自于caltech數(shù)據(jù)集的9000張圖片并進行鏡像翻轉(zhuǎn),圖像插值使圖像短 邊為800個像素點,并準備好所有圖片的標注,即行人的左上角和右下角的坐標。
[0022] 2、構(gòu)建如圖二所示的卷積神經(jīng)網(wǎng)絡(luò)的模型,參數(shù)設(shè)置如表一所示,對網(wǎng)絡(luò)進行初 始化,前四層參數(shù)fine化ne于Image化t的VGG16模型,其它層用標注差為0.01的高斯分布隨 機初始化網(wǎng)絡(luò)中待訓練參數(shù); 3、向初始化后的網(wǎng)絡(luò)中輸入18000個訓練樣本來進行訓練,先對樣本圖像的每一個像 素點賦予4個基本框,即左上點和右下點的坐標加上基本框的偏移量,然后根據(jù)基本框與標 注框之間的重合比例(I0U),當大于0.5時設(shè)置標簽為1,其它時候設(shè)置為0,然后進行前向傳 播,計算預(yù)測的置信度和標簽的Softmax損失值,計算預(yù)測的框和標注框的SmoothLl損失 值,使用反向傳播BP算法,調(diào)整卷積神經(jīng)網(wǎng)絡(luò)參數(shù),使SmoothLl和Softmax損失函數(shù)值和最 ??; 4、得到最終模型。
[0023] 5、將準備好的圖片輸入訓練模型中,圖像插值使圖像短邊為800個像素點,即可得 到行人的候選框和輸出行人的候選框置信度。
[0024] W上僅為本發(fā)明的較佳實施例而已,并不用W限制本發(fā)明,凡在本發(fā)明的精神和 原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍內(nèi)。
【主權(quán)項】
1. 一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于: 通過構(gòu)建帶有標注圖片庫作為訓練樣本集,直接端到端訓練,得到一個能預(yù)測行人候 選框和行人候選框置信度的卷積神經(jīng)網(wǎng)絡(luò)模型; 測試時,將測試圖片輸入卷積神經(jīng)網(wǎng)絡(luò)模型,得到相應(yīng)的行人檢測框和置信度; 最后進行非極大值抑制篩選,壓縮重復(fù)的行人檢測框; 閥值篩選,根據(jù)置信度選出最佳的行人檢測框。2. 根據(jù)權(quán)利要求1所述的一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于:所 述標注是指記錄下行人在整張圖像中的左上角點和右下角點的坐標。3. 根據(jù)權(quán)利要求1所述的一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于:所 述端到端是指除了數(shù)據(jù)預(yù)處理外的所有操作,都可以包含在一個卷積神經(jīng)網(wǎng)絡(luò)的框架內(nèi)。4. 根據(jù)權(quán)利要求1所述的一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于:所 述的卷積神經(jīng)網(wǎng)絡(luò)模型是由16個卷積層,和一個上采樣層和一個Softmax層構(gòu)成,前13個卷 積層按順序依次級聯(lián),將上采樣層接到第13個卷積層上,然后上采樣層輸出與第10個卷積 層進行級聯(lián),并將級聯(lián)后的特征接入到第14個卷積層上,第15個卷積層和第16個卷積層均 直接連接到第14個所述卷積層上,Softmax層連接到第15個卷積層上;其中,上采樣層負責 對第13個卷積層進行插值放大2倍;第15個卷積層輸出行人檢測框包含行人的置信度,第16 個卷積層輸出行人檢測框的位置參數(shù),Softmax層負責對置信度進行歸一化處理。5. 根據(jù)權(quán)利要求1所述的一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于,訓 練卷積神經(jīng)網(wǎng)絡(luò)的具體步驟如下: A1:構(gòu)建卷積神經(jīng)網(wǎng)絡(luò); A2 :對網(wǎng)絡(luò)進行初始化,對于18層網(wǎng)絡(luò)架構(gòu):卷積層1到卷積層13參數(shù)f inetune自 ImageNet的VGG16模型,并將前4層學習率設(shè)置為0; 其它層由高斯分布生成的小隨機數(shù)初始化網(wǎng)絡(luò)中待訓練參數(shù); A3:對輸入的樣本圖像每一點計算錨點框,并與原始的標注區(qū)域計算偏移量,將圖像、 圖像標簽和偏移量輸入到網(wǎng)絡(luò)中,進行前向傳播; A4:利用Smoo thL 1和Sof tMaxw i thLo s s作為損失函數(shù),得到誤差項; 使用反向傳播算法,利用SGD調(diào)整網(wǎng)絡(luò)參數(shù),使誤差項最小。6. 根據(jù)權(quán)利要求1所述的一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于:所 述的非極大值抑制是指,多個互相重合的行人檢測框中,按照輸出的置信度,選出置信度最 大的那個行人檢測框,其它行人檢測框舍棄。7. 根據(jù)權(quán)利要求1所述的一種端到端的卷積神經(jīng)網(wǎng)絡(luò)的行人檢測方法,其特征在于:所 述的閥值選擇是指,在輸出的行人檢測框中,選擇置信度大于一定數(shù)值的行人檢測框,作為 最佳行人檢測框。
【文檔編號】G06K9/00GK106022237SQ201610315688
【公開日】2016年10月12日
【申請日】2016年5月13日
【發(fā)明人】李鴻升, 范峻銘, 周輝, 胡歡, 曹濱
【申請人】電子科技大學