賀鳳,張洪博,杜吉祥,汪冠鴻
(1. 華僑大學 計算機科學與技術(shù)學院,福建 廈門 361021; 2. 華僑大學 福建省大數(shù)據(jù)智能與安全重點實驗室,福建 廈門 361021; 3. 華僑大學 廈門市計算機視覺與模式識別重點實驗室,福建 廈門 361021)
在現(xiàn)代人日益注重健康、推崇體育運動的大背景下,體育視頻的內(nèi)容分析與識別成為研究熱點.然而,現(xiàn)有的體育視頻研究多集中于體育運動的語義分析及識別方面,在體育運動的分類細項研究中,除足球、籃球、高爾夫球、羽毛球等球類運動外,其他運動項目少有涉及[1-8].體育視頻自動描述是對體育視頻中人體動作的自動描述,是計算機視覺研究中的難點和熱點之一.通過計算機視覺和模式識別等技術(shù)手段對視頻中的人體運動進行分析,可以對視頻序列中存在的特定人體運動進行智能化表示和標記.自由體操是競技體操的典型代表,其自由度最大,動作變化較多,需在規(guī)定時間內(nèi)按照規(guī)則表演多個動作組合的成套動作[9].自由體操視頻的自動描述研究具有極強的現(xiàn)實意義.對非專業(yè)人士而言,自動描述不僅能夠提升觀賽感受,也能增進觀眾對自由體操運動的了解;對專業(yè)人士而言,可以通過自動描述進行動作數(shù)據(jù)分析,挖掘自由體操技術(shù)創(chuàng)新發(fā)展的規(guī)律性特征,從而輔助訓練.
為了實現(xiàn)對自由體操動作的自動描述,可使用卷積神經(jīng)網(wǎng)絡對自由體操視頻特征進行分析[10-19];基于分析得出的特征,通過長短時記憶(LSTM)網(wǎng)絡[20-22]實現(xiàn)特征到自然語言的映射,自動生成自由體操分解動作的描述.在數(shù)據(jù)標注的基礎上,自由體操視頻的自動描述問題可看成是視頻字幕的自動生成問題.視頻字幕自動生成的任務是自動生成視頻內(nèi)容的自然語言描述.S2VT[23]是第一個序列到序列的視頻描述模型,可實現(xiàn)視頻幀序列的輸入及文本序列的輸出,且輸入的視頻幀和輸出的文本長度可變.然而,對自由體操視頻而言,分解動作的關(guān)鍵在于翻轉(zhuǎn)方向、旋轉(zhuǎn)度數(shù)、身體姿態(tài),故將包含這些關(guān)鍵動作的視頻幀定義為關(guān)鍵幀,通過提取視頻中判別力較高的關(guān)鍵幀,提高視頻自動描述的精度.本文基于S2VT模型,提出一種長短時記憶網(wǎng)絡的自由體操視頻自動描述方法.
自由體操視頻自動描述的基本框架,如圖1所示.
圖1 自由體操視頻自動描述的基本框架Fig.1 Basic framework of automatic description of floor exercise video
圖2 VGG16網(wǎng)絡結(jié)構(gòu)圖Fig.2 VGG16 network structure diagram
自由體操視頻自動描述網(wǎng)絡的輸入數(shù)據(jù)包括視頻序列和文本序列.通過卷積神經(jīng)網(wǎng)絡提取視頻特征,并利用自然語言文本處理方式提取文本特征.
1.1.1 視頻特征提取 卷積神經(jīng)網(wǎng)絡對幾何變換、形變、光照具有一定程度的不變性,可用較小的計算代價掃描整幅圖像[24].因此,卷積神經(jīng)網(wǎng)絡被廣泛地應用于圖像特征提取.文中使用VGG16[25]卷積神經(jīng)網(wǎng)絡提取自由體操視頻的特征.VGG16網(wǎng)絡結(jié)構(gòu)圖,如圖2所示.圖2中:ReLU為線性整流函數(shù);softmax為激勵函數(shù).
與state-of-the-art網(wǎng)絡相比,VGG16的錯誤率較低,拓展性較強,遷移到其他圖片數(shù)據(jù)上的泛化性非常好.VGG16的結(jié)構(gòu)簡潔,整個網(wǎng)絡都使用相同大小的卷積核尺寸(3 px×3 px)和最大池化尺寸(2 px×2 px).VGG16模型的輸入為227 px×227 px固定尺寸的RGB圖片,輸出為視頻特征序列X=(x1,…,xn).
1.1.2 描述文本處理 通過one-hot向量編碼的方式將自由體操視頻的描述符轉(zhuǎn)化為特征,統(tǒng)計自由體操標注文本中的詞語,構(gòu)建字典.因為在自由體操分解動作描述中使用的字詞種類數(shù)量不一,所以在預處理時未對字詞進行篩選.
one-hot向量編碼的輸入是一句話,輸出是一個特征.one-hot向量編碼的計算方法:先計算自由體操數(shù)據(jù)集中所有描述的單詞總數(shù)N;然后,將每個單詞表示為一個長1×N的向量,該向量中只有 0 和 1 兩種取值,且該向量中只有一個值為 1,其所在位置即當下單詞在詞表中的位置,其余值為0.
通過長短時記憶網(wǎng)絡實現(xiàn)視頻特征到文本特征的學習.循環(huán)神經(jīng)網(wǎng)絡(RNN)在反向傳播過程中易產(chǎn)生梯度消失現(xiàn)象,導致網(wǎng)絡參數(shù)難以持續(xù)優(yōu)化[26],而LSTM網(wǎng)絡作為一種特殊的循環(huán)神經(jīng)網(wǎng)絡,可以有效地解決該問題.
LSTM在每個序列索引位置t時刻除了向前傳播與RNN相同的隱藏狀態(tài)ht外,還多了另一個隱藏狀態(tài),即細胞狀態(tài)Ct.此外,LSTM網(wǎng)絡通過增加門控單元控制即時信息對歷史信息的影響程度,使神經(jīng)網(wǎng)絡模型能夠較長時間地保存并傳遞信息.
因此,LSTM單元可以看作一個嘗試將信息存儲較久的記憶單元,記憶單元被遺忘門(forget gate)、輸入門(input gate)和輸出門(output gate)保護,并以此為基礎,實現(xiàn)有效信息的更新和利用.
LSTM單元的更新方式為
ft=σ(Wf1ht-1+Wf2Xt+bf)
,
(1)
it=σ(Wi1ht-1+Wi2Xt+bi)
,
(2)
at=tanh(Wa1ht-1+Wa2Xt+ba)
,
(3)
Ct=ft⊙Ct-1+it⊙at
,
(4)
ot=σ(Wo1ht-1+Wo2Xt+bo)
,
(5)
ht=ot⊙tanhCt
.
(6)
式(1)~(6)中:ft,it,at,Ct,ot,ht分別為t時刻各狀態(tài)的輸出值;σ為Sigmoid激活函數(shù);Wf1,Wi1,Wa1,Wo1,Wf2,Wi2,Wa2,Wo2均為權(quán)重向量;ht-1,Ct-1分別為t-1時刻的隱藏狀態(tài)和細胞狀態(tài);Xt為t時刻輸入的視頻序列;bf,bi,ba,bo均為偏移量;tanh為雙曲正切激活函數(shù);⊙為向量元素的Hadamard積.
長短時記憶網(wǎng)絡結(jié)構(gòu),如圖3所示.圖3中:hN,ht+1,hn分別為不同時刻的隱藏狀態(tài);XN,Xt-1,Xt,Xt+1,Xn分別為不同時刻的視頻輸入序列.
圖3 長短時記憶網(wǎng)絡結(jié)構(gòu)Fig.3 Long short-term memory network structure
將固定維度的自由體操分解動作特征向量X=(x1,…,xn)編碼成特征序列,由此得到對應隱藏層的輸出H=(h1,…,hn).已知LSTM網(wǎng)絡的輸出取決于前一個輸入序列,將特征向量按順序輸入LSTM網(wǎng)絡,可得到一個序列向量的編碼映射輸出.
當最后一幀圖片的特征向量輸入后,LSTM網(wǎng)絡的輸出即為幀序列編碼.解碼階段的LSTM送入起始符,促使其將收到的隱藏狀態(tài)解碼成單詞序列,輸出的單詞序列Y=(y1,…,ym),概率為p(y1,…,ym|x1,…,xn),即
.
(7)
解碼階段進行訓練時,在已知幀序列的隱藏狀態(tài)及之前輸出單詞的條件下,求預測句子的對數(shù)似然性.訓練目標是使待估參數(shù)值θ達到最大值θ*,即
.
(8)
采用隨機梯度下降算法對整個訓練數(shù)據(jù)集進行優(yōu)化,使LSTM網(wǎng)絡學習更合適的隱藏狀態(tài).第二層LSTM網(wǎng)絡的輸出z在Y中尋找最大可能性的目標單詞y,其概率p(y|zt)為
.
(9)
式(9)中:zt為t時刻的輸出;Wy,Wy′均為權(quán)重向量.
視頻描述的編解碼結(jié)構(gòu)圖,如圖4所示.
圖4 視頻描述的編解碼結(jié)構(gòu)圖Fig.4 Encoding and decoding structure diagram of video description
人腦對不同部分的注意力是不同的.注意力機制是人類視覺特有的大腦信號處理機制.人類視覺通過快速掃描全局圖像,獲得需要重點關(guān)注的目標區(qū)域,即注意力焦點,并對這一區(qū)域投入更多的注意力資源,以獲取更多需要關(guān)注目標的細節(jié)信息,抑制其他無用信息.
對自由體操分解動作自動描述具有決定性作用的是關(guān)鍵幀,故關(guān)鍵幀的權(quán)重應該更大.在網(wǎng)絡結(jié)構(gòu)中引入注意力機制[27],可允許解碼器對自由體操視頻的每個時間特征向量進行加權(quán).采用時間特征向量的動態(tài)加權(quán)和公式為
.
(10)
.
(11)
式(11)中:score(xi,hj)為第i個隱藏層的輸出hj在視頻特征向量xi中所占的分值;score(xi,hi)為第i個隱藏層的輸出hi在視頻特征向量xi中所占的分值,分值越大,說明這個時刻的輸入在該視頻中的注意力越大.
score(xi,hi)的計算公式為
score(xi,hi)=wTtanh(Wxi+Uhi+b)
.
(12)
式(12)中:w,W,U均為權(quán)重向量;b為偏移量.
引入注意力機制后的網(wǎng)絡結(jié)構(gòu)圖,如圖5所示.圖5中:α1~αn為不同時刻的隱藏層輸出與整個視頻表示向量的匹配得分占總體得分的比值;δ為α1~αn在對應隱藏層輸出中的比值.
圖5 引入注意力機制后的網(wǎng)絡結(jié)構(gòu)圖Fig.5 Network structure diagram after adding attention mechanism
自由體操分解動作數(shù)據(jù)集的構(gòu)建是自由體操視頻自動描述的基礎工作.為此收集了大量高規(guī)格賽事的視頻,包括奧運會、世界錦標賽、全運會等多個男女重量級賽事視頻.
首先,對這些賽事視頻進行預處理.一場完整的賽事視頻是由多名運動員共同參與完成的,期間會穿插精彩瞬間的回放、慢動作解說、評委打分排名等.在海量的視頻里,以運動員為單位進行裁剪,僅保留運動員自由體操的成套動作.構(gòu)建的自由體操分解動作數(shù)據(jù)集OURS包括訓練集(298個視頻)與測試集(45個視頻),測試集中的自由體操分解動作均在訓練集中出現(xiàn).由于體育賽事的解說沒有字幕,解說員對分解動作名稱進行語音解說時,常常會伴隨著一些評判,干擾因素很多,無法通過語音識別等技術(shù)進行識別.因此,自由體操分解動作數(shù)據(jù)集只能根據(jù)實時體育解說詞進行手動標注.
對測試集的298個視頻對應的298條描述進行分詞和詞頻統(tǒng)計.單詞及頻數(shù)的統(tǒng)計結(jié)果,如表1所示.由表1可知:45.83%的單詞出現(xiàn)的頻數(shù)低于10;僅有4.20%的單詞頻數(shù)為150次以上.
表1 單詞及頻數(shù)的統(tǒng)計結(jié)果Tab.1 Statistical results of words and frequencies
訓練解碼器是將目標樣本作為下一個預測值的輸入;而預測解碼器是將上一個預測結(jié)果作為下一個預測值的輸入.這個差異導致訓練和預測的情景不同.因此,在預測階段,如果上一個詞語預測錯誤,其后的數(shù)據(jù)都會出現(xiàn)錯誤,而訓練階段則不會.
為消除訓練解碼器與預測解碼器之間的差異,需對訓練解碼器模型進行修改,故引入計劃采樣方法.訓練解碼器的基礎模型是以真實標注數(shù)據(jù)作為輸入,加入計劃采樣的訓練解碼器是以采樣率P選擇模型自身的輸出作為下一個預測的輸入,以1-P選擇真實標注數(shù)據(jù)作為下一個預測的輸入,即采樣率P在訓練的過程中是變化的.一開始訓練不充分,P可以小一些,盡量使用真實標注數(shù)據(jù)作為下一個預測的輸入;隨著訓練的進行,P逐漸增大,可以多采用自身的輸出作為輸入;隨著P越來越大,訓練解碼器最終趨于預測解碼器.通過計劃采樣方法,可縮小訓練解碼器和預測解碼器之間的差異.
使用TensorFlow開源軟件庫中的TensorBoard可視化工具,讀取TensorFlow訓練后保存的事件文件,可展示各個參數(shù)的變化.S2VT模型(原始模型)和文中模型(經(jīng)文中方法改進的模型)訓練完成后,通過損失函數(shù)了解2種模型的損失值隨迭代次數(shù)的變化情況,結(jié)果如圖 6所示.圖6中:d為迭代次數(shù);L為模型訓練損失值.由圖6可知:隨著迭代次數(shù)的增加,S2VT模型與文中模型的函數(shù)損失值均逐漸下降,最終趨于穩(wěn)定收斂狀態(tài);相較于S2VT模型,文中模型因復雜度增加,起始的損失值較大,但其收斂速度有所提高.因此,文中模型具有可訓練性及有效性.
(a) S2VT模型 (b) 文中模型 圖6 損失值隨迭代次數(shù)的變化情況Fig.6 Change of loss value with number of iterations
自由體操視頻自動描述的結(jié)果是自由體操分解動作的描述語句,是一種自然語言,因此,評價自由體操視頻自動描述結(jié)果可參考自然語言領(lǐng)域中機器翻譯質(zhì)量的評價指標,即雙語評估候補(BLEU).BLEU[28]是目前最接近人類評分的評價指標,BLEU重點關(guān)注相同文本下,機器譯文和參考譯文的相似度,其值越大,則翻譯質(zhì)量越好.
表2 不同模型的BLEU對比 Tab.2 BLEU comparison of different models
在數(shù)據(jù)集MSVD[29]和自建數(shù)據(jù)集的兩個語料庫OURS(1),OURS(2)中,對S2VT模型、文中模型和計劃采樣模型(引入計劃采樣方法的文中模型)的性能進行對比.OURS(1)采用最直接的自然語言;OURS(2)則根據(jù)專業(yè)術(shù)語對描述語句進行調(diào)整.不同模型的BLEU對比,如表2所示.由表2可知:相較于S2VT模型,文中模型和計劃采樣模型的性能更優(yōu).
由于篇幅所限,僅給出一個實例作為參考.自建數(shù)據(jù)集OURS上,自由體操視頻自動描述實例,如圖7所示.圖7中:正確描述為forward stretched twist three forward stretched twist one;S2VT模型為twohalf forward onehalf forward;文中模型為onehalf forward one stretched forward;計劃采樣模型為two stretched 〈PAD〉 stretched 〈PAD〉.由圖7可知:文中模型在翻轉(zhuǎn)方向方面的測試結(jié)果與正確描述相近,如“forward”;計劃采樣模型在身體姿勢方面的測試結(jié)果與正確描述相近,如“stretched”.
圖7 自由體操視頻自動描述實例Fig.7 Example of floor exercise video description
提出一種長短時記憶網(wǎng)絡的自由體操視頻自動描述方法,但該研究仍需進一步優(yōu)化.在數(shù)據(jù)層面,應進一步豐富自由體操自動描述數(shù)據(jù)集的建設,均勻不同分解動作的數(shù)據(jù)量及描述量.在視頻特征的提取層面,可以使用目前較為流行的三維卷積操作對自由體操視頻進行時域和空域的特征提取[30].此外,可以借助知識遷移更有效地識別、定位體育視頻中運動員的動作,并將自由體操視頻自動描述方法運用于其他體育項目中,擴大研究成果的使用范圍.