本發(fā)明屬于模式識別、計算機視覺領(lǐng)域,特別涉及一種基于卷積神經(jīng)網(wǎng)絡(luò)的人手圖像區(qū)域檢測方法。
背景技術(shù):
:近年來,隨著計算機視覺和模式識別的發(fā)展,手部的檢測與定位取得了明顯的進展,但仍存在許多不足,由于外界環(huán)境的影響,如光照變化、手部陰影、手部形變、手部運動自遮擋、互遮擋等,給手部檢測與定位帶來了極大的挑戰(zhàn)。而卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNetworks,CNN)是人工神經(jīng)網(wǎng)絡(luò)的一種,它的權(quán)值共享網(wǎng)絡(luò)結(jié)構(gòu)使之更類似于生物神經(jīng)網(wǎng)絡(luò),降低了網(wǎng)絡(luò)模型的復(fù)雜度,減少了權(quán)值的數(shù)量。在當(dāng)前幾乎所有的物體分類數(shù)據(jù)庫和競賽中都取得了最好成績,是當(dāng)前語音分析和圖像識別領(lǐng)域的研究熱點。傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)在物體識別領(lǐng)域具有很強的鑒別力,但其要求輸入具有旋轉(zhuǎn)不變性,而在很多任務(wù)中,如人手圖像區(qū)域檢測等,輸入圖像具有大量旋轉(zhuǎn)變化,傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)在這些任務(wù)表現(xiàn)不佳。另外傳統(tǒng)檢測方法中,候選區(qū)域提取完全基于灰度值聯(lián)通區(qū)域,難以處理像手這類形變大、遮擋嚴重的物體。技術(shù)實現(xiàn)要素:為解決現(xiàn)有技術(shù)問題,本發(fā)明提供一種基于卷積神經(jīng)網(wǎng)絡(luò)的人手圖像區(qū)域檢測方法。該方法利用角度模型保證方法具有旋轉(zhuǎn)不變性,具有很高的人手區(qū)域檢測精度。本發(fā)明提供一種基于卷積神經(jīng)網(wǎng)絡(luò)的人手圖像區(qū)域檢測方法,該方法包括以下步驟:步驟1,采集多個訓(xùn)練圖像,對訓(xùn)練圖像標(biāo)注手腕和手掌中心的位置,并計算人手角度,然后根據(jù)人手角度把訓(xùn)練集分為多個角度集合;以各個角度集合為訓(xùn)練子集,訓(xùn)練一個多部件的滑動窗口型的分類模型M1;步驟2,基于分類模型M1,對訓(xùn)練集的每個圖像提取候選區(qū)域P1,并對候選區(qū)域標(biāo)注類別與角度信息。步驟3,將根據(jù)訓(xùn)練集得到的候選區(qū)域P1送入卷積神經(jīng)網(wǎng)絡(luò),訓(xùn)練得到角度估計模型M2。步驟4,將候選區(qū)域P1中的每一個區(qū)域送入角度估計模型M2,得到每個區(qū)域的估計角度A1,將其按角度A1旋轉(zhuǎn)至正定姿態(tài),得到正定姿態(tài)的候選區(qū)域集合P2。步驟5,將正定姿態(tài)的候選區(qū)域集合P2送入卷積神經(jīng)網(wǎng)絡(luò),訓(xùn)練得到類別估計模型M3。步驟6,對于測試集,將集合中的圖像送入分類模型M1,得到候選區(qū)域P3。步驟7,將候選區(qū)域P3中的每一個區(qū)域送入角度估計模型M2,得到每個區(qū)域的估計角度A2,將其按角度A2旋轉(zhuǎn)至正定姿態(tài),得到正定姿態(tài)的候選區(qū)域集合P4。步驟8,將正定姿態(tài)的候選區(qū)域集合P4送入類別估計模型M3中,得到候選區(qū)域類別估計信息,從而確定人手圖像區(qū)域。根據(jù)本發(fā)明的方法,圖像在復(fù)雜的旋轉(zhuǎn)變換下,仍然可以魯棒地達到人手圖像區(qū)域檢測的目的。本發(fā)明可以在人機交互、可穿戴計算等領(lǐng)域應(yīng)用。附圖說明圖1是本發(fā)明方法的步驟流程圖。圖2是本發(fā)明方法的具體檢測效果圖。具體實施方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面通過具體實施例和附圖,對本發(fā)明做進一步說明。S1.本發(fā)明提供一種基于卷積神經(jīng)網(wǎng)絡(luò)的人手圖像區(qū)域檢測方法,其總體框架和流程如圖1所示,該方法包括以下步驟:步驟1,采集多個訓(xùn)練圖像,對訓(xùn)練圖像標(biāo)注手腕和手掌中心的位置,并計算人手角度,根據(jù)所標(biāo)注的角度信息,將訓(xùn)練集分為多個角度集合。以各個角度集合為訓(xùn)練子集,訓(xùn)練一個多部件的滑動窗口型的分類模型M1。步驟2,基于分類模型M1,對訓(xùn)練集的每個圖像提取候選區(qū)域P1,并對候選區(qū)域標(biāo)注類別與角度信息。步驟3,將根據(jù)訓(xùn)練集得到的候選區(qū)域P1送入卷積神經(jīng)網(wǎng)絡(luò),訓(xùn)練得到角度估計模型M2。步驟4,將候選區(qū)域P1中的每一個區(qū)域送入角度估計模型M2,得到每個區(qū)域的估計角度A1,將其按角度A1旋轉(zhuǎn)至正定姿態(tài),得到正定姿態(tài)的候選區(qū)域集合P2。步驟5,將正定姿態(tài)的候選區(qū)域集合P2送入卷積神經(jīng)網(wǎng)絡(luò),訓(xùn)練得到類別估計模型M3。步驟6,對于測試集,將集合中的圖像送入分類模型M1,得到候選區(qū)域P3。步驟7,將候選區(qū)域P3中的每一個區(qū)域送入角度估計模型M2,得到每個區(qū)域的估計角度A2,將其按角度A2旋轉(zhuǎn)至正定姿態(tài),得到正定姿態(tài)的候選區(qū)域集合P4。步驟8,將正定姿態(tài)的候選區(qū)域集合P4送入類別估計模型M3中,得到類別估計信息。S2.根據(jù)流程S1所述方法,所述步驟1中訓(xùn)練集合的角度劃分進一步包括以下步驟:步驟1.1,統(tǒng)計訓(xùn)練集角度分布,根據(jù)分布直方圖將角度等分為N個區(qū)域。步驟1.2,基于每個區(qū)域內(nèi)的訓(xùn)練樣本,訓(xùn)練一個分類模型部件,將N個部件整合形成一個整體分類模型M4。步驟1.3,對于每一訓(xùn)練樣本,送入分類模型M4,計算其在各個分類模型部件的分數(shù),選取分數(shù)最高的部件,并將該樣本劃分給該部件對應(yīng)的角度區(qū)域。步驟1.4,重復(fù)步驟1.2,步驟1.3直到角度區(qū)域內(nèi)樣本不發(fā)生明顯改變或到達預(yù)定重復(fù)次數(shù)。S3.根據(jù)流程S2所述方法,所述步驟1.2中分類模型的訓(xùn)練進一步包括以下步驟:步驟1.2.1,對于一個訓(xùn)練樣本,按α(α<1)倍率分別放大和縮小各K級,組成2K+1層金字塔。步驟1.2.2,將得到的2K+1層金字塔送入M層卷積神經(jīng)網(wǎng)(M一般大于等于5),通過預(yù)訓(xùn)練得到分類特征金字塔。步驟1.2.3,在分類特征金字塔上,每層都使用滑動窗口掃描,計算其真值(groundtruth)的交集面積I與并集面積U,得到I與U的比值IoU。選擇IoU比值大于β(β<1)的候選區(qū)域作為正樣本,即類別為1,其余樣本為負樣本,類別為0。步驟1.2.4,選擇全部正樣本作為正樣本集,隨機選擇部分負樣本作為負樣本集,使用梯度下降法訓(xùn)練一個模板分類器。步驟1.2.5,將所有負樣本送入模板分類器,選取前T(T一般可選為100-300的整數(shù))個分數(shù)最高且分數(shù)大于某一閾值的負樣本加入負樣本集,若負樣本集數(shù)目大于最大值,丟棄若干分數(shù)最低的負樣本,使得負樣本集數(shù)目等于最大值。步驟1.2.6,重復(fù)步驟1.2.4,步驟1.2.5直到模板分類精度達到某一閾值或到達預(yù)定重復(fù)次數(shù)。S4.根據(jù)流程S1所述方法,所述步驟2中候選區(qū)域類別與角度信息的標(biāo)注進一步包括以下步驟:步驟2.1對于每一個候選區(qū)域計算其真值(groundtruth)的交集面積I與并集面積U,得到I與U的比值IoU。步驟2.2選擇IoU比值大于β(β<1)的候選區(qū)域作為正樣本,即類別為1,其余樣本為負樣本,類別為0。步驟2.3對每一個正樣本,選擇與其IoU比值最大的真值(groundtruth),并該真值(groundtruth)的角度作為該樣本的角度信息。步驟2.4使用所有正樣本訓(xùn)練角度估計模型M2,使用訓(xùn)練集所有樣本訓(xùn)練類別估計模型M3。S5.根據(jù)流程S1所述方法,所述步驟3訓(xùn)練角度估計模型進一步包括以下步驟:步驟3.1,將所有訓(xùn)練樣本縮放至固定大小。步驟3.2,計算每個像素點每個通道平均值,得到一個平均值圖像,對每個訓(xùn)練樣本減去該平均值圖像。步驟3.3,將訓(xùn)練樣本送入N層網(wǎng)絡(luò)結(jié)構(gòu)(N一般大于等于7),進行訓(xùn)練得到角度估計模型。S6.根據(jù)流程S5所述方法,所述步驟3.3訓(xùn)練的角度估計模型進一步包括:步驟3.3.1,根據(jù)標(biāo)注好的角度θ,計算得到cosθ,sinθ作為角度的真值。步驟3.3.2,計算E=||(x1,x2)-(cosθ,sinθ)||2,其中E表示角度估計模型的殘差,(x1,x2)表示角度估計模型M2的估計值。步驟3.3.3,利用得到的殘差E,使用最優(yōu)化方法更新角度估計模型M1的各個權(quán)重達到訓(xùn)練的目的。S7.根據(jù)流程S1所述方法,所述步驟4將樣本旋轉(zhuǎn)至正定姿態(tài)進一步包括:步驟4.1,將角度估計模型得到的(x1,x2),正則化使得||(x1,x2)||2=1。步驟4.2,假定非正定的輸入U,正定的輸出V,xisyis=Aθxityit1=x2x10-x1x20xityit1]]>其中為非正定的輸入U上的坐標(biāo),為正定的輸出V上對應(yīng)的坐標(biāo),Aθ表示非正定輸入到正定輸出的變化矩陣。具體地,Vic=ΣnHΣmWUnmck(xis-m;Φx)k(yis-n;Φy)]]>∀i∈[1...H′W′],∀c∈[1...C]]]>其中,H,W表示非正定的輸入U的長和寬,H′,W′表示正定的輸入V的長和寬,C表示輸入輸出的通道數(shù),k(x)為某一采樣函數(shù),Φx,Φy為采樣參數(shù)k(x)的參數(shù);m,n表示非正定的輸入U上的坐標(biāo)。特別地,當(dāng)k(x)為max(x)時,Vic=ΣnHΣmWUnmcmax(0,1-|xis-m|)max(0,1-|yis-n|)]]>進而得到正定的輸出V。S8.根據(jù)流程S1所述方法,所述步驟5訓(xùn)練類別估計模型進一步包括:步驟5.1,將所有訓(xùn)練樣本縮放至固定大小。步驟5.2,計算每個像素點每個通道平均值,得到一個平均值圖像,對每個訓(xùn)練樣本減去該平均值圖像。步驟5.3,將訓(xùn)練樣本送入G層網(wǎng)絡(luò)結(jié)構(gòu)(G一般大于等于7),進行訓(xùn)練得到類別估計模型。S9.根據(jù)流程S8所述方法,所述步驟5.3訓(xùn)練類別估計模型進一步包括:步驟5.3.1,選擇全部正樣本作為正樣本集,隨機選擇部分負樣本作為負樣本集,使用梯度下降法訓(xùn)練一個模板分類器。步驟5.3.2,將所有負樣本送入模板分類器,選取前T個分數(shù)最高且分數(shù)大于某一閾值的負樣本加入負樣本集,若負樣本集數(shù)目大于最大值,丟棄若干分數(shù)最低的負樣本,使得負樣本集數(shù)目等于最大值。步驟5.3.3,重復(fù)步驟5.3.1,步驟5.3.2直到模板分類精度達到某一閾值或到達預(yù)定重復(fù)次數(shù)。S10.根據(jù)流程S8所述方法,所述步驟5.3訓(xùn)練類別估計模型進一步包括:a)計算其中,E表示類別估計模型的殘差,p為類別真值,為類別估計分數(shù);b)利用得到的殘差E,使用最優(yōu)化方法更新類別估計模型M3的各個權(quán)重達到訓(xùn)練的目的。根據(jù)本發(fā)明的方法,圖像在復(fù)雜的旋轉(zhuǎn)變換下,仍然可以魯棒地達到人手圖像區(qū)域檢測的目的。具體效果如圖2所示,其中(a)、(c)圖為待檢測圖像,(a)、(c)圖為檢測后得到人手圖像區(qū)域的圖像。以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其進行限制,本領(lǐng)域的普通技術(shù)人員可以對本發(fā)明的技術(shù)方案進行修改或者等同替換,而不脫離本發(fā)明的精神和范圍,本發(fā)明的保護范圍應(yīng)以權(quán)利要求書所述為準(zhǔn)。當(dāng)前第1頁1 2 3