鄒鵬 諶雨章 蔡必漢 陳龍彪


摘要:針對(duì)運(yùn)動(dòng)教學(xué),結(jié)合攝像頭與相關(guān)圖像處理算法,開發(fā)了準(zhǔn)確捕捉動(dòng)作、比對(duì)分析、提出建議的智能運(yùn)動(dòng)分析教學(xué)平臺(tái)。應(yīng)用物聯(lián)網(wǎng)經(jīng)典框架,逐層設(shè)計(jì)了本平臺(tái)的功能與原理,對(duì)于核心模塊,進(jìn)行了理論論證與落地實(shí)驗(yàn)。在動(dòng)作捕捉方面,應(yīng)用Kinect深度攝像頭,測(cè)算出人體骨骼關(guān)鍵點(diǎn)三維坐標(biāo)信息,配合加權(quán)遞推平均濾波算法提取了歐拉角特征信息,使用模板匹配法能準(zhǔn)確地識(shí)別用戶動(dòng)作。在比對(duì)分析方面,應(yīng)用歐氏距離法,可準(zhǔn)確給出量化的綜合評(píng)價(jià)與相似度。
關(guān)鍵詞:kinect;動(dòng)作識(shí)別;數(shù)據(jù)提取;實(shí)時(shí)對(duì)比;綜合評(píng)價(jià)
中圖分類號(hào):TP391.7? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)18-0179-02
1 引言
在運(yùn)動(dòng)學(xué)習(xí)需求高速增長(zhǎng)的同時(shí),以物聯(lián)網(wǎng)技術(shù)為代表的信息技術(shù)也取得了突飛猛進(jìn)的進(jìn)展,個(gè)人電腦與手機(jī)迅速普及,計(jì)算機(jī)圖形學(xué)也有較大進(jìn)步,在運(yùn)動(dòng)輔助教學(xué)方面有了新的探索。本智能運(yùn)動(dòng)教學(xué)分析平臺(tái),借鑒了近年來在游戲、電影領(lǐng)域應(yīng)用廣泛的三維人體運(yùn)動(dòng)捕捉技術(shù)[1]。學(xué)習(xí)者只需要在深度攝像頭前模仿標(biāo)準(zhǔn)教學(xué)視頻中的動(dòng)作,本系統(tǒng)就能運(yùn)用圖像處理算法對(duì)視頻進(jìn)行特征檢測(cè)和識(shí)別,及時(shí)指出錯(cuò)誤并反饋動(dòng)作的相似度,從而降低舞蹈、健身等運(yùn)動(dòng)的學(xué)習(xí)門檻,方便用戶的動(dòng)作學(xué)習(xí)與訓(xùn)練。
2 系統(tǒng)方案
基于物聯(lián)網(wǎng)經(jīng)典的層次架構(gòu)設(shè)計(jì)方案,本智能運(yùn)動(dòng)分析教學(xué)平臺(tái)設(shè)計(jì)分為四個(gè)層次:智能感知層、網(wǎng)絡(luò)傳輸層、數(shù)據(jù)管理層、云應(yīng)用層。
智能感知層部署Kinect深度攝像頭,采集用戶的動(dòng)作信息。感知層采集到動(dòng)作信息后,進(jìn)行初步的前景偵測(cè)等預(yù)處理,將特征信息經(jīng)由網(wǎng)絡(luò)傳輸層傳遞給數(shù)據(jù)庫儲(chǔ)存。
網(wǎng)絡(luò)傳輸層基于目前主流的幾種網(wǎng)絡(luò)形式,如WI-FI、以太網(wǎng)、蜂窩通信網(wǎng)絡(luò)等。負(fù)責(zé)將智能感知層的數(shù)據(jù)根據(jù)不同需求傳輸給數(shù)據(jù)管理層。
數(shù)據(jù)管理層分為數(shù)據(jù)分析、數(shù)據(jù)存儲(chǔ)兩大模塊。數(shù)據(jù)分析模塊根據(jù)網(wǎng)絡(luò)傳輸層傳遞的人體關(guān)節(jié)模型,計(jì)算關(guān)節(jié)點(diǎn)向量,提取歐拉角等三維動(dòng)作數(shù)據(jù),傳給數(shù)據(jù)存儲(chǔ)模塊保存。針對(duì)三維動(dòng)作數(shù)據(jù),設(shè)計(jì)以BVH格式存儲(chǔ)歐拉角等特征信息的數(shù)據(jù)庫。數(shù)據(jù)庫主要存儲(chǔ)標(biāo)準(zhǔn)動(dòng)作的特征信息、采集的用戶動(dòng)作特征信息、用戶基本信息,數(shù)據(jù)分析模塊隨時(shí)調(diào)用這些數(shù)據(jù)進(jìn)行相似度計(jì)算、動(dòng)作識(shí)別等處理。用戶通過云應(yīng)用層也可方便地調(diào)用數(shù)據(jù)庫數(shù)據(jù)。
云應(yīng)用層是本平臺(tái)提供給用戶方便使用的接口,包含跨平臺(tái)的客戶端、基于B/S模式的網(wǎng)站。用戶在Andriod、Windows系統(tǒng)上都可以使用本平臺(tái)客戶端,啟動(dòng)智能運(yùn)動(dòng)分析教學(xué)服務(wù)。也可登錄網(wǎng)站,管理自己的運(yùn)動(dòng)信息,或在論壇上與其他用戶交流。
3 實(shí)施原理及過程
3.1 關(guān)節(jié)模型提取
在Kinect 2.0上通過其獲取人體的深度信息,從而建立人體骨骼關(guān)節(jié)模型的坐標(biāo)信息,完成對(duì)骨骼關(guān)節(jié)模型的提取,完成圖像坐標(biāo)到實(shí)際坐標(biāo)的轉(zhuǎn)化。假設(shè)kinect所采集到的某一節(jié)點(diǎn)坐標(biāo)為[(xi,yi,zi)],其轉(zhuǎn)換公式為:
3.2 動(dòng)作識(shí)別
由于Kinect每秒獲取30幀圖像,也就是關(guān)節(jié)模型每秒刷新30次,再加上人身體不可避免的抖動(dòng),因此首先采用加權(quán)遞推平均濾波算法[2]對(duì)坐標(biāo)進(jìn)行濾波,去除關(guān)節(jié)坐標(biāo)點(diǎn)的波動(dòng)。加權(quán)遞推平均濾波算法就是連續(xù)取N各采樣值作為標(biāo)準(zhǔn)隊(duì)列,此隊(duì)列長(zhǎng)度固定為N。之后每次采集一次新的數(shù)據(jù)就放到隊(duì)尾,并丟掉隊(duì)首的數(shù)據(jù)。然后針對(duì)不同時(shí)刻賦予不同權(quán)值,最后把隊(duì)列的N個(gè)數(shù)據(jù)進(jìn)行算術(shù)平均運(yùn)算,即得到濾波結(jié)果,公式如下:
3.3 動(dòng)作相似度計(jì)算
基于數(shù)據(jù)庫中以BVH格式存儲(chǔ)的歐拉角人體特征向量,本項(xiàng)目采用歐式距離法計(jì)算動(dòng)作相似度[4]。流程圖如圖1所示:
經(jīng)過大量的樣本試驗(yàn)后,本平臺(tái)將單通道歐氏距離閾值設(shè)置為0.05,能相對(duì)準(zhǔn)確地給出全局評(píng)價(jià)與相似度。對(duì)確定的人體骨架,三維動(dòng)作數(shù)據(jù)就是對(duì)骨架中每個(gè)骨骼的相對(duì)旋轉(zhuǎn)角度的表征。我們選用旋轉(zhuǎn)矩陣和歐拉角來描述剛體在三維空間中的旋轉(zhuǎn)量[5]。
4 結(jié)論
本平臺(tái)具有動(dòng)作捕捉與識(shí)別、動(dòng)作分析比對(duì)、學(xué)習(xí)管理等功能,具有良好的實(shí)時(shí)性、適用性與準(zhǔn)確性。在用戶動(dòng)作采集方面,考慮到平臺(tái)精度與成本的雙重要求,部署了Kinect深度攝像頭作為智能感知層,以此提取人體骨骼關(guān)節(jié)模型與三維坐標(biāo)信息。根據(jù)這些信息經(jīng)加權(quán)遞推平均濾波后,計(jì)算歐拉角為特征向量,以BVH格式存儲(chǔ)在數(shù)據(jù)庫中。本平臺(tái)通過比對(duì)標(biāo)準(zhǔn)教學(xué)視頻中的模板特征數(shù)據(jù),達(dá)到動(dòng)作識(shí)別的效果。在動(dòng)作比對(duì)分析方面,引入了對(duì)歐拉角標(biāo)準(zhǔn)規(guī)范化的動(dòng)作捕捉數(shù)據(jù),對(duì)用戶視頻序列進(jìn)行了良好分段,針對(duì)每段序列的每個(gè)通道計(jì)算歐氏距離,表示與標(biāo)準(zhǔn)動(dòng)作的相似度。經(jīng)過實(shí)驗(yàn)設(shè)置了良好的閾值,能做出較為準(zhǔn)確的綜合評(píng)價(jià)。在用戶體驗(yàn)方面,基于Django框架開發(fā)了B/S模式的前端服務(wù)平臺(tái),用戶登錄注冊(cè)此網(wǎng)站可以可視化選擇課程、管理自己的學(xué)習(xí)進(jìn)度、查看學(xué)習(xí)評(píng)價(jià)并與其他用戶交流,具有良好的交互性與用戶體驗(yàn)。
參考文獻(xiàn):
[1] 白正彪. 基于Kinect的運(yùn)動(dòng)示教系統(tǒng)研究與實(shí)現(xiàn)[D]. 天津大學(xué), 2012.
[2] 黨宏杜. 基于Kinect的人體動(dòng)作識(shí)別算法研究[J].電子器件,2017,40(5):1310-1313.
[3] Aggarwal J K, Cai Q. Human motion analysis: a review [J]. Computer vision and image understanding, 1993,73(3), 90-102.
[4] Alexiadis D S, Kelly P, Daras P, et al. Evaluating a dancer's performance using Kinect-based skeleton tracking [J]. Association for Computing Machinery Multimedia, 2011, 28, 659-662.
[5] 陳銀態(tài). 人體輪廓提取與運(yùn)動(dòng)捕捉系統(tǒng)平臺(tái)搭建[D]. 北京交通大學(xué), 2012.
【通聯(lián)編輯:梁書】