晏國良
(安徽文達信息工程學院,安徽 合肥 231201)
動作捕捉識別在計算機研究中是非常有挑戰性的,主要是使用分類識別與圖像處理技術分析視頻數據,以實現人體動作的識別。該方向具有很高的研究價值,吸引了大量學者與科研機構工作者進行研究[1]。動作識別技術適用于多種視頻場景,在視頻檢索、智能人機交互、虛擬現實、智能、運動輔助分析等領域得到了廣泛應用。但當前該技術在舞蹈視頻中的應用還較少,并且由于舞蹈視頻中存在自遮擋以及動作的高度復雜性等難題,使該方面的研究有待進一步開展。在其他領域中動作識別技術的成功應用也為該方面的研究提供了充足的依據。對于目前存在的大量舞蹈視頻資料,往往需要專業人員花費大量時間,利用看、聽等方式分析資料,需要耗費極大的人力物力并且效率極低。在這些資料的分析中應用動作識別技術,實現舞蹈動作識別,不僅可以減輕資料分析人員的工作強度,便于視頻資料檢索,也能提高舞蹈自動編排系統的工作效率,對于挖掘和保護藝術領域文化遺產以及舞蹈教學等方面也有很大意義[2]。除此以外,該方面的研究對于不同環境下的視頻動作識別也有一定借鑒、指導意義,同時能夠豐富動作識別技術方向的研究。基于該背景對舞蹈視頻動作識別技術進行研究。動作識別技術方向是基于舞蹈視頻的動作來研究的,如文獻[3]提出的,通過圖像塊的標記矩陣來計算舞蹈動作,由Camshift算法計算其對應的輪廓目標,并進行跟蹤,步態輪廓識別可以通過計算步態輪廓變化的距離來實現。文獻[4]提出的,通過目標檢測算法提取舞蹈圖像中的人體檢測幀,基于人體姿態估計算法實時估計舞者的人體位置信息,并根據標準動作進行校正。
現綜合這些階段性研究成果對該問題進行研究,提出一種基于動作捕捉的舞蹈視頻動作識別技術。
舞蹈動作捕捉技術主要采集表演對象身體主要關節的長度和運動角度的數據,并利用虛擬顯示等顯示技術將這些數據重新轉換成直觀的圖像。在舞蹈非物質文化遺產保護中,針對不同類型的非物質文化遺產舞蹈或儀式,引入動作捕捉技術,如對舞蹈動作或儀式的準確保存和分析。然而,在實現這些成熟且更復雜的運動捕捉技術的過程中仍然存在一些問題,例如:第一,表演的載體——身體的內在關注是不夠的。它僅限于機械地收集三維空間中運動的基本組成和直線的軌跡方向信息,并在此基礎上實現交互式多媒體設計中的虛擬記錄恢復。它沒有關注舞者在動作過程中形成這些軌跡線的身體狀態的變化;第二,對運動數據的研究不足。作為文化資源收集中動作構成的判別依據,動作數據尚未被應用于深入分析這類舞蹈的內在特征;第三,動畫形象的動畫造型還不足以了解真正的舞者,所以我們應該利用肢體符號和數據的變化,輔以動畫形象的舞蹈動作來增強直觀的理解;第四,在目前的運動捕捉技術中,傳感設備基本上是基于光斑反射技術,而柔性傳感器可以佩戴在舞者身上,以保證最佳的捕捉效果。
舞蹈視頻動作高準確率識別的前提是精準捕捉舞蹈動作,包括被遮擋動作、復雜程度較高的動作等。為此首先配置一種視頻動作捕捉設備,采集舞蹈視頻中的動作[5]。配置后的視頻動作捕捉設備主要由PC主機、Giganet設備、動作捕捉攝像機、攝像機組件、攝像機專用連接線以及標準套件構成。
主機上需要安裝Vicon Polygon與Vicon Nexus數據處理軟件。其中Vicon Polygon軟件能夠重建點云數據,標定點數據名稱,實現纏繞數據的修復以及數據解算;Vicon Nexus軟件可以實現數據采集、傳感器校準等功能;Giganet設備具體包括多個千兆智能路由器;動作捕捉攝像機使用的是30-2000fps傳 輸 幀 數、2000fps捕 捉 速 率、1600*1280px分辨率的專業動作捕捉攝像,由網絡連線、鏡頭、光學圖像過濾器、發光器等構成,能夠實現運動軌跡的記錄;攝像機組件由MX Ultranet HD、MX Link以及MXNET等組件構成,呈現分布式架構;攝像機專用連接線用于各組件之間的連接;標準套件具體包括多個T形校正架,主要用于校準設備[6]。
在舞蹈視頻的舞蹈動作捕捉中,制訂的數字化元數據規范表能夠對采集的動作信息進行記錄,具體如表1所示。

表1 數字化元數據規范表
捕捉舞蹈動作數據的具體流程如圖1所示。

圖1 捕捉舞蹈動作數據的具體流程
在前期準備中,需要在視頻播放處對設備進行架設。在骨骼設定中共標記27個發光點,具體如表2所示[7]。

表2 骨骼設定中標記的發光點
在實時采集中,對于采集的視頻可以進行多次動作采集,通過Vicon Polygon軟件對人物發光點進行記錄,并通過Vicon Nexus軟件實施后期的數據分析與處理[8]。
在數據輸出中,通過Vicon Nexus軟件對關節物理量進行計算,并導出人物動作時空數據。至此實現舞蹈識別中的動作捕捉。
計算機視覺系統主要由舞蹈視頻圖像運動識別并進行的,且考慮到在識別之前計算機計算的問題,需要提前對其進行相應的預處理,以便提取出正確的圖像信息,為計算機減少相應的計算問題。
對于捕捉的舞蹈動作數據,對其實施預處理操作,包括背景減除、中值濾波操作[9]。
背景減除可以提取舞蹈視頻中的前景,從而分離人體動作區域和背景區域,其主要采用的方法是高斯混合模型,具體步驟如下:
(1)模型構建。將t時刻某像素點的實際值設為Xt,通過下式構建該點的背景高斯分布模型:

式(1)中,K是指高斯分布的數量;ωi,t指的是第i個高斯分布在t時刻的權重;η(·)指的是ωi,t的概率密度函數;γi,t指的是ωi,t的均值;σi,t指的是ωi,t的方差[10]。
ωi,t的概率密度函數計算公式具體如下:

(2)模型更新。假設新輸入的圖像中存在Xt值的像素點,利用下式對其是否與模型相匹配進行判斷:

當該點與模型相匹配,利用該點對模型中的權值、方差以及均值進行更新,具體如下式所示:

式(4)中,α指的是高斯混合學習率,其取值范圍為0≤α≤1;β指的是參數更新因子,其計算公式具體如下:

(3)前景的檢測。完成模型的更新后,高斯分布進行排序要按大小順序來進行的,選擇前A個較大的高斯分布,通過下式對前景進行檢測:

式(6)中,ωk指的是第k個高斯分布;T是指前景閾值。
當新像素值相鄰高斯分布符合上式時,該像素為前景像素,否則即為背景像素[11]。
(4)減除背景。將背景直接減除后,還需要實施去噪處理,通過中值濾波法實施去噪處理[12]。
去噪處理的具體公式如下:

式(7)中,g(x,y)=指的是輸出像素的對應灰度值;f(x-i,y-i)指的是輸入像素對應灰度值[13],其中,i,j∈B,B指的是模板窗口。
就此實現捕捉圖像的預處理。
普通人的日常動作和舞者的舞蹈動作是有很大區別的。舞者的許多動作都需要用雙手和雙腿來合作來完成。在識別背景的選擇目標區域時,舞者運動的全身信息是必須掌握到的,以便更準確的識別其舞蹈動作。舞舞者的動態識別可分為靜態特征和動態特征。靜態特征的主要表現為舞者人體目標的大小、服裝顏色、身體形象和動作等方面。舞者動作的整體信息就是它來傳達出來的。例如,當前的基本形態是通過舞者的輪廓特征得到的;動態特征主要表現為舞者的運動速度、運動方向和之后的軌跡上,可以反映舞者在舞蹈上的運動軌跡。
在圖像提取的前景中,是3D配準圖像算法:尺度不變特征變換的算法匹配(3D Scale Invariant Feature Transform,3D-SIFT)提取舞蹈動作的人體姿態特征[14]。人體姿態特征提取的具體流程如下:
(1)選取關鍵點。首先對圖像前景的3D尺度空間進行構建,選擇其中的局部極值點,將其作為人體姿態特征提取的關鍵點。然后檢查各個關鍵點,將不具備穩定邊緣響應的點以及較低對比度的點去掉。
(2)定向分配,也就是對各關鍵點的梯度與方向進行確定[15]。
具體步驟如下:
步驟1:定義各像素的2D方向與梯度,具體如下式所示:

式(8)和(9)中,θ(x,y)指的是各像素的2D梯度;Ly指的是圖像內像素時空梯度的2D縱坐標;Lx指的是圖像內像素時空梯度的2D橫坐標;D(x,y)指的是各像素的2D方向[16]。
步驟2:利用有限差分對Lx、Ly進行計算,具體公式如下:

式(10)中,t'指的是有限差分閾值[17]。
在3D-SIFT特征提取中,還需要對圖像內像素時空梯度的3D豎坐標Lz進行計算,計算公式具體如下:

步驟3:通過圖像內像素時空梯度的三個坐標對各像素的3D方向與梯度進行計算。
步驟4:根據定向分配結果生成3D SIFT人體姿態特征描述符合,實現人體姿態特征提取。
在舞蹈視頻動作圖像數字計算和識別之前,灰度處理變換是必須先進行的、圖像的閾值、圖像的分割等預處理方面,計算機的運算量相對應得減少了,并且提取出了舞蹈視頻動作識別的有效信息。
將灰色預測模型作為模板,通過計算測試樣本與模板之間的相似度實現舞蹈視頻動作識別[18]。在識別中,首先將各測試樣本即提取的人體特征姿態映射至相應的簇中,生成索引序列。在映射中需要對人體特征姿態對應的軀體部分進行定義。然后去除索引序列內的冗余,將其與灰色預測模型相匹配。計算二者相似度,具體公式如下:

式(12)中,s(x,y)指的是索引序列與灰色預測模型之間的相似度;h(x,y)指的是二者之間五個部位中存在的相似姿勢個數。
根據相似度計算結果實現舞蹈視頻動作識別。
對于設計的基于動作捕捉的舞蹈視頻動作識別技術,通過舞蹈視頻數據集對其性能進行檢測。
實驗中使用的數據集包括FolkDance舞蹈數據集與北塞浦路斯舞蹈數據集。
其中FolkDance舞蹈數據集的技術數據具體如下:
幀速率:20fps;
各幀大小:560*480。
該數據集主要來自一個德國民間舞蹈視頻,其示例幀具體如圖2所示。

圖2 FolkDance舞蹈數據集示例幀
北塞浦路斯舞蹈數據集的技術數據具體如下:
幀速率:25fps;
各幀大小:560*420。
該數據集主要來自一個北塞浦路斯的民間舞蹈視頻,其示例幀具體如圖3所示。

圖3 北塞浦路斯舞蹈數據集示例幀
利用以上實驗數據集對設計方法的動作識別性能進行測試。
測試中的實驗環境具體如下:CPU:Core(TM)i5-4460;開發環境:OpenCV 2.4.8;操作系統:64位Ubuntu。
分別對兩個舞蹈視頻數據集中的5個重復率較高的單一動作進行識別,測試設計方法各個單一動作的識別準確率。
在FolkDance舞蹈數據集中,識別的五個重復率較高的單一動作分別為雙人拉手轉圈、雙手45°高舉、大畫圓、小畫圓、深彎曲。其中雙人拉手轉圈的識別結果具體如圖4所示。

圖4 雙人拉手轉圈的識別結果
在北塞浦路斯舞蹈數據集中,識別的五個重復率較高的單一動作分別為拍手、劈腿跳、小踢腿、雙手45°高舉、深彎曲。其中小踢腿的識別結果具體如圖5所示。

圖5 小踢腿的識別結果
綜合所有識別結果對兩個舞蹈視頻數據集單一動作的識別準確率進行計算。
具體計算結果如表3所示。

表3 識別準確率計算結果
根據表3識別準確率計算結果,設計方法對于較為簡單的動作可以達到極高識別率,對于較為復雜的動作也可以達到很大的識別率,整體舞蹈動作識別準確率較高。
在舞蹈視頻動作識別技術的研究中,應用了動作捕捉技術,設計了一種視頻動作捕捉系統,實現精準的舞蹈動作捕捉,并對捕捉數據進行處理,通過3D-SIFT特征提取法與灰色預測模型相似度計算實現了較為準確的舞蹈動作識別,取得了一定研究成果。日后將對該研究成果進行進一步完善與拓展,爭取獲得更準確的識別率,使研究成果更嚴謹。