夏永強(qiáng) 周元玲
(湖南人文科技學(xué)院 湖南婁底 417000)
武術(shù)是古代軍事戰(zhàn)爭中一種傳承的技術(shù)。習(xí)武可以強(qiáng)身健體,亦可以防御敵人進(jìn)攻。武術(shù)競賽規(guī)則產(chǎn)生于中華人民共和國成立以后,是對套路表演水平的評價(jià)標(biāo)準(zhǔn)。目前各種武術(shù)競賽評分規(guī)則均采用或參考國家體育總局武術(shù)運(yùn)動(dòng)管理中心審定的最新《武術(shù)套路競賽規(guī)則》及有關(guān)補(bǔ)充規(guī)定,按照無難度組別要求的競賽項(xiàng)目評分方法與標(biāo)準(zhǔn)執(zhí)行。武術(shù)項(xiàng)目走向了追求評分客觀性的競技化道路。競技武術(shù)套路的評判得分是由動(dòng)作規(guī)格、演練水平和難度3項(xiàng)總分組成。
裁判員根據(jù)運(yùn)動(dòng)員現(xiàn)場發(fā)揮的技術(shù)水平,按照各競賽項(xiàng)目的動(dòng)作規(guī)格要求,減去該動(dòng)作規(guī)格中出現(xiàn)的錯(cuò)誤扣分和其他錯(cuò)誤扣分,即為運(yùn)動(dòng)員的動(dòng)作規(guī)格分。但武術(shù)套路裁判員執(zhí)裁的客觀性問題一直是該領(lǐng)域的熱門話題。
許多學(xué)者對武術(shù)套路競賽做了大量研究[1-3],對武術(shù)套路競賽的規(guī)則變化對武術(shù)套路運(yùn)動(dòng)發(fā)展的影響進(jìn)行了討論和分析,在梳理和分析歷史沿革與演變內(nèi)容的基礎(chǔ)上,解析了武術(shù)套路競賽規(guī)則存在的現(xiàn)實(shí)問題及優(yōu)化策略,提到借助科學(xué)儀器進(jìn)行量化評判,完善演練水平的評判指標(biāo)[2]。部分學(xué)者對武術(shù)套路競賽采用電子打分制進(jìn)行了分析,認(rèn)為電子打分制的執(zhí)行對武術(shù)套路運(yùn)動(dòng)員技術(shù)動(dòng)作提高有明顯的影響,打分方式的改進(jìn)可促進(jìn)武術(shù)套路項(xiàng)目走向世界賽場[4]。
隨著神經(jīng)網(wǎng)絡(luò)、深度學(xué)習(xí)等人工智能技術(shù)的發(fā)展,人體姿態(tài)識(shí)別等技術(shù)在武術(shù)套路競賽評分中開始得到關(guān)注和研究。例如,設(shè)計(jì)開發(fā)以護(hù)腕為硬件載體、結(jié)合機(jī)器學(xué)習(xí)方法的可穿戴武術(shù)動(dòng)作量化評估系統(tǒng),實(shí)現(xiàn)武術(shù)訓(xùn)練的量化評估[5]。另外,利用人體姿態(tài)識(shí)別技術(shù),剖析相關(guān)技術(shù),并提出以人體2D 關(guān)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)分類的動(dòng)作識(shí)別方案,該方案能有效識(shí)別出視頻中的武術(shù)動(dòng)作[6]。為了武術(shù)考核過程和武術(shù)中考的公平性與客觀性,現(xiàn)已經(jīng)開始嘗試使用人工智能對動(dòng)作規(guī)格、勁力節(jié)奏等進(jìn)行評價(jià),有效避免評價(jià)過程的主觀因素和外部其他因素的影響,從客觀實(shí)際的角度給予真實(shí)有效的分?jǐn)?shù)[7]。
GitHub開源平臺(tái)展示了一個(gè)可以檢測俯臥撐動(dòng)作是否標(biāo)準(zhǔn)的程序。該程序通過檢測肘、肩和髖部角度的變化來判斷俯臥撐動(dòng)作是否正確,同時(shí)完成俯臥撐動(dòng)作計(jì)數(shù)。
在該文中以深度庫即Mediapipe 為基礎(chǔ)庫和視覺預(yù)處理的CV2庫來創(chuàng)建一個(gè)程序,進(jìn)行人體檢測,跟蹤武術(shù)套路競賽動(dòng)作,并針對特定動(dòng)作,根據(jù)《武術(shù)套路競賽規(guī)則》進(jìn)行客觀的評分。MediaPipe 是谷歌開源的多面體機(jī)器學(xué)習(xí)框架,里面包含了很多各種各樣的模型,其中就包括人體姿態(tài)檢測;OpenCV 是一個(gè)基于BSD許可(開源)發(fā)行的跨平臺(tái)的計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)的軟件庫,能實(shí)現(xiàn)圖像處理和計(jì)算機(jī)視覺方向的很多通用算法。
該項(xiàng)目采用Python語音集成開發(fā)環(huán)境Pycharm,安裝完P(guān)ycharm開發(fā)環(huán)境后,配置好虛擬環(huán)境,其中Python選擇3.8或者3.9版本,Mediapipe的版本0.8.4、OpenCv-python 版本4.6.0.66。MediaPipe依賴OpenCV來處理視頻。
該方案建立在MediaPipe框架之上,MediaPipe是一款由Google Research開發(fā)并開源的多媒體機(jī)器學(xué)習(xí)模型應(yīng)用框架。MediaPipe 工具包包括框架和Solutions,MediaPipe解決方案構(gòu)建在框架之上,目前提供了包括人體識(shí)別在內(nèi)的16個(gè)解決方案。該項(xiàng)目的開發(fā)流程如圖1所示。
圖1 程序?qū)崿F(xiàn)流程
導(dǎo)入項(xiàng)目所需相關(guān)庫,如項(xiàng)目需依賴OpenCV來處理視頻,OpenCV可以打開攝像頭或者讀取相關(guān)視頻文件,轉(zhuǎn)換為RGB 圖像并顯示每一幀的圖像。Python 的2D繪圖庫Matplotlib用來繪制圖形等。
為了武術(shù)套路競賽的方便,可以通過攝像頭直接讀取視頻,也可以采用視頻文件方式,如使用Cap=cv2.VideoCapture(0)打開攝像頭,Cap=cv2.VideoCapture('pose1.mp4')打開對應(yīng)視頻文件。
如圖2 所示,利用MediaPipe 框架獲取每一幀圖片的人體關(guān)鍵點(diǎn)模型,執(zhí)行姿勢檢測后,可以獲得33 個(gè)人體關(guān)鍵點(diǎn)的列表(見圖2),這些人體關(guān)鍵點(diǎn)代表圖像中人物的身體關(guān)節(jié)等位置。如圖3和圖4所示,為實(shí)際測試得到的運(yùn)動(dòng)員33關(guān)鍵點(diǎn)模型。
圖2 33個(gè)人體關(guān)鍵點(diǎn)
圖3 運(yùn)動(dòng)員下蹲狀態(tài)下33個(gè)關(guān)鍵點(diǎn)
圖4 運(yùn)動(dòng)員站立狀態(tài)下33個(gè)關(guān)鍵點(diǎn)
關(guān)節(jié)角度是由3 個(gè)關(guān)節(jié)點(diǎn)和2 個(gè)人體對應(yīng)的支干組成的關(guān)節(jié)角度。根據(jù)33關(guān)鍵點(diǎn)的坐標(biāo)點(diǎn),通過三關(guān)節(jié)點(diǎn)坐標(biāo),利用算法獲取特定部位角度。每個(gè)關(guān)鍵點(diǎn)都有對應(yīng)的坐標(biāo)(x,y,z)。其中x為按圖像寬度歸一化的關(guān)鍵點(diǎn)x 坐標(biāo);y 為按圖像高度歸一化的關(guān)鍵點(diǎn)y 坐標(biāo);z 為歸一化與x 大致相同的比例的關(guān)鍵點(diǎn)z 坐標(biāo)。它表示以臀部中點(diǎn)為原點(diǎn)的地標(biāo)深度。
可見性是一個(gè)范圍為[0.0,1.0]的值,表示圖像中可見(未遮擋)的可能性。
其中,關(guān)節(jié)點(diǎn)P1坐標(biāo)(x1,y1)、P2坐標(biāo)(x2,y2)、P3坐標(biāo)(x3,y3)。計(jì)算角度即為P2、P1、P3關(guān)節(jié)點(diǎn)的角度。
針對武術(shù)套路競賽規(guī)則,對特定的動(dòng)作評分,根據(jù)評分原則,對具體動(dòng)作進(jìn)行關(guān)節(jié)角度等信息的測量等。例如,腿法中的前掃腿扣分內(nèi)容包括支撐腿大腿高于水平、掃轉(zhuǎn)腿腳掌離地和掃轉(zhuǎn)腿彎曲。根據(jù)上述肢體部位,映射到MediaPipe 的具體關(guān)節(jié)點(diǎn),如掃轉(zhuǎn)腿彎曲對應(yīng)的就是關(guān)節(jié)點(diǎn)26、24和28的角度。支撐腿大腿高于水平也可以用關(guān)節(jié)點(diǎn)25、23和27的角度作為參考。
根據(jù)上述分析,導(dǎo)入運(yùn)動(dòng)員武術(shù)套路競賽視頻文件,視頻包含了腿法中的前掃腿過程。如圖5所示,前掃腿開始階段掃轉(zhuǎn)腿膝蓋部分角度為174o,掃轉(zhuǎn)腿基本未彎曲;支撐腿膝蓋部分角度為100o,運(yùn)動(dòng)員支撐腿大腿低于水平。如圖6所示,在前掃腿過程中,掃轉(zhuǎn)腿膝蓋部分角度為158o,掃轉(zhuǎn)腿出現(xiàn)了輕微彎曲;支撐腿膝蓋部分角度為118o,運(yùn)動(dòng)員支撐腿大腿稍微高于水平,出現(xiàn)了輕微的扣分現(xiàn)象。
圖5 運(yùn)動(dòng)員前掃腿開始階段
圖6 運(yùn)動(dòng)員前掃腿階段
該文通過MediaPipe框架實(shí)現(xiàn)運(yùn)動(dòng)員的姿態(tài)識(shí)別,并通過姿態(tài)識(shí)別的關(guān)節(jié)坐標(biāo)計(jì)算得到對應(yīng)關(guān)節(jié)點(diǎn)的角度。利用對應(yīng)的關(guān)節(jié)角度對武術(shù)套路競賽規(guī)則評分標(biāo)準(zhǔn)的動(dòng)作完成情況進(jìn)行評分,能有效避免主觀評分對競賽結(jié)果的影響。武術(shù)套路競賽規(guī)則中還有部分關(guān)于騰空高度和距離的部分評分規(guī)則,目前還在完善之中。上述方法無法實(shí)現(xiàn)武術(shù)套路競賽規(guī)則所有的評分,如節(jié)奏、協(xié)調(diào)性等主觀評分標(biāo)準(zhǔn),只能采用人工方式評分。