孫 冬
(河南工學院 計算機科學與技術學院,河南 新鄉(xiāng) 453003)
3D人體姿態(tài)捕捉與識別[1]的發(fā)展越來越成熟,其在步態(tài)識別、視頻監(jiān)控、人機交互等領域有著重要應用,是當前熱門研究課題。雖然3D人體動作姿態(tài)捕捉的性能得到顯著改善,但準確度依然較低。如何提高3D動作姿態(tài)的性能,不僅要從算法角度提高,還需要從視點選擇方面入手。
當前大部分無標記運動捕捉方法依賴于單目圖像回歸的深度網(wǎng)絡[2],在多視角設定下,運動捕捉的最優(yōu)相機位置的問題尤為關鍵[3]。當前主要解決方案包括最大化圖像分辨率,人體部位自遮擋[4],三角測量誤差最小化[5]。但這些方法的缺點是必須離線操作,且針對預先記錄的動作。
針對靜態(tài)人體動作姿態(tài)的視圖規(guī)劃,很多研究在最小化運動成本的前提下通過相機的移動來最大化信息增益,如文獻[6]利用高斯過程回歸解決輸入輸出均為多元變量的人體姿態(tài)估計問題,采用稀疏表示法降低計算復雜度。文獻[7]將空間離散化為立體網(wǎng)格并計算先前體素。但這些方法的缺點是必須針對嚴格不變的場景。文獻[8]在獲得粗略場景模型的情況下,通過離線優(yōu)化得到最優(yōu)軌跡。但這些方法的缺點是必須針對嚴格不變的場景。
通過無人機(unmanned aerial vehicle,UAV)相機捕捉人類運動的研究中,一個重要的問題是UAV必須將目標人物保持在其視場內(nèi)。為此,文獻[9]實施了一個預定義的隨機決策,相機與目標保持恒定距離,并利用預定義視角來最大化三角測量準確度。但依賴于標記進行準確的2D姿態(tài)估計。文獻[10]UAV采用恒定角度飛行,通過最大限度降低3D人體關節(jié)位置的不確定性來優(yōu)化相機移動軌跡,但該方法的3D姿態(tài)估計必須離線執(zhí)行。總之,當前方法或者針對剛性場景優(yōu)化UAV位置,或者在不優(yōu)化相機放置位置的情況下估計3D人體姿態(tài),其均未嘗試利用對相機的主動控制來提高準確度。
本文提出利用后驗方差估計值,將不確定性來源(行為的不確定性、姿態(tài)估計法的可靠度等)與先驗分布相融合,開發(fā)出主動運動捕捉技術,取移動相機的原始視頻片段作為輸入,針對人體運動捕捉優(yōu)化,計算出用于相機定位的最優(yōu)視點。合成和現(xiàn)實視頻片段的仿真證明了所提方法能夠提高估計的準確度。
本文提出的方法框架如圖1所示,主要包括以下3個步驟:1)估計至當前時刻的3D姿態(tài);2)預測當相機獲得下一張圖像時的人物未來位置和3D姿態(tài),其中包括不確定性估計;3)基于不確定性估計選擇最優(yōu)相機姿態(tài),并將UAV相機移動至該視點。
圖1 本文捕捉人體運動的框架圖
本文考慮兩種相機移動方式:1)相機可不受限制地從一個位置傳送到另一個位置,以此來探索本文方法的理論極限??衫枚嘞鄼C設置來模擬該傳送模式,從而可以在模擬數(shù)據(jù)以及從多個視點獲得的真實圖像數(shù)據(jù)集上評估本文模型。2)通過一個模擬UAV來攜帶相機,其運動必須遵循物理約束。
3D姿態(tài)估計步驟將機載相機過去N幀的視頻作為輸入,并針對每幀t∈(1,…,N)輸出表示為15個3D點Wt∈R15×3的3D人體姿態(tài),以及表示為3D位置和旋轉角度Dt∈R2×3的UAV姿態(tài)。在估計3D人體姿態(tài)時,首先利用文獻[10]提出的方法檢測圖像平面中人體主要關節(jié)的2D位置Mt∈R15×2,然后,將2D預測提升到3D姿態(tài)Lt∈R15×3。但由此得到的每幀輸入容易出現(xiàn)誤差,為此,本文在空間—時間優(yōu)化中將2D和3D預測與時間平滑性和骨骼長度約束相融合。由于UAV在不斷移動,因此可消除個體估計歧義。針對每個目標執(zhí)行一次校準,在該階段中計算出目標骨架的骨骼長度bl,該階段中目標必須保持20 s的靜止站立姿態(tài)。
1.2.1 參數(shù)定義
本文的目標在于提高對變換位置和姿態(tài)目標的全局3D人體姿態(tài)估計準確度。所提方法對最后k幀的時變姿態(tài)估計進行優(yōu)化。設t為最后一個觀察到的圖像幀。捕捉姿態(tài)矩陣W中從姿態(tài)Wt-k到Wt的軌跡。能量函數(shù)表示為
Epose=Eproj(W,M,D)+Elift(W,L)+Esmooth(W)
+Ebone(W,b)
(1)
式中 升維項Elift利用LiftNet[11]的3D姿態(tài)估計L。由于該方法與人體臀部相關,且沒有絕對比例,因此,從絕對3D姿態(tài)Wt中舍去臀部位置,并將比例因子m應用到L,從而在最小二乘意義上匹配骨骼長度bl,由此得到
(2)
式中ωl為相對高度;Whip為踝關節(jié)姿態(tài)。
投影項Eproj表示在最小二乘意義上,檢測到的2D關節(jié)位置和估計出的3D姿態(tài)投影差異,其具體表示為
(3)
式中 ∏為透視投影函數(shù),K為相機內(nèi)部參數(shù)矩陣,wp為Eproj的影響控制權重。
由于本文使用連續(xù)視頻片段,且運動是平滑的,平滑項Esmooth對通過有限差分計算出的速度進行懲罰
(4)
式中ws為Esmooth的權重。
(5)
式中wb為Ebone的權重。
1.2.2 校準模式
針對每個目標僅需執(zhí)行一次校準模式,以得到骨骼長度bl。該模式中,假定目標是靜止的。這種情況類似于從多個靜止相機中觀察到的場景。找到能夠?qū)ο率阶钚』膯蝹€靜止姿態(tài)Wc
Ecalib=Eproj(Wc,M,D)+Esym(Wc)
(6)
該目標函數(shù)中,Eproj作用于所有校準幀,可表示為
(7)
式中wp為影響控制權重。對稱項Esym確保了估計出的骨架左側和右側肢體有著相同長度。
特征值之和捕捉多變量分布的擴散。為利用該不確定性估計,本文對Epose進行擴展,使其以過去姿態(tài)、當前姿態(tài),以及未來的UAV位置選擇為條件,對未來姿態(tài)進行建模。為了確定下一個最優(yōu)UAV姿態(tài),對候選位置進行采樣,并選擇有著最低不確定性的位置,如圖2所示。圖2(a)為3D橢圓體視圖,圖2(b)為2D俯視圖。每個橢圓給出了臀部位置的特征值。此處,上一張圖片從頂部(位置16)拍攝,并通過移動至正交視圖的方式來最小化不確定性。
圖2 候選UAV位置的不確定性估計
(8)
投影項Eproj從圖像平面方向縮小了解空間,但并不約束深度方向,由此創(chuàng)建出橢圓的不確定性,如圖2所示。
3)方差估計。投影項和先驗項使得Epose及其相應的后驗項有著復雜的形式。因此,方差Σp無法以閉合形式表達,且通過對所有可能姿態(tài)的空間進行采樣對其逼近的成本很高。因此,本文利用高斯分布q對p(W|M,D,L,b)進行局部逼近,使得
Σp(W|M,D,L,b)≈Σq
(9)
式中q=N(W|,Σq),和Σq分別為高斯均值和方差矩陣。對于一個高斯函數(shù),可以通過閉合形式計算出q的協(xié)方差,即:負對數(shù)似然的海森矩陣的逆,在高斯假設下,通過Epose的二階梯度能夠很好地逼近Σp。
為了在包含K個候選UAV軌跡的集合中選擇有著最小不確定性的視圖,需進行以下4個步驟:步驟1:對于1≤i≤M,對Epose進行一次優(yōu)化,以預測M個人體姿態(tài)t+i;步驟2:對于每個候選估計c,利用這些預測姿態(tài),為每個1≤i≤M設定t+i和t+i;步驟3:對于每個c,計算Epose的二階梯度形式;步驟4:計算特征值并進行求和,以選擇具有最小不確定性的候選集。
在UAV模擬飛行實驗中,本文在9個候選軌跡之間作決策,軌跡方向有:上、下、左、右、右上、左上、右下、左下和中。為確保UAV與人體之間保持固定距離,通過固定距離值對方向向量進行歸一化。
xpo=xcu+vcuΔt+0.5acuΔt2
(10)
時間t時的當前加速度為輸入加速度ain和上一個時間步的加速度apr的加權均值為
acu=βain+(1-β)apr
(11)
基于要評估的候選軌跡來確定ain的數(shù)值,系數(shù)β通過行搜索得出。在實際操作中,將加速度向量的方向設為候選軌跡的方向。通過預測xpo和實際UAV位置之差的最小二乘最小化,來確定輸入加速度的大小。通過預測UAV的未來位置,可以得到更準確地進行2D姿態(tài)估計,從而提高決策的準確度。
1)仿真環(huán)境:為了提高仿真的實踐意義,本文使用真實運動捕捉數(shù)據(jù),以及建立在游戲引擎上的AirSim UAV模擬器,提供接近現(xiàn)實的自然環(huán)境實驗情形。使用模擬器的另一個好處是可以利用不同參數(shù)重復相同的實驗,并與基準方法和真實運動情況作比較。
2)CMU數(shù)據(jù)集[14]:模擬測試在CMU數(shù)據(jù)集上進行,該數(shù)據(jù)集包括多個復雜動作,如跑、跳舞、等動作。本文在難度遞增的三個CMU運動上進行測試:直線行走(目標2,實驗1);旋轉跳舞(目標5,實驗8);以及繞圈跑(目標38,實驗3)。此外,本文還使用了籃球運球(目標6,實驗13)和坐凳子(目標13,實驗6)的驗證集,進行超參數(shù)網(wǎng)格搜索。
3)MPI—INF—3DHP數(shù)據(jù)集[15]:為檢測所提方法在模擬器之外的性能,實驗在MPI—INF—3DHP數(shù)據(jù)集(3D人體姿態(tài)識別數(shù)據(jù)集)上進行評估,該數(shù)據(jù)集包含繞圈跑、揮舞手臂等動作,提供了14個固定視點,且這些視點彼此之間與目標間均有著不同距離,如圖3所示。
圖3 MPI—INF—3DHP數(shù)據(jù)集與固定視點
4)對比的基準方法:當前基于UAV的姿態(tài)估計方法利用預定義的策略來控制相對于人體的UAV位置。其中UAV以恒定角度跟蹤人體,或者UAV圍繞人體不停飛行。本文選擇隨機決策方法[9]作為一個基線策略,同時比較了恒定角度環(huán)繞飛行方法[10];然后,通過對下一個時間幀的圖像進行所有視點的窮舉嘗試,并將UAV移動至在下一個時間步中最小平均誤差的視點,由于該場景中無法控制相機,移除了在視點外的候選位置相機。
5)超參數(shù):通過網(wǎng)格搜索,將重建的損失項權重設定如下:wp=0.000 1,ws=1,wl=0.1,wb=1。將決策制定的權重設為wp=0.001,ws=1,wl=0.1,wb=1。
實驗首先進行初始化,通過第一幀中的2D關節(jié)位置估計Mt=0,進行反向投射初始化。然后,通過不帶平滑項的優(yōu)化對該初始化進行細化,對所有序列進行120幀的評估,動畫序列以5 Hz播放。此外,對于傳送模式,時間窗口大小設為k=2個過去幀和1個未來幀;對于UAV飛行模擬,時間窗口設為k=6個過去幀和3個未來幀。
2.2.1 傳送模式
為分析潛在視點的不確定性估計是否與實際3D姿態(tài)誤差相吻合,本文進行以下模擬:在人體周圍環(huán)形中采樣18個點,并支持無人機傳送到這些點中的任意一點,實驗中,共計優(yōu)化k=2個過去幀,并預測未來1幀圖像。
第1個實驗,將高斯噪聲添加到真實數(shù)據(jù)集中,模擬2D和3D姿態(tài)估計。該噪聲的平均和標準偏差設為數(shù)據(jù)集上運行的誤差。表1給出了該實驗的結果,包含不同動作姿態(tài)、從不同視點開始、有著不同噪聲情況的結果。
表1 傳送實驗中的3D姿態(tài)準確度
第2個實驗在沒有噪聲的MPI—INF—3DHP數(shù)據(jù)集上進行。圖4給出了通過本文方法和基準方法所生成的軌跡。由圖4可知,與基準方法相比,本文的主動運動規(guī)劃方法的誤差值較低,且最接近這些序列和視點的最優(yōu)可能誤差性能。由于本文方法利用了UAV可傳送到不同的視點集合,因此在實驗中體現(xiàn)出良好的性能。
圖4 傳送模式下幾種方法的飛行軌跡
2.2.2 UAV飛行模擬
為評估更具現(xiàn)實性的案例,對UAV進行主動控制,且約束其只能移至附近位置,實驗利用AirSim環(huán)境模擬UAV飛行。在該仿真中,指定了目標周圍7 m的固定半徑區(qū)域,提供了能夠保持該距離的方向候選,還約束UAV在0.25~3.5 m的高度范圍內(nèi)飛行,以避免墜落地面。
實驗使用模擬器模擬無人機飛行。對上、下、左、右、右上、左上、右下、左下和中心這9個候選方向進行采樣。然后,使用簡化(閉合形式)物理模型預測3個連續(xù)未來位置,對UAV沿某個方向飛行時的位置進行估計。最后,估計這些樣本視點的不確定性,并選擇不確定性最小的視點。
圖5給出了所提方法和不同基線方法的軌跡。由于UAV動力限制,隨機基線方法不能在其相機視點之間增加距離。由圖5可知,所提方法與持續(xù)環(huán)繞方法的性能大致相當。除了無人機開始飛行的前幾幀之外,本文方法與持續(xù)環(huán)繞的軌跡是相同的,僅環(huán)繞方向上有差異。這是由于持續(xù)環(huán)繞方法有利于保留動量。因此,本文方法支持UAV在保持目標在視圖中的前提下,可以對較遠的視點進行采樣。
圖5 UAV飛行模式下幾種方法的飛行軌跡
本文提出一個利用無人機控制和視點最優(yōu)選擇進行不確定性估計,完成人體動作姿態(tài)捕捉。通過最優(yōu)視點選擇,將視點移至最低預期不確定性的位置,從而提高3D人體動作姿態(tài)估計性能。實驗結果表明:在不受物理約束的情況下選擇下一個視點時,所提方法性能優(yōu)于基線方法(例如圍繞對象不停環(huán)繞,或與對象保持恒定角度)。對于模擬UAV飛行,所提方法與不停環(huán)繞方法性能大致相當。
雖然所提方法使不確定性估計可跟蹤,但未來本文還需要作進一步研究。例如,分析一些深度學習方法的參數(shù)不確定性估計,優(yōu)化無人機飛行軌跡等。