林建宏 莫琦 周俊杰 莫松穎 謝小旋



摘要:隨著時代的發(fā)展,世界科技創(chuàng)新水平不斷提高,然而國民的身體素質(zhì)卻逐年每況愈下。因此鍛煉身體,改善體質(zhì)同樣是當前國民的首要任務。為此我們團隊開發(fā)了一個智能健身平臺,利用神經(jīng)網(wǎng)絡做圖像識別處理,Android平臺作為客戶端。人們可以在運動時運行軟件對動作進行識別判斷并糾錯,從而達到跟私人教練貼身指導一樣的效果。
關(guān)鍵詞:神經(jīng)網(wǎng)絡;圖像識別;動作教學
中圖分類號:TP391.41 文獻標識碼:A 文章編號:1007-9416(2019)09-0093-02
0 引言
根據(jù)中國國民體質(zhì)監(jiān)測報告顯示,各個年齡段人群的身體素質(zhì)繼續(xù)呈下降趨勢,甚至呈現(xiàn)低齡化趨向,尤其是學生,各年齡段的學生肥胖檢出率持續(xù)上升等。在這種情況下,“全民健身、全民運動”便成為了當今國民所呼吁的口號之一。與此同時人群中也涌現(xiàn)出了大批運動及健身愛好者,健身房俱樂部等新時代產(chǎn)物應運而生,但問題也隨之出現(xiàn):一方面是健身學習效率低下、動作不標準,需要多次鞏固糾正,這導致學員學習時間長;另一方面則是部分課程價格昂貴,課時、學習內(nèi)容少。針對這一問題,本團隊開發(fā)了一款提高動作學習效率的智能教育平臺“影子教練”,它能夠通過線上實時糾錯、線上互動的方式,給予使用者正確的指導,幫助使用者提高學習效率,減輕健身學員的負擔。
1 軟件組成及功能介紹
1.1 軟件組成
本教學平臺的目的是為了能夠給健身初學者提供正確的動作指導。系統(tǒng)的組成和功能流程如圖1所示,教學從最基本的動作糾正開始,系統(tǒng)反饋信息為使用者提供建議,同時也可以與教練進行互動,為使用者提供更深層次的指導,這就需要在客戶端實現(xiàn)動作采集,與服務端通信,并在屏幕上顯示;在服務端實現(xiàn)對收到的數(shù)據(jù)進行分析處理,并將結(jié)果反饋給客戶端。圖像識別處理技術(shù)是軟件的核心技術(shù),它利用帶攝像頭的電子產(chǎn)品采集圖像信息,并采用神經(jīng)網(wǎng)絡算法對圖片進行動態(tài)分析。并將結(jié)果反饋到使用者的手持電子產(chǎn)品上,幫助使用者調(diào)整動作姿勢,達到糾錯的目的。
1.2 功能介紹
1.2.1 動作糾正功能
本系統(tǒng)帶有實時的動作監(jiān)控功能與動作糾錯功能。當用戶的動作與系統(tǒng)的動作庫相似度低于80%時,系統(tǒng)就會出現(xiàn)報警提示和語音提醒,實現(xiàn)及時糾正用戶錯誤姿勢的功能。
1.2.2 其他模式
(1)教練在線教學模式。當用戶模仿視頻上的動作進行學習時,系統(tǒng)還會對用戶的每個動作進行評分,用戶可通過分數(shù)的高低來判斷自己的鍛煉效果。教練可通過影子教練平臺觀看每個學員的學習情況,當用戶的動作錯誤過多時,系統(tǒng)會報警提示,教練可對其進行在線指導。
(2)直播模式。教練可以通過直播進行教學示范,也可以借助此平臺展現(xiàn)自己的技能。用戶可以在平臺上分享自己的視頻,或者是直播,成為一名網(wǎng)絡紅人。
(3)多人模式。用戶可以和朋友一起健身,也可以一起玩游戲,一起享受健身的快樂。
(4)排位模式。用戶可以通過排位賽,了解自己的實力在哪個程度,激發(fā)他們的好勝心。為了上一個段位,要花一點時間,這樣可以讓用戶對健身更加癡迷,增強用戶的粘性。
2 軟件設計方案
2.1 手機客戶端
系統(tǒng)的通訊流程如圖2所示,客戶端是基于Android6.0開發(fā)的app,主要負責采集人體圖像和圖片發(fā)送。利用電子移動設備上自帶的攝像頭采集動作圖片,再通過無線網(wǎng)絡發(fā)送到服務端。調(diào)用系統(tǒng)攝像頭及屏幕截取函數(shù)獲取當前預覽圖片,利用Android系統(tǒng)定時器決定獲取圖像的頻率,將圖片矩陣壓縮后利用TCP/IP通信協(xié)議發(fā)送數(shù)據(jù),當獲取服務IP和端口號即可進行數(shù)據(jù)傳輸。客戶端在發(fā)送成功后處于待機狀態(tài),等待服務端的回復。
2.2 服務器端
2.2.1 主要流程
服務端負責接收處理數(shù)據(jù)并進行反饋。服務端則分為兩部分,一部分負責雙方通信,另一部分是執(zhí)行圖像識別處理。通信部份同時監(jiān)聽兩個端口,在接收到圖片數(shù)據(jù)后暫時保存到本地,等待圖像識別結(jié)果。在獲取信息后將其顯示在電子設備屏幕上,同時還添加了語音播報功能,使得平臺更加智能化。圖3闡述了系統(tǒng)進行圖像識別的大概流程:先對接收到的視頻文件一幀幀提取出來,借助神經(jīng)網(wǎng)絡算法對圖片進行處理獲得人體特征,再根據(jù)相應的算法對當前的動作種類,動作正誤進行判斷。
2.2.2 人體姿態(tài)提取
關(guān)于人體姿態(tài)識別部分,調(diào)用了Openpose庫,該庫是美國卡耐基梅隆大學(CMU)基于卷積神經(jīng)網(wǎng)絡和監(jiān)督學習并以caffe為框架開發(fā)的開源庫。它可以實現(xiàn)人體動作等姿態(tài)估計,無論是靜止的還是運動中的人體它都能識別出來,具有極好的魯棒性。它的功能在于對二維的單人或多人圖像的人體骨骼關(guān)鍵點進行實時識別。
人體骨架的提取:輸入一副圖像,經(jīng)過卷積神經(jīng)網(wǎng)絡提取特征,得到一組特征圖,然后分成兩個岔路,分別使用CNN網(wǎng)絡提取Part Confidence Maps 和Part Affinity Fields。得到信息后,用Bipartite Matching(偶匹配)求出Part Association,將同一個人的關(guān)節(jié)點連接起來,因為PAF自身具有矢量性,會使生成的偶匹配正確,將它們合并成一個人體的骨架。最后基于PAFs求Multi-Person Parsing, 也就是把Multi-persion parsing問題轉(zhuǎn)換成graphs問題。(該算法的核心就是尋找增廣路徑,是一種用增廣路徑求二分圖最大匹配的算法)[1]。
2.2.3 動作評判
通過openpose獲得肢體關(guān)鍵點的位置信息后,就可以得到每個關(guān)鍵點的坐標。在這里平臺采用了數(shù)據(jù)集中訓練好的18點模型輸出格式為:鼻子-0,脖子-1,右肩-2,右肘-3,右腕-4,左肩-5,左肘-6,左腕-7,右臀-8,右膝蓋-9,右腳踝-10,左臀-11,左膝蓋-12,左腳踝-13,右眼-14,左眼-15,右耳-16,左耳-17。通過這些坐標能判斷某一關(guān)鍵點的移動矢量,關(guān)節(jié)彎曲的角度。有了這些數(shù)據(jù),再加上一定條件,就能用來作為動作的判斷標準。如圖4所示,在知道了右手三個關(guān)鍵點的情況下,右肘部的彎曲角度通過相應的數(shù)學算法可以得出。
3 結(jié)語
在人們印象中,傳統(tǒng)的健身方式效率一般,課程內(nèi)容枯燥無味。影子教練平臺的出現(xiàn),將會給健身人士的生活帶來巨大的變革。健身的時間地點不會有局限性,人們對健身的概念將會有新的理解。“影子教練”是圍繞動作的教與學為主題的新時代的人工智能助教平臺。 “影子教練”人工智能算法不僅僅用于健身,同樣適用于其他智能教學上,其應用范圍相當廣闊。
參考文獻
[1] CAO Z, SIMON T, WEI S E, et al.Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields[C].IEEE Conference on Computer Vision&Parrern Reconition,IEEE Computer Society,2017.