999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于強化學習的多人姿態(tài)檢測算法優(yōu)化

2019-04-15 06:55:26蔡哲棟
計算機應用與軟件 2019年4期
關(guān)鍵詞:動作智能檢測

黃 鐸 應 娜 蔡哲棟

(杭州電子科技大學通信工程學院 浙江 杭州 310018)

0 引 言

人體姿態(tài)檢測問題是基本的計算機視覺問題,目前已經(jīng)有很多算法對這一問題進行了研究,并且取得了不錯的成效。

在單人姿態(tài)檢測問題中,由于人體占據(jù)了圖片的大部分像素,所以對于檢測器而言不會有許多干擾信息。這在姿態(tài)檢測問題中是比較簡單的一個部分。一些傳統(tǒng)的方法采用了圖像結(jié)構(gòu)模型。例如,在人體姿態(tài)檢測問題中非常有效的樹模型[8]和隨機森林模型[9]。在文獻[10]中廣泛研究了一些基于圖像的模型,例如隨機場模型[11]和圖像依賴模型[12]。

最近,深度學習成為了一種在模式識別方面非常有效的方法,利用深度學習的人體姿態(tài)檢測同樣取得了很好的成績。一些有代表性的方法例如深度姿態(tài)[13],基于DNN的模型[14]和基于CNN的模型[1]。

以上所說的這些方法在人體信息足夠完整的情況下可以有很好的表現(xiàn),但是在多人姿態(tài)檢測問題中常常不會有如此精確的人體信息。

而與單人姿態(tài)檢測問題相比,多人姿態(tài)檢測則更具有挑戰(zhàn)性(意為在單張圖片中有多個人體)。針對多人姿態(tài)檢測,目前的算法大致分為兩種。其一是使用兩步檢測框架,其二是采用肢體框架。兩步檢測框架中的第一步,是目標檢測算法通過包圍框的方式定位出人體,第二步是分別將每個包圍框做姿態(tài)檢測。肢體框架則是獨立地檢測人體的各個部分,再把各個部分拼接起來,以形成多個人體姿態(tài)。兩種方法各有利弊,其中兩步檢測框架的檢測精度高度依賴目標檢測算法的精度,包圍框?qū)θ梭w的契合程度會影響姿態(tài)檢測算法的精度;而肢體框架的圖片中若多個人體的距離相近,甚至互相遮擋,肢體框架的拼接工作就會變得困難。

1 相關(guān)工作

(1) 肢體檢測框架 肢體檢測框架有許多代表性的方法。Chen等[4]提出了一種通過圖像模型來解析被遮擋的人體的方法,該方法可以將人體的各個部分靈活組合。Gkioxari等[3]使用k-poselets來全局檢測人和預測人體姿勢,通過加權(quán)平均來預測最終的姿態(tài)。Pishchulin等[5]提出了DeepCut模型,該模型先檢測身體的每個部分,然后通過整體線性程序來標記并且組裝這些部分,最后達到預測人體姿態(tài)的目的。Insafutdinov等[15]提出了一個更強的基于ResNet的肢體檢測器和一個更好的增量優(yōu)化策略[6]。

雖然基于肢體檢測方法有良好的表現(xiàn),但是由于該方法只專注于小區(qū)域的檢測,缺少全局信息,所以該方法依舊存在精度上的缺陷。

(2) 兩步框架 在兩步框架的研究中,幾乎都由人體檢測器和姿態(tài)檢測器兩部分組成。Pishculin等[2]采用了傳統(tǒng)圖像結(jié)構(gòu)模型進行姿態(tài)預測。Insafutdinov等[6]則采用了相似的兩步框架,由人體檢測器Faster R-CNN[16]和姿態(tài)預測器DeeperCut構(gòu)成。他們的方法在MPII數(shù)據(jù)集上最高只能達到51.0 mAP的精度。由于計算機技術(shù)不斷發(fā)展,硬件水平快速上升的情況下,物體檢測器和單人姿態(tài)檢測器都達到了一個相當好的水平,而兩步框架得益于兩者的先進性,在多人體檢測問題中也取得了非常優(yōu)異的表現(xiàn)。

但如上文所說,兩步框架中依舊存在著人體監(jiān)測框架不精確的問題,本文致力于解決這個問題,在兩步框架中加入了強化學習的順序決策過程,用于調(diào)整包圍框以提升算法精度。

強化學習的概念從博弈論衍生而來,通過不斷的試錯學習,從而找到一種最佳的解決問題的方法。強化學習在諸多領(lǐng)域都是非常強有力的工具,如在雅達利2600游戲機和AlphaGo等項目都有出色應用。

在目標檢測領(lǐng)域,強化學習也發(fā)揮出很強大的作用。Juan等[17]設(shè)計了一些包圍框的動作,通過對包圍框的調(diào)整不斷接近目標,最終定位目標。Míriam等[18]將圖片分為五個區(qū)域,挑選出目標存在的區(qū)域后重復這一步驟,不斷聚焦目標,實現(xiàn)定位功能。

本文采用的算法基于兩步檢測框架。如同上文所述,包圍框?qū)θ梭w的貼合程度會影響人體姿態(tài)檢測的精度,圖1通過SSD300[7]和hourglass算法[1]的結(jié)合說明了這個問題。其中,圖1(a)表示在目標檢測步驟中被判定為正確的情況(比如交并比大于0.6),在人體姿態(tài)檢測時依然會出現(xiàn)很嚴重的錯誤。這是因為通過目標檢測算法得到的包圍框雖然檢測到了人體,但是這些信息卻不夠精確,導致人體姿態(tài)檢測算法的精度受到了負面影響。

(b) 精確的包圍框在姿態(tài)檢測上可以有很好的效果圖1 不同包圍框精度情況下的檢測效果

為了解決人體檢測的包圍框信息不精確問題,本文算法在兩步檢測框架之間引入了強化學習,形成基于強化學習的兩步檢測框架,調(diào)整包圍框使其更貼近人體,以提升精度。算法定義包圍框為智能體,建立了一個順序決策過程。智能體通過卷積網(wǎng)絡(luò)獲取圖片信息進行包圍框的調(diào)整,下一次迭代中智能體會根據(jù)調(diào)整后的包圍框信息決定該次迭代中的動作。算法不斷重復這一過程,最終得到一個最適合人體姿態(tài)檢測的包圍框,以此來提升精度。其中,算法采用了馬爾科夫決策過程,設(shè)計了8種變形動作以及一種終止動作,如圖2所示,8種動作分別為左上角點和右下角點的上下左右平移。這8種變形動作涵蓋了包圍框所有的動作,以滿足貼近人體的需求。算法在MPII數(shù)據(jù)集上做了訓練和驗證,結(jié)果達到了74 mAP。

圖2 通過調(diào)整包圍框?qū)崿F(xiàn)精度的提升

2 算法設(shè)計

本文的算法如圖3所示,首先通過改進的目標檢測器SSD回歸出初步的人體包圍框,再通過深度強化學習網(wǎng)絡(luò)判斷包圍框是否準確,并對定位的包圍框設(shè)計了8種變形操作以及一種終止動作,即采用馬爾可夫策略對其左上角與右下角坐標進行迭代調(diào)整,調(diào)整動作集合為兩個點的上下左右平移,從而提升精度。最后,由人體姿態(tài)檢測器對調(diào)整后的包圍框進行姿態(tài)檢測。

圖3 本文算法的流程圖

2.1 人體目標檢測器

本文采用了兼顧精度與速度的目標檢測算法SSD[7](Single Shot MultiBox Detector)。該算法采用VGG-16[21]作為前置網(wǎng)絡(luò),刪除了末尾的全連接層,并在卷積層后添加置信層和回歸層。SSD在網(wǎng)絡(luò)中選擇6種不同尺度的特征圖,每張?zhí)卣鲌D的每個像素點都預設(shè)了一定數(shù)量的預設(shè)框。特征圖經(jīng)過回歸層后會得到與預設(shè)框相同數(shù)量的包圍框,并且與預設(shè)框一一對應。預設(shè)框與真實包圍框(label)進行匹配,IOU大于0.5的定義為正樣本,其余的為負樣本。最后將與正樣本對應的包圍框與真實值進行l(wèi)oss計算。常用的SSD算法輸入尺度為300,但是小目標檢測的精度不高。在本文中SSD算法的輸入尺度為512,置信層與回歸層都為7層,相比于300尺度的SSD算法,更大的輸入尺度在小目標檢測的精度上有很大的改善。

本文通過SSD對圖像進行特征提取,并回歸得到目標的包圍框坐標。

bbox=ConvSSD(img)

(1)

式中:img是輸入圖片,ConvSSD(·)是SSD算法,bbox是回歸得到的包圍框坐標。

2.2 基于強化學習的目標精細模型

針對目標檢測器信息不夠精確的問題,算法定義目標檢測器所回歸出來的包圍框為智能體,該智能體會與環(huán)境交互獲取信息,建立馬爾科夫決策過程。在每一次迭代中,智能體需要獲取信息來決定一次變形動作,在下一次的迭代中,智能體會根據(jù)上一次變性之后的信息來決定再下一次迭代的變形動作,直到確定目標最優(yōu)或者達到限制的迭代次數(shù)為止。

2.2.1 馬爾科夫決策過程參數(shù)

狀態(tài)智能體迭代至當前情況下的信息,狀態(tài)是智能體決定動作的依據(jù)。

動作動作來自于動作空間,智能體根據(jù)當前的狀態(tài)和之前迭代的歷史獎勵信息,選擇能達到最大化期望獎勵的動作。

獎勵每次動作執(zhí)行后,算法計算出該狀態(tài)下執(zhí)行該動作的獎勵。獎勵代表著智能體是否正朝著最終目標進行動作。

2.2.2 Q學習

智能體獎勵的來源,動作A和狀態(tài)st,受到函數(shù)Q(st,A)控制,該函數(shù)可以通過Q學習函數(shù)進行估計。智能體會通過函數(shù)Q(st,A)選擇可以獲得獎勵的動作。Q學習函數(shù)使用Bellman方程(式(2))不斷迭代更新動作選擇策略,其中st和A是當前的相對應的動作和狀態(tài),R是當前的獎勵,maxa′Q(st′,A′)表示未來的獎勵,γ表示折扣因子。本文采用強化學習對Q網(wǎng)絡(luò)進行訓練,以使其能近似于Q函數(shù)[19]。

Q(st,A)=R+γmaxa′Q(st′,A′)

(2)

2.2.3 算法模型

當前智能體的信息由通過不同尺度的卷積層對bbox抽取的特征所組成,如式(3)所示。算法的狀態(tài)st是由當前智能體的信息ft和歷史動作hv所組成,如式(4)所示,其中函數(shù)Cat(·)用于將ft和hv進行拼接。歷史動作是一個向量,向量中包含了前4次迭代中智能體發(fā)生形變而所選擇的動作,并入當前智能體的信息將有助于在訓練的過程中穩(wěn)定調(diào)整軌跡。算法將前4次迭代中的動作組成一個向量編入狀態(tài)中,每次迭代會有9種不同的動作提供選擇,所以一個歷史動作向量是36維的。這種類型的向量也被文獻[17]所采用。

ft=Conv(bbox)

(3)

st=Cat(ft,hv)

(4)

智能體通過由卷積神經(jīng)網(wǎng)絡(luò)提取得到的特征進行決策,選擇當前狀態(tài)下所應該選擇的動作,如式(5)所示,式中QNet表示深度Q網(wǎng)絡(luò)。算法設(shè)計了兩種類型的動作:一是調(diào)整動作a(·),該類型的動作會調(diào)整包圍框的形狀(式(6));二是終止動作t,該類型的動作一旦被選擇,調(diào)整過程即終止。其中的調(diào)整動作數(shù)量有8種,分別是包圍框左上角坐標的四個方向平移,和包圍框右下角坐標的四個方向平移。這樣設(shè)計的理由是這8種動作涵蓋包圍框的所有動作可能,相比于一般的包圍框縮放和平移的規(guī)則動作,這樣設(shè)計可以使得包圍框做出不規(guī)則的動作,更有利于使包圍框貼近人體。在迭代過程中智能體會不斷根據(jù)當前的狀態(tài)選擇動作,每次調(diào)整包圍框后會獲得新的狀態(tài),再選擇新的動作,直到選擇為終止動作為止。

a=QNet(st)

(5)

bbox′=a(bbox)

(6)

算法選擇由文獻[17]中所提出的獎勵公式作為該模型的獎勵公式。調(diào)整動作的和終止動作獎勵公式分別由式(9)和式(10)給出。因為智能體所選擇的動作會產(chǎn)生新的包圍框,人體姿態(tài)檢測器ConvHAD(·)會根據(jù)新的包圍框產(chǎn)生新的精度acc1(式(7));算法定義不加入強化學習的兩步框架的精度acc0作為真實值(式(8))。對于當前的狀態(tài)st,智能體選擇的調(diào)整動作得到新狀態(tài)st′,產(chǎn)生的新精度acc1,如果大于真實值acc0,則會獲得一個獎勵(1),反之則會獲得一個懲罰(-1)。對于終止動作而言,終止時最終的新精度acc1若大于acc0,會獲得一個比較大的獎勵,反之會獲得一個大懲罰。而對于真實值大于τ的目標,算法選擇直接讓智能體選擇終止動作,獲得獎勵,這樣做可以將訓練時間縮短,只調(diào)整精度較差的目標。考慮原始精度,選擇τ=0.5。經(jīng)過調(diào)參,在式(10)中η=3。

acc1=ConvHAD(bbox′)

(7)

acc0=ConvHAD(bbox)

(8)

Ra(st,st′)=sign(acc1-acc0)

(9)

(10)

在本文中,采用了比較先進的網(wǎng)絡(luò)densenet[20]作為特征提取的方法。圖4所示是深度強化學習網(wǎng)絡(luò)的結(jié)構(gòu)。

(a) 模型的前置網(wǎng)絡(luò)

(b) 深度Q網(wǎng)絡(luò)圖4 深度強化學習網(wǎng)絡(luò)的結(jié)構(gòu)

在深度強化學習網(wǎng)絡(luò)運行前,算法先把每個包圍框裁剪好,將尺度調(diào)整為256×256,圖像不發(fā)生形變,多余的部分用0填充。算法將densenet的特征提取部分取出作為前置網(wǎng)絡(luò),將該網(wǎng)絡(luò)的輸出重置成一個1 920維的向量,與歷史動作的36維向量組成了一個新的1 956維的向量。深度Q網(wǎng)絡(luò)是由兩個全連接層組成,每層后都跟有一個ReLU激活函數(shù)和一個dropout層。最后,輸出層對應于智能體可能選擇的動作,在本文中數(shù)量為9個。

2.2.4 訓 練

?探索-利用算法采用ε-greedy策略來訓練深度Q網(wǎng)絡(luò)。訓練的時候會有ε的概率隨機選擇動作,即探索過程;有1-ε的概率會通過深度Q網(wǎng)絡(luò)選擇一個動作,即利用過程。初始化ε=1,之后隨著訓練次數(shù)增加ε會逐漸減小,直到ε=0.1為止。事實上,隨機選擇動作會導致智能體學習終止動作更加困難,為了使得智能體更好地學習終止動作,當原始精度大于0.8時,算法強制智能體選擇終止動作。這樣可以使得訓練的速度更快一些。由于算法一直都在做探索的過程,所以該方法不會被卡在局部最小值。

?訓練參數(shù)深度Q網(wǎng)絡(luò)的初始化權(quán)重采用的是正態(tài)分布初始化,densenet則采用預訓練權(quán)重。為了訓練,本文采用了Adam優(yōu)化器,學習率設(shè)置為1e-6以避免梯度爆炸。本文在每個模型上訓練50個epoch。

?經(jīng)驗回放上文提到,bellman方程(式(2))從(st,a,r,st′)的遷移中進行學習,這也被稱為經(jīng)驗。深度Q網(wǎng)絡(luò)中的連續(xù)經(jīng)驗是非常相關(guān)且重要的,處理不當可能導致學習速率低下和學習的不穩(wěn)定,這是Q學習中的一個傳統(tǒng)性問題。算法采用了一個回放存儲器使網(wǎng)絡(luò)收斂,以解決這個問題。回放存儲器在每次迭代后會收集經(jīng)驗保存下來,每次訓練時會從保存在回放存儲器中的經(jīng)驗中隨機挑選一些進行訓練。在本文中,最大可保存的經(jīng)驗數(shù)為1 000,每次訓練挑選的數(shù)量為100。

?折扣因子想要在長期的訓練中表現(xiàn)出良好的效果,只考慮當前的獎勵是不夠的,所以算法將未來的獎勵也加入訓練。本文在式(3)中設(shè)置了折扣因子γ=0.90,該數(shù)值可以很好地平衡當前的獎勵和未來的獎勵。

2.3 姿態(tài)檢測器

算法采用了stacked hourglass[1]模型作為人體姿態(tài)檢測器。該模型以Residual[15]模塊為基礎(chǔ),通過級聯(lián)多個Residual模塊和降采樣層來獲取不同尺度的信息,隨著階數(shù)的增加,級聯(lián)的Residual模塊的數(shù)量和特征圖尺度的跨度也會增加,最后將不同尺度的信息進行特征融合以預測人體姿態(tài)。

本文以256×256的圖片作為姿態(tài)檢測器的輸入,模型的階數(shù)為四,在五個不同的尺度上采集圖像特征,并且最后跳級融合。

3 實 驗

實驗采用的數(shù)據(jù)集有兩部分:人體檢測器所使用的數(shù)據(jù)集為VOC0712;單人姿態(tài)檢測器所采用的數(shù)據(jù)集來自MPII。目標精細模型所采用的數(shù)據(jù)集為原始的兩步框架的結(jié)果。

3.1 數(shù)據(jù)集

MPII數(shù)據(jù)集包含了3 844張訓練圖片和1 758張驗證圖片,其中1 758張驗證圖片官網(wǎng)不提供標簽數(shù)據(jù)。在訓練圖片中包含了28 000個左右的訓練樣本可供單人姿態(tài)檢測器所訓練。本次實驗采用了25 000個目標作為訓練樣本,3 000個目標作為驗證樣本。

目標精細模型所采用的數(shù)據(jù)集測試由兩步框架的精度結(jié)果構(gòu)成的。預先將人體檢測器所檢測到的目標一一做精度計算,保存其結(jié)果,做成一個由圖片名、包圍框、原始精度所構(gòu)成的數(shù)據(jù)集。訓練時讀取包圍框以供調(diào)整,讀取原始精度作為真實值。

3.2 實驗結(jié)果

在MPII數(shù)據(jù)集上驗證了本文算法。完整的精度結(jié)果參見表1。結(jié)果的演示圖如圖5所示。結(jié)果顯示,本文算法可以以很高的精度完成多人姿態(tài)檢測任務(wù)。

表1 在MPII數(shù)據(jù)集上的驗證結(jié)果 mAP

圖5 效果演示圖一

本文算法雖然在精度上有改進,但是卻存在計算量巨大的缺點。一張圖片的預測需要經(jīng)過目標檢測器、目標精細模型和姿態(tài)檢測器三個模型。其中,在目標精細模型中,每迭代調(diào)整一次包圍框都需要經(jīng)歷一次網(wǎng)絡(luò)前傳,這導致了計算量的陡增。同時,由于一張圖片可能存在多個目標,每個目標需要多次迭代,所以時間開銷也更大。在GTX1080TI顯卡上進行預測,目標檢測器與姿態(tài)檢測器構(gòu)成的兩步檢測算法單個目標耗時120 ms;加入目標精細模型后的基于強化學習的兩步檢測算法單個目標耗時220 ms。

同時,對于人體信息丟失嚴重的情況,檢測效果不夠理想,如圖6所示。

圖6 效果演示圖二

4 結(jié) 語

本文提出了一種新的多人姿態(tài)檢測算法,在其準確率方面優(yōu)于以往的兩步框架算法。算法加入了目標精細模型,該模型可通過對包圍框的調(diào)整使得信息更加精確,使得兩步框架的精度有了一定的提升,證明該方法是可靠的。但由于它需要不斷對包圍框進行迭代調(diào)整,對單個目標的處理速度偏高,在GTX1080TI顯卡上達到了約160 ms。在未來的工作中,可以期待強化學習在更多的領(lǐng)域參與到其中去。

猜你喜歡
動作智能檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
智能前沿
文苑(2018年23期)2018-12-14 01:06:06
智能前沿
文苑(2018年19期)2018-11-09 01:30:14
智能前沿
文苑(2018年17期)2018-11-09 01:29:26
智能前沿
文苑(2018年21期)2018-11-09 01:22:32
動作描寫要具體
畫動作
動作描寫不可少
主站蜘蛛池模板: 亚洲成人黄色在线| 国产95在线 | 全午夜免费一级毛片| 国产精品福利在线观看无码卡| 亚洲午夜综合网| 免费大黄网站在线观看| 成人无码一区二区三区视频在线观看| 五月天久久婷婷| 国产91透明丝袜美腿在线| 亚洲国产午夜精华无码福利| 国产浮力第一页永久地址| 亚洲永久色| 深夜福利视频一区二区| 亚洲国产欧美自拍| 日韩在线视频网| 精品亚洲欧美中文字幕在线看| av性天堂网| 亚洲欧洲日本在线| 亚洲bt欧美bt精品| 免费可以看的无遮挡av无码| 波多野结衣一级毛片| 亚洲成人免费在线| 国产国模一区二区三区四区| 日韩最新中文字幕| 欧美色图第一页| A级毛片无码久久精品免费| 亚洲天堂日本| 亚洲第一页在线观看| 国产成人精品优优av| 91蝌蚪视频在线观看| 日韩视频免费| 色婷婷视频在线| 亚洲va欧美ⅴa国产va影院| 丁香婷婷久久| 日本黄网在线观看| AV无码无在线观看免费| 少妇精品在线| 精品偷拍一区二区| 日韩a级毛片| 国产精品99r8在线观看| 国产精品亚洲一区二区三区在线观看| 制服丝袜 91视频| 天天综合天天综合| 色婷婷电影网| 尤物精品视频一区二区三区| 国产91丝袜在线观看| 精品久久久久久久久久久| 五月天久久婷婷| 国产无遮挡猛进猛出免费软件| 老熟妇喷水一区二区三区| 国内精品小视频在线| 国产无人区一区二区三区| 亚洲欧美自拍视频| 新SSS无码手机在线观看| 日本成人不卡视频| 欧美一级99在线观看国产| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产成人精品一区二区不卡| 亚洲AⅤ综合在线欧美一区| 国产亚洲美日韩AV中文字幕无码成人| 九一九色国产| 成人欧美日韩| 国产在线八区| 午夜在线不卡| 亚洲va视频| 97视频精品全国在线观看| 欧美α片免费观看| 99视频在线免费观看| 成人国产免费| 日本伊人色综合网| 五月六月伊人狠狠丁香网| 99精品视频九九精品| 亚洲无限乱码一二三四区| 又黄又湿又爽的视频| 国产一区二区三区夜色| 国产麻豆va精品视频| 亚洲动漫h| 国产波多野结衣中文在线播放| 青青草91视频| 毛片在线播放a| 日本欧美午夜| 欧美在线一级片|