王 帥,姚翠莉,楊雨龍,劉 昊,魏 維
(1. 大連理工大學(xué)電子信息與電氣工程學(xué)部,大連 116024;2. 大連理工大學(xué)創(chuàng)新創(chuàng)業(yè)學(xué)院,大連 116024;3.大連理工大學(xué)體育與健康學(xué)院,大連 116024)
運(yùn)動(dòng)是居民日常生活中鍛煉身體的主要方式,同時(shí)國(guó)家體育總局下發(fā)《關(guān)于大力推廣居家科學(xué)健身方法的通知》[1]以及冰雪運(yùn)動(dòng)的推廣等號(hào)召,均體現(xiàn)出運(yùn)動(dòng)是當(dāng)今時(shí)代的主題之一。近十年隨著國(guó)家對(duì)于傳統(tǒng)武術(shù)的大力推廣,武術(shù)愛好者數(shù)量不斷激增,同時(shí)近年來受疫情影響,人們對(duì)于居家健身的需求不斷增加,運(yùn)動(dòng)空間需求較小的武術(shù)運(yùn)動(dòng)成為人們的理想選擇之一。
傳統(tǒng)武術(shù)指導(dǎo)需要專業(yè)教練,這種人工手段已經(jīng)無法滿足多數(shù)人對(duì)于運(yùn)動(dòng)的學(xué)習(xí)需求。利用神經(jīng)網(wǎng)絡(luò)、計(jì)算機(jī)視覺相關(guān)技術(shù)可以在體育領(lǐng)域中對(duì)人體運(yùn)動(dòng)姿態(tài)進(jìn)行深入剖析,因此無論是為運(yùn)動(dòng)員動(dòng)作識(shí)別與矯正提示提供科學(xué)參考,還是對(duì)于個(gè)人居家武術(shù)健身的科學(xué)性,使用人工智能技術(shù)實(shí)現(xiàn)此類功能已成為大勢(shì)所趨。
目前相關(guān)研究中姿態(tài)識(shí)別任務(wù)的應(yīng)用化還處于初級(jí)階段,基本只停留在識(shí)別骨骼圖本身,以姿態(tài)識(shí)別進(jìn)行動(dòng)作分類為主[2-8],例如使用姿態(tài)估計(jì)來預(yù)測(cè)目標(biāo)是否進(jìn)行特定動(dòng)作,評(píng)價(jià)方式較為單一,缺少有效的動(dòng)作評(píng)分方式[9],缺少對(duì)武術(shù)及其他體育項(xiàng)目的專業(yè)適應(yīng)性,該類動(dòng)作評(píng)價(jià)任務(wù)仍存在較大的研究空間。
本文使用AlphaPose 模型[10]提取骨骼點(diǎn),然后對(duì)動(dòng)作相關(guān)骨胳點(diǎn)進(jìn)行時(shí)間和空間序列匹配度計(jì)算,針對(duì)測(cè)試者動(dòng)作進(jìn)行骨胳向量繪制,并依據(jù)學(xué)習(xí)得到的評(píng)分?jǐn)M合算法,給出每一時(shí)刻的動(dòng)作分?jǐn)?shù)。
本實(shí)驗(yàn)設(shè)計(jì)中主要工作有:設(shè)計(jì)有效的動(dòng)作評(píng)價(jià)方式;將遷移向量與被測(cè)試目標(biāo)身體骨骼比例相匹配;設(shè)計(jì)了多體任務(wù)中的同幀動(dòng)作向量計(jì)算模型;對(duì)于具有預(yù)存儲(chǔ)模型的單體評(píng)價(jià)與矯正提示任務(wù),解決了標(biāo)準(zhǔn)動(dòng)作向量與被測(cè)試目標(biāo)動(dòng)作向量之間的時(shí)間序列和空間序列匹配問題。
AlphaPose 模型使用區(qū)域多人姿態(tài)估計(jì)框架,該框架主要由三部分組成:對(duì)稱空間變換網(wǎng)絡(luò)、參數(shù)化姿勢(shì)非極大值抑制和姿勢(shì)引導(dǎo)區(qū)域發(fā)生器。該框架改善了基于單人姿態(tài)估計(jì)的人體姿態(tài)估計(jì)算法的性能。
該框架設(shè)計(jì)了一個(gè)新的對(duì)稱空間變換網(wǎng)絡(luò),與單人姿態(tài)估計(jì)網(wǎng)絡(luò)相連,從一個(gè)不準(zhǔn)確的目標(biāo)框中提取高質(zhì)量的目標(biāo)區(qū)域;針對(duì)冗余檢測(cè)問題,引入了參數(shù)化姿態(tài)非極大值抑制方法,通過使用新的姿態(tài)距離計(jì)算方法來比較姿態(tài)的相似性進(jìn)而消除冗余姿態(tài);提出了一種新型的姿態(tài)引導(dǎo)數(shù)據(jù)生成器,通過學(xué)習(xí)不同姿勢(shì)下人體檢測(cè)器的輸出分布,模擬人體目標(biāo)框的生成,從而產(chǎn)生大量訓(xùn)練樣本。
該框架的流程為:
(1)使用人體目標(biāo)檢測(cè)器獲得人體目標(biāo)框。
(2)將人體目標(biāo)框送入“對(duì)稱空間變換網(wǎng)絡(luò)+單人姿態(tài)估計(jì)”模塊,自動(dòng)生成姿態(tài)估計(jì)。
(3)生成的姿態(tài)估計(jì)由參數(shù)化姿態(tài)非極大值抑制進(jìn)行優(yōu)化,消除冗余的姿態(tài)估計(jì)結(jié)果。
該框架在多人姿態(tài)估計(jì)任務(wù)中的定位、識(shí)別方面誤差較小,雖然使用兩階段姿態(tài)估計(jì)方式會(huì)對(duì)檢測(cè)速度造成一定影響,但相較于單階段模型,該模型可以做到相對(duì)兼顧識(shí)別的準(zhǔn)確率和實(shí)時(shí)性,更適合作為武術(shù)動(dòng)作的姿態(tài)估計(jì)模型。
武術(shù)評(píng)價(jià)任務(wù)的整體流程如圖1 所示,包括骨骼向量提取與表示、任務(wù)分類和分?jǐn)?shù)函數(shù)擬合。

圖1 武術(shù)評(píng)價(jià)任務(wù)整體流程
使用AlphaPose 模型提取武術(shù)練習(xí)者的骨骼向量。該信息被分為兩級(jí)儲(chǔ)存,第一級(jí)為骨骼點(diǎn)對(duì),其中第一點(diǎn)為起始點(diǎn),第二點(diǎn)為終止點(diǎn)。第二級(jí)信息由字典格式儲(chǔ)存骨骼點(diǎn)對(duì)應(yīng)的實(shí)際像素點(diǎn)位置,以便在后續(xù)的匹配任務(wù)和分?jǐn)?shù)計(jì)算中進(jìn)行計(jì)算。
武術(shù)評(píng)價(jià)要求能夠直觀表示和輔助矯正被測(cè)試目標(biāo)的武術(shù)動(dòng)作,因此需要將標(biāo)準(zhǔn)動(dòng)作向量遷移至被測(cè)試目標(biāo)對(duì)應(yīng)動(dòng)作位置進(jìn)行繪制,該過程需要選擇一個(gè)關(guān)節(jié)點(diǎn)作為骨骼向量遷移的對(duì)齊匹配中心點(diǎn)。本文實(shí)驗(yàn)了兩種方式,第一種是以頭部作為中心,整體進(jìn)行遷移。第二種是通過對(duì)所有關(guān)鍵骨骼點(diǎn)進(jìn)行加和求平均值來計(jì)算匹配中心點(diǎn)。在實(shí)際使用中,由于二維圖像中骨骼向量比例的變化和三維世界不同,缺少了深度信息,在具有肢體前后重疊的動(dòng)作中計(jì)算位置與實(shí)際位置偏差較為嚴(yán)重,很難如理想狀態(tài)下將匹配中心點(diǎn)定位在被測(cè)試目標(biāo)的正中心處,因此最終選擇以頭部點(diǎn)位為起始點(diǎn)。在得到起始點(diǎn)位后,由該點(diǎn)位進(jìn)行延伸,按照骨骼點(diǎn)對(duì)中儲(chǔ)存的順序,依次在目標(biāo)人物對(duì)應(yīng)位置繪制標(biāo)準(zhǔn)動(dòng)作骨骼向量。
針對(duì)骨骼向量的長(zhǎng)度表示,本文設(shè)計(jì)了兩種方式。第一種是直接遷移,即不改變基準(zhǔn)目標(biāo)的骨骼向量長(zhǎng)度信息,直接遷移至被測(cè)試目標(biāo)。由于被測(cè)試目標(biāo)和基準(zhǔn)目標(biāo)骨骼向量的長(zhǎng)度存在差異,會(huì)對(duì)最終的分?jǐn)?shù)計(jì)算造成影響,因此第二種方式是對(duì)骨骼向量長(zhǎng)度進(jìn)行比例自適應(yīng)調(diào)整,即將標(biāo)準(zhǔn)骨骼向量乘上一個(gè)比例系數(shù),以此來消除標(biāo)準(zhǔn)骨骼向量長(zhǎng)度與被測(cè)試目標(biāo)骨骼向量長(zhǎng)度不匹配的問題。
式中:leni為被測(cè)試目標(biāo)人物i的肢體長(zhǎng)度;lenj為基準(zhǔn)動(dòng)作者j 的肢體長(zhǎng)度;εx,i和εy,i分別表示被測(cè)試目標(biāo)肢體起始骨骼點(diǎn)和終止骨骼點(diǎn)沿著x和y方向變化的像素值;εx,j和εy,j分別表示基準(zhǔn)目標(biāo)肢體起始骨骼點(diǎn)和終止骨骼點(diǎn)沿著x和y方向變化的像素值。
在動(dòng)作匹配計(jì)算模型中,如果被測(cè)試目標(biāo)動(dòng)作錯(cuò)誤較為嚴(yán)重,和標(biāo)準(zhǔn)動(dòng)作的計(jì)算過程產(chǎn)生較大誤差(例如標(biāo)準(zhǔn)動(dòng)作是向下微伸,而被測(cè)試目標(biāo)為向下伸張),此時(shí)由于深度信息未被計(jì)算在內(nèi),標(biāo)準(zhǔn)動(dòng)作向量長(zhǎng)度與被測(cè)試目標(biāo)動(dòng)作向量長(zhǎng)度之比所得系數(shù)將受到較為嚴(yán)重的影響。
針對(duì)這一問題,本文采用了一個(gè)權(quán)衡的解決方案。在大多數(shù)武術(shù)動(dòng)作或運(yùn)動(dòng)中,第一幀中標(biāo)準(zhǔn)動(dòng)作與被測(cè)試目標(biāo)動(dòng)作一般來說是差距最小的狀態(tài),記錄此時(shí)的比例值來作為整體比例系數(shù),能夠在一定程度上緩解這個(gè)問題。
多體評(píng)價(jià)任務(wù),是在圖像中存在可以代表標(biāo)準(zhǔn)武術(shù)動(dòng)作的目標(biāo)人物的任務(wù),即其中一個(gè)人物作為教練員(基準(zhǔn)目標(biāo)),其他人物作為學(xué)員(被測(cè)試目標(biāo)),在兩類目標(biāo)之間進(jìn)行骨骼向量遷移和分?jǐn)?shù)評(píng)價(jià)。
本文實(shí)驗(yàn)將最右側(cè)目標(biāo)作為基準(zhǔn)目標(biāo),其他目標(biāo)與其進(jìn)行動(dòng)作匹配計(jì)算,在實(shí)際使用中,也可以將該選擇設(shè)計(jì)為超參,來使其他位置的目標(biāo)作為基準(zhǔn)。也可以選取一定的約束,例如以總?cè)藬?shù)除二取整選取基準(zhǔn)目標(biāo),使標(biāo)準(zhǔn)動(dòng)作人物定位在中心。
在該類任務(wù)中,本文采取同幀計(jì)算,即在視頻相同的一幀內(nèi)進(jìn)行被測(cè)試目標(biāo)與標(biāo)準(zhǔn)動(dòng)作目標(biāo)的相關(guān)計(jì)算。這種同幀計(jì)算任務(wù)可以滿足某些特殊的需求,例如某些難以找到標(biāo)準(zhǔn)動(dòng)作視頻的武術(shù)或運(yùn)動(dòng)項(xiàng)目,同時(shí)對(duì)于某些團(tuán)體項(xiàng)目,該方案可以便捷地計(jì)算武術(shù)團(tuán)隊(duì)的整體協(xié)調(diào)度。
單體評(píng)價(jià)任務(wù),指的是圖像中沒有基準(zhǔn)目標(biāo)而只有被測(cè)試目標(biāo)的評(píng)價(jià)任務(wù)。此時(shí)需要在標(biāo)準(zhǔn)動(dòng)作目標(biāo)人物的武術(shù)動(dòng)作視頻中提取所需的骨骼向量數(shù)據(jù)文件,并與被測(cè)試目標(biāo)即輸入視頻中的目標(biāo)人物進(jìn)行相關(guān)計(jì)算。
對(duì)于此類任務(wù),由于輸入視頻與提取出的標(biāo)準(zhǔn)動(dòng)作向量數(shù)據(jù)所對(duì)應(yīng)的原視頻并未經(jīng)過對(duì)齊,二者在時(shí)間上沒有必然聯(lián)系,本任務(wù)需要避免細(xì)微的時(shí)間差異導(dǎo)致動(dòng)作匹配過程發(fā)生嚴(yán)重的錯(cuò)位,從而導(dǎo)致分?jǐn)?shù)評(píng)價(jià)出現(xiàn)較大偏差。針對(duì)這一問題,本文對(duì)時(shí)間序列進(jìn)行修改,計(jì)算輸入視頻在當(dāng)前時(shí)刻的各肢體動(dòng)作向量,與一定時(shí)間范圍內(nèi)每一時(shí)刻的標(biāo)準(zhǔn)動(dòng)作向量的誤差關(guān)系,選擇誤差總量最小的時(shí)刻作為對(duì)齊時(shí)刻,以此進(jìn)行相關(guān)計(jì)算,詳細(xì)流程見算法1。

其中:T表示輸入視頻當(dāng)前時(shí)刻,x表示時(shí)序匹配的前后時(shí)間范圍,Ls表示歐氏距離和,Ls_m表示歐氏距離最小誤差之和,t表示當(dāng)前標(biāo)準(zhǔn)視頻對(duì)應(yīng)的時(shí)刻。
得分函數(shù)需要一個(gè)參數(shù)d作為擬合函數(shù)的自變量,本文使用歐氏距離和向量方向兩種方式進(jìn)行試驗(yàn)。
計(jì)算被測(cè)目標(biāo)動(dòng)作向量與標(biāo)準(zhǔn)動(dòng)作向量之間誤差值的歐氏距離,如公式(3)所示。在評(píng)價(jià)計(jì)算過程中,若未采用身體骨骼向量長(zhǎng)度進(jìn)行等比例自適應(yīng)調(diào)整,則會(huì)產(chǎn)生由于肢體長(zhǎng)度不同而導(dǎo)致的誤差。因此使用相同的技巧,即取第一幀圖像,也就是雙方動(dòng)作差距較小的狀態(tài),為本次評(píng)價(jià)中的人物骨骼向量長(zhǎng)度提供一個(gè)校準(zhǔn)值。
式中:l_pair的下標(biāo)i代表第i個(gè)骨骼點(diǎn)對(duì),也就是第i個(gè)肢體動(dòng)作,0、1分別代表被測(cè)試目標(biāo)和基準(zhǔn)目標(biāo),pixel函數(shù)表示取對(duì)應(yīng)肢體動(dòng)作的像素變化值。
計(jì)算雙方動(dòng)作向量間角度的差值,在一定程度上緩解了使用歐氏距離時(shí)遇到的長(zhǎng)度比例問題,但角度計(jì)算由于缺失了深度信息,對(duì)于處于同一角度的動(dòng)作,事實(shí)上可以對(duì)應(yīng)很多不同的深度情況,這些情況難以區(qū)分,如果想要估算深度,則需要由骨骼向量長(zhǎng)度進(jìn)行反推。
式中:ɑ和b分別表示基準(zhǔn)目標(biāo)和被測(cè)試目標(biāo)。
在實(shí)際應(yīng)用中,前置肢體(例如大臂)發(fā)生錯(cuò)誤而后置肢體(例如小臂)動(dòng)作準(zhǔn)確無誤的情況,相較于后置肢體發(fā)生錯(cuò)誤而前置肢體動(dòng)作準(zhǔn)確無誤的情況,會(huì)對(duì)被測(cè)試目標(biāo)的評(píng)價(jià)造成更大的消極影響,因此需要為每個(gè)部位提供不同的權(quán)重系數(shù)。
針對(duì)運(yùn)動(dòng)中每個(gè)動(dòng)作都有微小差距和某部分肢體動(dòng)作出現(xiàn)嚴(yán)重偏差這兩種情況相比,其差值總和可能相同,但前者對(duì)于評(píng)價(jià)者的感官影響和評(píng)價(jià)均優(yōu)于后者,這意味著動(dòng)作誤差在數(shù)值上的變化與評(píng)價(jià)人觀感與評(píng)價(jià)上的變化并非線性匹配,因此誤差值變化與分?jǐn)?shù)變化是一個(gè)非線性的關(guān)系,也就是一個(gè)梯度單調(diào)遞增的擬合函數(shù)。
針對(duì)本文武術(shù)項(xiàng)目,對(duì)訓(xùn)練集中的任務(wù)抽取足量的時(shí)間點(diǎn),由大連理工大學(xué)武術(shù)社團(tuán)的同學(xué)和老師對(duì)其進(jìn)行人工標(biāo)注,得到感官評(píng)價(jià)分?jǐn)?shù),同時(shí)計(jì)算這些時(shí)刻的誤差值,即可得到動(dòng)作誤差值與其對(duì)應(yīng)的分?jǐn)?shù),以此擬合得分函數(shù)。根據(jù)得到的擬合曲線進(jìn)行適當(dāng)?shù)娜斯ふ{(diào)整,得到對(duì)應(yīng)各肢體動(dòng)作的最終擬合函數(shù)。為防止抽取點(diǎn)數(shù)不足而導(dǎo)致擬合關(guān)系變?yōu)榫€性,在實(shí)驗(yàn)中使用e作為底來進(jìn)行指數(shù)函數(shù)擬合,最終得到的得分函數(shù)形如式(6)所示:
其中:μi為擬合的比例系數(shù),ki為各部位權(quán)重系數(shù),εi為每一項(xiàng)的線性補(bǔ)償。
多體任務(wù)和單體任務(wù)的測(cè)試結(jié)果如圖2、圖3 所示。其中圖2 展示的多體評(píng)價(jià)任務(wù)使用了等比例自適應(yīng)調(diào)整方法。圖3 處展示的單體評(píng)價(jià)任務(wù),沒有使用等比例自適應(yīng)調(diào)整方法,對(duì)比多體任務(wù),此時(shí)繪制的標(biāo)準(zhǔn)骨骼向量與被測(cè)試目標(biāo)的骨骼向量長(zhǎng)度并不完全匹配。根據(jù)圖3所示圖片可以看出,即使輸入視頻與預(yù)存視頻并未直接進(jìn)行對(duì)齊,經(jīng)過時(shí)序匹配算法后,被測(cè)試目標(biāo)處繪制的標(biāo)準(zhǔn)動(dòng)作向量仍可以比較接近此刻被測(cè)試目標(biāo)的動(dòng)作,說明使用時(shí)序匹配算法能夠緩解動(dòng)作難以對(duì)齊這一問題。在下面的消融實(shí)驗(yàn)中,本文將定量比較這兩種算法的效果。

圖2 多體評(píng)價(jià)任務(wù)測(cè)試效果(使用骨骼向量長(zhǎng)度等比例自適應(yīng))

圖3 單體評(píng)價(jià)任務(wù)測(cè)試效果(使用時(shí)序匹配算法)
多體任務(wù)、單體任務(wù)的驗(yàn)證分別使用如圖2、圖3 中截圖所示的完整視頻(分?jǐn)?shù)擬合的訓(xùn)練過程使用同類武術(shù)動(dòng)作的其他自制視頻),在得到完整的評(píng)分視頻后進(jìn)行抽樣并對(duì)抽樣點(diǎn)進(jìn)行人為打分標(biāo)注。對(duì)于多體任務(wù)進(jìn)行等比例自適應(yīng)方法的效果驗(yàn)證,對(duì)于單體任務(wù)進(jìn)行時(shí)序匹配算法的效果驗(yàn)證。分?jǐn)?shù)擬合消融實(shí)驗(yàn)結(jié)果見表1。

表1 分?jǐn)?shù)擬合消融實(shí)驗(yàn)結(jié)果
本文成功將動(dòng)作評(píng)價(jià)任務(wù)的研究工作由分類任務(wù)轉(zhuǎn)化為更精確的回歸任務(wù),使用自制的訓(xùn)練集(用于擬合曲線)和測(cè)試集(用于驗(yàn)證算法有效性)獲得相應(yīng)武術(shù)動(dòng)作的分?jǐn)?shù)擬合函數(shù),設(shè)計(jì)并驗(yàn)證了骨骼向量長(zhǎng)度等比例自適應(yīng)和時(shí)間序列匹配算法的有效性,為以武術(shù)動(dòng)作評(píng)價(jià)為例的各類運(yùn)動(dòng)提供便捷有效的智能動(dòng)作評(píng)價(jià)和輔助矯正功能。