謝立靖,任勝兵
(1.湖南商務(wù)職業(yè)技術(shù)學院 信息學院,湖南 長沙 410205;2.中南大學 計算機學院,湖南 長沙 410083)
隨著深度相機的發(fā)展,可以獲取很多有代表性的運動捕捉結(jié)果,但是普通單目視頻序列中的三維人體位姿還原依然是一個極具挑戰(zhàn)的問題[1]。
針對該問題的研究,已經(jīng)有一些研究成果。如OuYang等[2]提出的單目三維位姿估計方法,是一種幀對幀的回歸跟蹤,但由于場景中其它人或物體的干擾和遮擋,該方法容易失效。為此,出現(xiàn)一些致力于通過探測進行位姿跟蹤估計的方法,即探測每幀中或多或少的獨立人體位姿,然后將各幀中的位姿聯(lián)系起來[3,4],這類方法在一定程度上提高獨立幀計算的魯棒性。Zhou等[5]研究將二維HOG特征的核基回歸到三維位姿的方法。通過探究運動的后驗信息來消除選擇連續(xù)幀中的錯誤位姿,能夠?qū)⑦@種歧義限定到一定范圍內(nèi)。然而,當這種錯誤在幾幀中連續(xù)發(fā)生時,僅僅進行后期時序處理是不夠的。
為解決遮擋和鏡像對后期處理的影響,本文直接從輸入序列中提取運動信息,提出一種位姿估計回歸方法,可從位于中心的時空體中某一序列的給定幀中直接預(yù)測出三維位姿。本文找出連續(xù)幀中人群周圍的邊界盒。利用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)方法進行運動補償,將時空體中的連續(xù)邊界盒關(guān)聯(lián)起來,使目標始終保持在中央位置,提取改進時空特征,最后利用不同的回歸法對位姿進行預(yù)測估計。主要工作包括:①結(jié)合外觀信息和運動信息,提取多分辨率的時空特征;②利用CNN方法對人體進行運動補償,提高位姿估計準確性。
本文以骨架的形式呈現(xiàn)三維人體位姿。該形式能夠更好地適應(yīng)回歸,且不需要知道人體目標的具體比例,同時可以使用時間信息解決方向問題。
本文方法包含以下幾個步驟:
(1)找出連續(xù)幀中人周圍的邊界框;
(2)進行運動補償,使目標始終位于中央位置,形成修正時空體;
(3)從修正時空體中提取三維梯度方向直方圖(histograms of oriented gradients,HOG)特征,作為修正時空特征(modified spatio-temporal feature,MSTF)。通過回歸估計中央幀的人體三維位姿。
下面對主要步驟進行具體描述。
本文提取的特征矢量Z以三維HOG描述符為基礎(chǔ),該描述符同時將外觀信息和運動信息進行編碼。首先將數(shù)據(jù)集細分為同等大小的多個部分;然后計算每部分的三維時空梯度直方圖[6]。為提高特征描述能力,本文使用多尺度方法,即使用不同的尺寸計算三維HOG特征。本文在空間維度中使用3種等級(2×2、4×4和8×8);在時間維度上每個時間單元設(shè)定為較小值(對于每秒50幀的視頻設(shè)置為4),以此來捕捉特征細節(jié)。通過將多種分辨率的描述符與單一矢量的描述符聯(lián)系起來,獲得最終的特征矢量Z。
三維HOG描述符表示人體位姿時,要求時間序列上各幀中人體部分位置相一致。這表明,在用于構(gòu)建時空體的邊界盒幀序列中,人應(yīng)該始終處于中央位置。本文使用可變形部件模型(deformable part model,DPM)[7]檢測器來獲得這些邊界盒,但事實上,這些邊界盒可能并沒有與人體很好地聯(lián)合起來。因此,本文在生成時空體之前,對這些序列幀進行運動補償。
運動補償以人體目標為中心,訓(xùn)練回歸器(本文選擇CNN[8]作為回歸器)來估計人在各序列幀中向中心位置的轉(zhuǎn)換關(guān)系,將這些轉(zhuǎn)換關(guān)系應(yīng)用到各幀中,使目標始終處于中央位置。
假定m是從DPM返回的邊界盒中提取的圖像塊,則所需的理想回歸器φ(·)能夠返回人從中心m:φ(m)=(δu,δv)移動的水平距離δu和豎直距離δv。為了更加有效地實現(xiàn)這一目的,本文引入兩個不同的回歸器φcoarse(·)和φfine(·)。訓(xùn)練第一個回歸器處理大的移動,訓(xùn)練第二個回歸器完成精細處理,兩種回歸器迭代使用。每次迭代后,用計算好的距離對圖像進行轉(zhuǎn)移,并進行下一次估計移動。通常這個過程需要4次迭代:兩次φcoarse(·)和兩次φfine(·)。
這兩種CNN回歸器具有相同的構(gòu)架,均包含完全連接層、卷積層和池化層。池化層用于將回歸器轉(zhuǎn)變?yōu)樾〉膱D形轉(zhuǎn)移,盡管其降低了需要的參數(shù)數(shù)量,但同時會降低定位性能。由于本文的目標是精準定位,因此,在第一個卷積層中并未進行池化處理,只在隨后的層中使用。這有助于進行精準定位,同時保留較少的參數(shù)數(shù)量,以防止過度擬合。
進行CNN補償時,需要對邊界盒中的人進行初始估計,其由DPM實現(xiàn)。然而,將DPM探測器應(yīng)用到序列中的每個人非常耗時;因此,本文只在第一幀中使用DPM,進行精確定位,得到的邊界盒在第二幀中作為初始估計。之后,依次類推。
如圖1所示,給出“打招呼”行為有運動補償和沒有運動補償時的梯度熱圖。沒有運動補償時,梯度會分散到整個可能的區(qū)域中,降低特征的穩(wěn)定性。進行運動補償后,人體部分與幀中三維HOG單元相協(xié)調(diào),所提取的時空特征處在中央位置,更加穩(wěn)定。
圖1 進行運動補償前后梯度熱圖
本文使用的三維位姿估計模型為Z→f(Z)≈Y,其中Z是提取的三維HOG修正時空特征,Y是中央幀的三維位姿。本文分別使用最小絕對收縮與選擇算子(least absolute shrinkage and selection operator,LASSO)方法[9]、核維納濾波(kernel Wiener filter,KWF)方法[10]和深度學習網(wǎng)絡(luò)(deep learning network,DLN)方法來進行回歸函數(shù)f研究。
LASSO方法為位姿矢量的每個維度均訓(xùn)練一個模型。為找到從時空特征到三維位姿的影射,其解決如式(1)所示的最小二次規(guī)劃問題
(1)
其中,(Zj,Yj)是訓(xùn)練對,ΦZ是核基指數(shù)的傅里葉近似,該問題可以通過式(2)進行求解
W=(ΦZ(Z)TΦZ(Z)+I)-1ΦZ(Z)TY
(2)
KWF方法為有結(jié)構(gòu)的回歸器,其處理三維位姿空間之間的相互關(guān)系,分別使用核基影射ΦZ和ΦY,將輸入和輸出矢量轉(zhuǎn)換至高維度Hilbert空間[11],根據(jù)高維度輸入空間和輸出空間之間的依存關(guān)系建模線性函數(shù)。用標準核嶺回歸來計算相應(yīng)矩陣W,如式(3)所示
(3)
為了生成最終預(yù)測Y,進行式(4)處理,將高維度Hilbert空間中的預(yù)測與輸出影射間的差異最小化
(4)
DLN方法以多層構(gòu)架為依托,估計三維位姿的影射。本文在前兩層中使用包含線性單位激活函數(shù)的3個完全連接層,在最后一層使用一個線性激活函數(shù)。前兩層中每一層包含3000個神經(jīng)元,最后一層包含與17個三維節(jié)點位置相對應(yīng)的51個輸出。本文通過交叉驗證方法選擇網(wǎng)絡(luò)中的最佳超參數(shù)。本文將通過最小化預(yù)測與真實三維位姿的差值,獲取由Θ參數(shù)化的影射函數(shù)f,如式(5)所示
(5)
本文對Human3.6m、HumanEvaI/II和KTH多視角足球II數(shù)據(jù)集進行實驗。Human3.6m含有360萬張圖像及復(fù)雜移動場景中相應(yīng)的三維位姿,包括4個不同視角下捕捉到的11個目標的15個不同行為;同時,人體形態(tài)、衣著、位姿和視角在訓(xùn)練/測試集中均有較大差別。Human-EvaI/II數(shù)據(jù)集提供的是合成圖像和移動捕捉數(shù)據(jù),為三維人體位姿估計的評價基準。KTH多視角足球II數(shù)據(jù)集是運動員移動時的抓拍圖像,用于評價本文方法在野外環(huán)境時的性能。為了說明本文方法的有效性,與未進行運動補償或其它三維位姿估計的代表算法進行比較。
目前的位姿估計方法普遍使用未進行運動補償?shù)亩SHOG特征,并使用LASSO方法、KWF方法等方法進行回歸,本文實驗中稱其為LASSO方法和KWF方法。本文利用運動補償?shù)娜SHOG的修正時空特征MSTF,稱作為MSTF+LASSO、MSTF+KWF或MSTV+DLN,以上3種方法使用的回歸器分別為LASSO、KWF和DLN。為了評價位姿估計的準確性,本實驗以預(yù)測位姿與真實位姿的平均歐幾里得距離(以毫米為單位)為誤差評價標準。
本實驗對15個不同行為訓(xùn)練回歸器,使用了5個目標(目標1、5、6、7、8)進行訓(xùn)練,兩個目標(目標9、11)進行測試;訓(xùn)練測試時使用所有的攝像機視角。三維人體位姿均用17個節(jié)點的骨架表示,其三維定位與捕捉圖像的攝像機坐標系統(tǒng)的根節(jié)點有關(guān)。
表1給出不同方法對Human3.6m數(shù)據(jù)集15種行為的位姿估計誤差值。本文通過提取MSTF特征,對于LASSO方法,平均誤差由181.30降低到150.26,降低了17%;對于KWF方法,平均誤差由164.17降低到127.08,降低22%??梢钥闯鯩STF特征可以顯著提高位姿檢測的準確性。比較結(jié)合MSTF特征的3種回歸方法,MSTF+KWF和MSTF+DLN的誤差值明顯低于MSTF+LASSO方法。對于“買東西”、“坐”、“坐下”3種行為,MSTF+KWF方法的結(jié)果稍微好于MSTF+DLN方法;但對于其它行為,MSTF+DLN有更好的位姿估計準確性能,并且平均誤差最低。
表1 不同方法的位姿估計誤差結(jié)果
下面更加直觀的對各種方法進行比較。圖2給出傳統(tǒng)KWF方法和本文MSTF+DLN方法的結(jié)果,第1~3行分別對應(yīng)“買東西”、“討論”、“吃飯”3個行為??梢钥闯鰝鹘y(tǒng)的KWF方法的位姿估計結(jié)果中存在自我遮擋和方向歧義的情況,而本文MSTF+DLN方法的位姿還原結(jié)果的效果最好。圖3給出結(jié)合MSTF特征的3種回歸器,對“散步”行為的位姿估計結(jié)果,可以看出MSTF+KWF和MSTF+DLN方法的位姿估計結(jié)果較MSTF+LASSO方法更加準確,而MSTF+DLN與真實位姿更加接近。
圖2 不同方法的位姿估計結(jié)果比較
圖3 提取MSTF特征時不同方法的位姿估計結(jié)果比較
為了說明運動補償?shù)闹匾?,下面對有無運動補償?shù)慕Y(jié)果進行比較。未進行CNN運動補償是直接提取時空特征,稱作STF(spatio-temporal feature)。選擇兩種有代表性的行為進行比較,“遛狗”行為涉及大量移動情形,“打招呼”行為中的主體并沒有太多走動。結(jié)果見表2,可以看出,即使未進行運動補償,提取的STF特征結(jié)果優(yōu)于傳統(tǒng)的KWF方法;與STF相比,運動補償MSTF進一步提高了位姿估計性能。
表2 有無運動補償?shù)恼`差結(jié)果
為說明臨時窗口大小對位姿估計的影響,比較不同窗口大小情況下的結(jié)果。選擇“行走”和“吃”兩種行為進行比較,臨時窗口大小從12幀調(diào)整到48幀,回歸方法為MSTF+DLN,結(jié)果見表3。可以看出窗口大小在24幀~48幀的范圍時,獲得最佳的結(jié)果,即對于每秒50幀的情況,對應(yīng)為0.5 s~1 s。臨時窗口較小時,提取特征中的信息數(shù)量不足以進行精準估計;窗口太大時會造成過度擬合問題,因為計算輸入數(shù)據(jù)中的差別顯得更加困難。本文對于Human3.6m數(shù)據(jù)集的實驗,窗口大小均使用24幀,其不僅可以進行準確的位姿還原,還可以進行有效的特征提取。
表3 不同臨時窗口大小的誤差結(jié)果
由于HumanEva的訓(xùn)練集太小,不能用于訓(xùn)練深度學習網(wǎng)絡(luò),因此本實驗主要使用MSTF+KWF方法與其它傳統(tǒng)方法進行比較。本實驗與Human3.6m數(shù)據(jù)集實驗一樣,使用預(yù)測位姿節(jié)點位置與真實位姿節(jié)點位置歐幾里得的平均距離差值作為評價標準。
對于HumanEvaI數(shù)據(jù)集,本實驗與文獻[12]的二維位姿探測器、文獻[13]的三維圖像架構(gòu)、文獻[14]中依賴自上而下的動態(tài)優(yōu)化方法進行比較。表4顯示了不同方法對于“行走”和“拳擊”行為的位姿誤差結(jié)果。對目標1、2、3的訓(xùn)練序列選了不同的回歸器,本文方法只從第一個攝像機視角計算時空特征。由表4可以看出,本文方法對于“行走”的循環(huán)運動和“拳擊”的非循環(huán)運動中的位姿估計性能在此基準上均優(yōu)于其它方法。
對于HumanEvaII數(shù)據(jù)集,本實驗與文獻[3]檢測跟蹤的方法進行比較。不同方法對于“combo”序列的位姿誤差結(jié)果見表5。HumanEvaII數(shù)據(jù)集只有一個測試集,沒有訓(xùn)練集,因此,本實驗利用HumanEvaI數(shù)據(jù)集中不同攝像機視角拍攝的數(shù)據(jù)訓(xùn)練回歸器,對HumanEvaII數(shù)據(jù)集進行測試,以驗證本文方法對其它攝像機視角的泛化能力。本實驗分別使用HumanEvaI數(shù)據(jù)集的目標1、2、3數(shù)據(jù)進行訓(xùn)練,對HumanEvaII數(shù)據(jù)集前350幀中目標2的位姿進行估計,估計誤差結(jié)果如表5所示??梢钥闯霰疚姆椒ǖ男阅茏罴?,說明本文方法具有較好的泛化能力。
表4 不同方法在HumanEvaI數(shù)據(jù)集上位姿估計誤差結(jié)果
表5 不同方法在“combo”序列的位姿估計誤差結(jié)果
本實驗對KTH多視角足球數(shù)據(jù)集的運動員2序列進行位姿估計;同HumanEva數(shù)據(jù)集一樣,主要利用MSTF+KWF方法。該序列的前半部分用作訓(xùn)練,后半部分用作測試。本實驗以正確估計部分得分為位姿估計準確性的評價標準,并與文獻[3]的方法進行比較,結(jié)果如表6所示??梢钥闯?,即使本文方法使用單目攝像機,而文獻[3]使用雙攝像機,本文方法的位姿估計結(jié)果更加準確。這是因為,文獻[3]的方法依賴于二維人體部分探測,當外觀信息較模糊時,位姿估計準確性受到較大影響。而本文方法從修改時空體中實時綜合提取外觀信息和運動信息,三維位姿估計的精準性更好。
表6 KTH多視角足球集位姿估計結(jié)果
本文在位姿估計過程中,綜合考慮外觀信息和運動信息,并進行CNN運動補償,建立修正時空體。該方法比利用后驗信息連接單幀的位姿估計性能有很大提升。修正時空體在修改時空體中提取外觀信息和運動信息,能夠降低因自我遮擋或鏡像的歧義。對于不同數(shù)據(jù)集,實驗結(jié)果表明,本文方法的三維人體位姿估計準確性較其它方法有較大提高。即本文所提方法較為通用,可以應(yīng)用于不同連貫運動中。