張學(xué)鋒, 王婉琛, 湯亞玲, 儲岳中
(安徽工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 馬鞍山 243032)
隨著傳感器微型化和智能化技術(shù)的發(fā)展, 智能可穿戴設(shè)備在中青年用戶群中越來越受到追捧. 根據(jù)權(quán)威市調(diào)機(jī)構(gòu)Canalys 最新數(shù)據(jù)顯示, 2020 年全球可穿戴式腕帶設(shè)備增長10%, 達(dá)1.85 億臺. 許多運(yùn)動(dòng)愛好者也非常熱衷利用可穿戴設(shè)備來了解自己的實(shí)時(shí)運(yùn)動(dòng)狀態(tài). 目前市面上流行的智能手環(huán)大都是通用型手環(huán),這樣的手環(huán)功能單一, 無法為球類愛好者提供運(yùn)動(dòng)數(shù)據(jù)的分析和指導(dǎo). 因此, 研發(fā)一款精確度較高, 且具有專項(xiàng)運(yùn)動(dòng)識別功能的智能手環(huán)會有較好的市場應(yīng)用前景.
目前, 已有國內(nèi)外學(xué)者開展各類人體運(yùn)動(dòng)識別算法的研究. Ayachi 等[1]使用17 個(gè)傳感器捕獲全身多處的動(dòng)作信號, 用以收集成年人9 種動(dòng)作的加速度信號.祁勝鋒[2]提出了基于Boosting 算法的人體動(dòng)作數(shù)據(jù)識別研究, 采用時(shí)域特征和關(guān)聯(lián)特征方法, 快速構(gòu)建識別模型. 此方法在采集加速度信號時(shí)需要使用多個(gè)傳感器, 用戶體驗(yàn)不佳且精確度不高. 吳保鋒等[3]提出基于小波閾值去噪算法的原理, 利用軟、硬閾值兩種函數(shù),對陀螺的測量數(shù)據(jù)進(jìn)行去噪處理, 尋找數(shù)據(jù)降噪效率最高的方法. 張儒鵬等[4]采用基于OI-LSTM 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的人體動(dòng)作識別模型研究, 在Inception 的基礎(chǔ)上提出O-Inception 結(jié)構(gòu)實(shí)現(xiàn)對特征的自動(dòng)提取, 同時(shí)利用LSTM 捕獲動(dòng)作時(shí)序, 提高動(dòng)作識別準(zhǔn)確率. 但基于深度學(xué)習(xí)的動(dòng)作識別技術(shù)計(jì)算量大, 對硬件要求高, 不利于推廣. 李元良等[5]通過對動(dòng)作區(qū)間進(jìn)行分割, 并對數(shù)據(jù)進(jìn)行特征提取, 再利用BP 神經(jīng)網(wǎng)絡(luò)算法對數(shù)據(jù)樣本進(jìn)行訓(xùn)練, 通過BP 神經(jīng)網(wǎng)絡(luò)輸出動(dòng)作識別結(jié)果. 但BP 神經(jīng)網(wǎng)絡(luò)存在樣本依賴性, 如果樣本代表性差, 矛盾樣本多等, 就很難達(dá)到預(yù)期的效果. 吳軍等[6]使用了手機(jī)內(nèi)嵌的加速度傳感器識別了5 種人體運(yùn)動(dòng)狀態(tài), 并將卷積神經(jīng)網(wǎng)絡(luò)用于結(jié)果的判別, 增加了識別的準(zhǔn)確性.
在基于可穿戴設(shè)備人體運(yùn)動(dòng)識別研究領(lǐng)域中, 對于專項(xiàng)運(yùn)動(dòng)的運(yùn)動(dòng)模式識別分析仍有較大可供完善的空間.本文聚焦的乒乓球運(yùn)動(dòng)模式實(shí)時(shí)識別研究方法基于ESP32 傳感器, 能夠?qū)崟r(shí)響應(yīng)并反饋運(yùn)動(dòng)員在進(jìn)行乒乓球運(yùn)動(dòng)時(shí)正手攻球、反手攻球、正手搓球、反手搓球等四種運(yùn)動(dòng)模式, 為后期幫助乒乓球運(yùn)動(dòng)員及愛好者方便快捷的了解和掌握個(gè)人運(yùn)動(dòng)數(shù)據(jù), 根據(jù)數(shù)據(jù)信息制定符合自身特點(diǎn)的訓(xùn)練方案, 提高運(yùn)動(dòng)效率奠定良好的基礎(chǔ).
本系統(tǒng)對乒乓球運(yùn)動(dòng)的原始加速度信號采集只需佩戴單個(gè)基于ESP32 的智能手環(huán)即可實(shí)現(xiàn), 簡單便攜,對硬件設(shè)備要求不高. 手環(huán)如圖1 所示. 首先通過手環(huán)內(nèi)嵌的MPU6886 獲取4 種乒乓球擊球動(dòng)作產(chǎn)生的原始加速度信號并通過傳感器的藍(lán)牙模塊實(shí)時(shí)發(fā)送到計(jì)算機(jī)端, 接著將采集到的原始加速度信號作為樣本, 通過加窗和滑動(dòng)均值濾波完成對樣本數(shù)據(jù)的預(yù)處理, 再分別對每個(gè)動(dòng)作進(jìn)行特征提取. 通過主成分分析法(PCA)對提取的特征進(jìn)行分析歸納, 以實(shí)現(xiàn)特征的降維處理, 提高系統(tǒng)的計(jì)算效率. 最后用決策樹算法訓(xùn)練出最佳分類模型, 實(shí)現(xiàn)對4 種運(yùn)動(dòng)模式的分類與實(shí)時(shí)顯示. 整個(gè)流程分為6 個(gè)模塊, 各模塊間的關(guān)系如圖2 所示.
圖1 基于ESP32 的智能手環(huán)佩戴示意圖
圖2 乒乓球運(yùn)動(dòng)模式實(shí)時(shí)識別算法流程圖
要實(shí)現(xiàn)加速度信號的實(shí)時(shí)采集和傳輸, 首先需要ESP32 微處理器利用內(nèi)部集成電路(I2C)總線采集加速度傳感器MPU6886 的數(shù)據(jù)信號并利用藍(lán)牙模塊將原始加速度信號發(fā)送給智能手機(jī); 再通過智能手機(jī)轉(zhuǎn)發(fā)到計(jì)算機(jī)端, 在計(jì)算機(jī)端對信號進(jìn)行數(shù)據(jù)預(yù)處理、特征工程和動(dòng)作的識別與顯示. 程序每隔200 個(gè)樣本點(diǎn)(約2 s)調(diào)用一次運(yùn)動(dòng)識別算法, 并將分類結(jié)果顯示在計(jì)算機(jī)端. 本實(shí)驗(yàn)中, 原始加速度信號的采集與發(fā)送和數(shù)據(jù)處理、特征提取與降維以及動(dòng)作的分類識別算法均由Python語言實(shí)現(xiàn).
2.1.1 加速度信號實(shí)時(shí)采集方法
搭載ESP32 芯片體系和集成IMU 姿態(tài)傳感器MPU6886 的M5stack 開發(fā)板為本次實(shí)驗(yàn)使用的加速度信號采集工具. ESP32 核心電路圖如圖3 所示.
圖3 ESP32 核心電路圖
開發(fā)板內(nèi)置3 軸陀螺儀和3 軸加速計(jì), 可連接各類外設(shè)配合使用. 通過手環(huán)按鍵控制開發(fā)板內(nèi)的MPU6886 傳感器實(shí)時(shí)收集用戶擊球過程中在X、Y、Z, 3 個(gè)方向上產(chǎn)生的加速度信號. 對于乒乓球運(yùn)動(dòng)而言, 加速度的傳輸頻率要足夠高才能保證采集到足夠的動(dòng)作信息. 實(shí)驗(yàn)中, 將ESP32 開發(fā)板傳感器頻率設(shè)為90 Hz 左右, 這樣的頻率能夠包含更多有效信息.
當(dāng)用戶按下手環(huán)上的開始按鍵時(shí), MPU6886 傳感器隨即開始收集用戶運(yùn)動(dòng)時(shí)產(chǎn)生的3 軸加速度信號,并通過I2C 總線完成與ESP32 的通信, 再利用ESP32的藍(lán)牙模塊將采集到的加速度信號發(fā)送到計(jì)算機(jī)端,加速度信號采集模塊如圖4 所示.
圖4 加速度信號采集模塊
I2C 總線(inter-integrated circuit, I2C)是一個(gè)雙向的兩線連接總線, 提供集成電路之間的通信線路. I2C總線物理拓?fù)浣Y(jié)構(gòu)和時(shí)序圖分別如圖5 和圖6 所示.
圖5 I2C 總線物理拓?fù)浣Y(jié)構(gòu)
圖6 I2C 總線時(shí)序圖
2.1.2 加速度信號實(shí)時(shí)傳輸方法
實(shí)時(shí)采集到加速度信號后, 利用GATT 協(xié)議通過藍(lán)牙模塊將數(shù)據(jù)發(fā)送到手機(jī)端, 并在手機(jī)端顯示實(shí)時(shí)運(yùn)動(dòng)數(shù)據(jù)和傳輸頻率, 如圖7. 再利用TCP/IP 協(xié)議, 通過WiFi 與計(jì)算機(jī)建立通信.
圖7 手機(jī)端實(shí)時(shí)顯示運(yùn)動(dòng)數(shù)據(jù)和傳輸頻率
(1)低功耗藍(lán)牙GATT 協(xié)議
GATT 協(xié)議(generic attribute profile)建立在 ATT(attribute protocol)協(xié)議的基礎(chǔ)上. 在本實(shí)驗(yàn)中, 利用MAC 地址匹配設(shè)備, 在傳感器與手機(jī)端之間建立連接.圖8 為GATT 協(xié)議的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖.
圖8 GATT 協(xié)議網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
(2)基于TCP 協(xié)議的Socket 通信
應(yīng)用程序可通過Socket 通信向網(wǎng)絡(luò)發(fā)送請求或應(yīng)答網(wǎng)絡(luò)請求. 本次實(shí)驗(yàn)主要是利用Socket 通信, 將數(shù)據(jù)信息從手機(jī)端轉(zhuǎn)發(fā)到計(jì)算機(jī), 并在計(jì)算機(jī)端完成對數(shù)據(jù)的實(shí)時(shí)接收和處理.
在完成對原始加速度信號的發(fā)送和存儲后, 需要對不同的動(dòng)作數(shù)據(jù)打上標(biāo)簽, 實(shí)驗(yàn)中使用數(shù)字“0, 1, 2,3”分別對“正手攻球, 反手攻球, 正手搓球和反手搓球”4 個(gè)動(dòng)作進(jìn)行標(biāo)記.
2.2.1 加速度信號加窗處理
為實(shí)現(xiàn)對原始加速度信號的數(shù)據(jù)分割和特征提取,使用加窗法分割加速度信號. 這種方法經(jīng)常被用于人體運(yùn)動(dòng)識別中, 用一個(gè)窗口長度為200 個(gè)樣本點(diǎn)的矩形窗分割原始加速度數(shù)據(jù), 相鄰窗之間重疊半個(gè)窗長.經(jīng)過加窗后, 單個(gè)窗口數(shù)據(jù)段包含200 個(gè)采樣點(diǎn). 實(shí)驗(yàn)中, 加速度信號傳輸?shù)接?jì)算機(jī)端的頻率為90–100 Hz,加窗后, 每個(gè)窗口數(shù)據(jù)段的時(shí)間跨度為2–2.2 s, 足以包含單個(gè)完整動(dòng)作.
2.2.2 加速度信號濾波處理
在實(shí)際的應(yīng)用中, 由于加速度傳感器產(chǎn)生的隨機(jī)漂移、無效動(dòng)作和抖動(dòng)產(chǎn)生的噪聲信號以及傳輸過程中因?yàn)閬G包等原因?qū)е碌臄?shù)據(jù)失真等[7]都將會對動(dòng)作的分類產(chǎn)生干擾. 直接對未經(jīng)處理的加速度信號提取特征, 得到的特征數(shù)值誤差大、干擾多, 對動(dòng)作的分割和分類會產(chǎn)生負(fù)面影響. 因此, 在進(jìn)行動(dòng)作分割和分類之前要對加速度信號進(jìn)行降噪處理[8,9]. 在選擇對數(shù)據(jù)進(jìn)行預(yù)處理的方法時(shí), 有選擇切比雪夫 I 型數(shù)字低通濾波器對原始加速度信號進(jìn)行了濾波處理, 濾除高頻噪聲[10]; 有通過快速傅里葉變換法和歸一法提取數(shù)據(jù)頻率, 減少外界因素引起的數(shù)據(jù)大小差異[11]; 還有利用小波變換和小波閾值完成對原始數(shù)據(jù)的降噪[12].
滑動(dòng)均值濾波算法具有結(jié)構(gòu)簡單, 適合去除信號中的毛刺等高頻噪聲干擾等[13]優(yōu)點(diǎn), 對濾除混雜在原始加速度信號上的隨機(jī)干擾噪聲非常有效. 為有效降低信號噪聲, 使特征提取的加速度信號更接近于真實(shí)值, 實(shí)驗(yàn)采用滑動(dòng)均值濾波算法實(shí)現(xiàn)加速度信號的濾波處理. 滑動(dòng)均值濾波算法是把連續(xù)取得的N個(gè)樣本進(jìn)行算術(shù)平均運(yùn)算, 獲得新的濾波結(jié)果, 同時(shí)每采樣得到一個(gè)新的數(shù)據(jù)放入隊(duì)尾, 并扔掉原來隊(duì)首的一個(gè)數(shù)據(jù), 計(jì)算公式如式(1):
其中,y(n)為輸出信號序列,x(n)為輸入信號序列,m的大小為10.
選取運(yùn)動(dòng)員做乒乓球反手搓球運(yùn)動(dòng)時(shí)y軸方向上的1000 個(gè)加速度信號樣本點(diǎn)用式(1)進(jìn)行濾波處理. 濾波前后加速度信號波形圖如圖9 和圖10 所示.
圖9 濾波前的加速度信號
圖10 濾波后的加速度信號
從上述兩幅圖可以看出, 圖9 的原始加速度波形圖毛刺和干擾信號較多, 這會影響后續(xù)特征提取和動(dòng)作分類的準(zhǔn)確性, 在利用滑均值濾波算法對加速度信號進(jìn)行處理后, 可以明顯看到濾波后的圖10 較圖9 平滑很多. 兩圖前后對比可以看出, 滑動(dòng)均值濾波對原始加速度信號中的毛刺和干擾信號的濾除有較好的效果.
要實(shí)現(xiàn)動(dòng)作的分類, 主要依賴加速度計(jì)發(fā)送到計(jì)算機(jī)端的實(shí)時(shí)加速度信號, 而加速度信號在時(shí)域內(nèi)以數(shù)據(jù)流的形式呈現(xiàn), 常規(guī)的分類器無法直接處理時(shí)間序列的數(shù)據(jù)[14], 此時(shí)就需要從時(shí)域中提取相關(guān)的特征量. 在完成對原始加速度信號的加窗和平滑等預(yù)處理工作后, 接下來就要提取相關(guān)特征值. 本實(shí)驗(yàn)從X、Y、Z 三個(gè)方向上收集加速度信號, 提取包括3 個(gè)方向上的加速度均值、方差、標(biāo)準(zhǔn)差、最大最小值、峰谷值、合成加速度模的均值、相關(guān)系數(shù)等共22 個(gè)特征值.
2.3.1 特征提取方法
3 個(gè)方向上的加速度信號方差計(jì)算公式為:
同樣, 可獲得3 個(gè)方向上加速度的標(biāo)準(zhǔn)差計(jì)算公式為:
通過式(11)可以計(jì)算出3 個(gè)方向上加速度信號的峰谷值.
為了綜合體現(xiàn)運(yùn)動(dòng)的劇烈程度, 創(chuàng)建合成加速度模的均值特征, 公式如下:
根據(jù)相關(guān)系數(shù)公式, 可計(jì)算出3 個(gè)方向上加速度信號兩兩之間的相關(guān)系數(shù)分別為:
2.3.2 特征降維
特征值過多會造成過擬合現(xiàn)象, 完成特征提取后便要用特征降維來減少維度, 避免訓(xùn)練過程中的過擬合現(xiàn)象. 特征降維主要分為特征選擇和特征抽取.
為了盡量減少降維過程中樣本信息丟失, 使得抽取后的特征能夠精確的表示樣本信息, 本實(shí)驗(yàn)采用PCA 算法實(shí)現(xiàn)特征降維.
PCA 算法的主要目標(biāo)是確定一個(gè)最有意義的主成分來重新表達(dá)一個(gè)數(shù)據(jù)集, 使原本復(fù)雜的數(shù)據(jù)簡單化,又不丟失重要信息[15].
PCA 算法的降維過程主要包括: 對所有特征進(jìn)行中心化(去均值), 求協(xié)方差矩陣, 計(jì)算特征值和特征向量, 將原始特征值投影到特征向量上, 得到降維后的新特征.
PCA 算法首先對所有的特征進(jìn)行中心化, 又叫去均值法. 即求每一個(gè)特征的平均值, 對所有的樣本, 每個(gè)特征都減去自身的均值, 公式如下:
接著, 利用式(19)求協(xié)方差C:
其中,k=1, 2, …, 22.
通過式(19)和式(20)可得M個(gè)樣本在22 維特征下的協(xié)方差矩陣C.
最后將原始特征投影到選取的特征向量上, 得到降維后的新k維特征, 新的特征計(jì)算公式如式(22)所示:
對特征數(shù)據(jù)降維后, 可通過繪制累積方差貢獻(xiàn)率曲線找到最優(yōu)維度. 圖11 和圖12 均為累積方差貢獻(xiàn)率曲線. 其中, 橫軸為降維后保留的特征個(gè)數(shù), 縱軸為降維后新特征矩陣捕捉到的方差貢獻(xiàn)率, 累積方差貢獻(xiàn)率最高的點(diǎn)所對應(yīng)的特征個(gè)數(shù)即為希望保留的降維后的特征個(gè)數(shù).
圖11 k=0, 1, 2, …, 22 時(shí)累積方差貢獻(xiàn)率曲線
圖12 k=15, 16, …, 20 時(shí)累積方差貢獻(xiàn)率曲線
當(dāng)降維后保留的特征個(gè)數(shù)k=0, 1, 2, …, 22 時(shí), 累積方差貢獻(xiàn)率曲線如圖11 所示.
通過圖11 可以看出, 當(dāng)特征數(shù)15<k<20 時(shí), 模型的準(zhǔn)確率達(dá)到最高點(diǎn), 所以最佳維度保留的特征個(gè)數(shù)k應(yīng)該在(15, 20)中.
當(dāng)降維后保留的特征個(gè)數(shù)k=15, 16, …, 20 時(shí), 累積方差貢獻(xiàn)率曲線如圖12 所示.
通過圖12 可以清晰地看出, 當(dāng)k=17 時(shí), 模型的可解釋方差貢獻(xiàn)率最高(大于97%), 故在本實(shí)驗(yàn)中, PCA降維后的特征維度應(yīng)為17.
當(dāng)PCA 降維算法中的k=17 時(shí), 用隨機(jī)森林分類器對降維后的特征數(shù)據(jù)進(jìn)行交叉驗(yàn)證, 準(zhǔn)確率可達(dá)97.80%.
通過PCA 降維算法對特征進(jìn)行降維, 一定程度上能去除噪聲, 減少由于特征較多導(dǎo)致的冗余問題, 進(jìn)一步降低算法的開銷. 而選擇最佳k值使得數(shù)據(jù)在壓縮的同時(shí)讓信息損失最小化, 使得訓(xùn)練出的模型擁有更高更穩(wěn)定的識別效率.
本實(shí)驗(yàn)選用決策樹算法對運(yùn)動(dòng)模式進(jìn)行分類識別.決策樹算法是一種非參數(shù)的有監(jiān)督機(jī)器學(xué)習(xí)算法, 主要包括: 特征選擇、決策樹的生成和決策樹的修剪等,可用以解決分類和回歸問題. 本實(shí)驗(yàn)使用的是分類決策樹模型, 通過借助樹形結(jié)構(gòu)中的葉子結(jié)點(diǎn)進(jìn)行屬性判定, 并通過不斷判定進(jìn)而得出最終的決策分類結(jié)果.本實(shí)驗(yàn)中, 決策樹得出的最終決策結(jié)果即為當(dāng)前的乒乓球擊球動(dòng)作.
本實(shí)驗(yàn)選用決策樹模型進(jìn)行分類, 是因?yàn)樗哂行矢摺⒂?jì)算量相對較小, 且通常不需要受訓(xùn)數(shù)據(jù)外的信息, 魯棒性強(qiáng)等特點(diǎn), 適合處理實(shí)際運(yùn)動(dòng)過程中產(chǎn)生的數(shù)量較大的數(shù)據(jù)樣本.
在第2 節(jié)中已經(jīng)完成對原始運(yùn)動(dòng)加速度信號的預(yù)處理和特征提取. 接下來就要把降維后的特征值作為訓(xùn)練樣本集和測試樣本集. 利用訓(xùn)練樣本集訓(xùn)練決策樹學(xué)習(xí)模型, 并通過測試集檢驗(yàn)決策樹學(xué)習(xí)模型是否符合預(yù)期, 當(dāng)正確率達(dá)到一定標(biāo)準(zhǔn)時(shí), 即可將此決策樹學(xué)習(xí)模型投放到實(shí)時(shí)運(yùn)動(dòng)模式識別中. 構(gòu)造決策樹學(xué)習(xí)模型的步驟如下:
(1)隨機(jī)選取特征樣本集中70%的數(shù)據(jù)作為訓(xùn)練集, 30%的數(shù)據(jù)為測試集.
(2)構(gòu)造決策樹分類器學(xué)習(xí)模型對步驟(1)中的訓(xùn)練集進(jìn)行訓(xùn)練, 主要通過不斷選擇最優(yōu)屬性, 提高節(jié)點(diǎn)分類純度, 由上至下形成一個(gè)樹型結(jié)構(gòu)學(xué)習(xí)分類模型,并利用步驟(1)中的測試集對模型準(zhǔn)確度進(jìn)行測試, 返回預(yù)測準(zhǔn)確度.
(3)利用剪枝策略對決策樹進(jìn)行剪枝優(yōu)化, 確定最優(yōu)參數(shù), 使生成的決策樹具有更好的泛化性和更高的準(zhǔn)確性. 包括對樹的最大深度、對葉子節(jié)點(diǎn)的最小樣本數(shù)和分割內(nèi)部節(jié)點(diǎn)所需的最小樣本數(shù)以及分枝時(shí)的特征個(gè)數(shù)和信息增益的大小限制等. 當(dāng)決策樹正確率達(dá)到較高水平時(shí), 便可將它作為最終的分類器學(xué)習(xí)模型投入到乒乓球運(yùn)動(dòng)模式的實(shí)時(shí)分類和顯示.
運(yùn)動(dòng)者將ESP32 智能手環(huán)佩戴在持拍手腕, 做乒乓球正手攻球、反手攻球、正手搓球、反手搓球4 種動(dòng)作, 決策樹分類模型可以實(shí)現(xiàn)對乒乓球4 種運(yùn)動(dòng)模式的實(shí)時(shí)識別與顯示. 決策樹分類模型對411 組乒乓球運(yùn)動(dòng)模式的實(shí)時(shí)識別結(jié)果統(tǒng)計(jì)如表1 所示.
表1 乒乓球4 種運(yùn)動(dòng)模式實(shí)時(shí)識別結(jié)果統(tǒng)計(jì)
從表1 中可以看出, 少量的正手攻球和正手搓球會被誤分類為反手攻球, 少量的反手攻球會被誤判為正手攻球和正手搓球, 個(gè)別反手搓球可能被誤識別為正手搓球. 但總的來說, 識別效果較好. 圖13 的柱狀圖表示的是決策樹算法分別對4 種運(yùn)動(dòng)模式進(jìn)行實(shí)時(shí)分類時(shí)的單個(gè)動(dòng)作識別率和識別準(zhǔn)確率的比較.
圖13 決策樹學(xué)習(xí)模型對乒乓球4 種動(dòng)作的識別準(zhǔn)確率
由圖13 可得, 決策樹模型對正手攻球和正手搓球動(dòng)作識別率較高, 分別達(dá)到98.26%和98.9%; 對反手搓球識別率最低, 但也有94.05%的準(zhǔn)確率. 總體上看,該模型對乒乓球正手攻球、反手攻球、正手搓球、反手搓球4 種運(yùn)動(dòng)模式的實(shí)時(shí)識別準(zhǔn)確率較高, 可達(dá)97.32%, 故本文中提出的實(shí)時(shí)運(yùn)動(dòng)模式識別方法對以上乒乓球4 種運(yùn)動(dòng)模式的實(shí)時(shí)識別具有較好的效果.
本文圍繞乒乓球運(yùn)動(dòng)的4 種模式: 正手攻球、反手攻球、正手搓球、反手搓球的實(shí)時(shí)識別展開研究.首先, 參與數(shù)據(jù)采集的實(shí)驗(yàn)人員大量重復(fù)的做4 種乒乓球擊球動(dòng)作并實(shí)時(shí)采集運(yùn)動(dòng)的加速度信號, 然后將采集到的加速度信號作為樣本數(shù)據(jù)集實(shí)時(shí)傳輸?shù)接?jì)算機(jī)端進(jìn)行數(shù)據(jù)預(yù)處理和特征提取, 再實(shí)現(xiàn)特征降維, 最后使用決策樹算法實(shí)現(xiàn)對運(yùn)動(dòng)模式的實(shí)時(shí)識別和分析.
獲取運(yùn)動(dòng)原始加速度信號后, 通過低功耗藍(lán)牙GATT 協(xié)議和TCP/IP 協(xié)議將采集的加速度信號實(shí)時(shí)發(fā)送到計(jì)算機(jī)端. 計(jì)算機(jī)端接收原始加速度信號, 并對加速度信號進(jìn)行加窗和濾波處理. 接著, 提取預(yù)處理后加速度信號的時(shí)域特征, 并對特征進(jìn)行綜合分析, 將原本22 個(gè)特征利用PCA 算法降為17 個(gè), 既避免出現(xiàn)過擬合現(xiàn)象又保證了較高的準(zhǔn)確率. 最后通過對決策樹進(jìn)行剪枝優(yōu)化, 訓(xùn)練生成最優(yōu)的決策樹模型投入到對運(yùn)動(dòng)模式的實(shí)時(shí)識別中. 結(jié)果顯示, 本方法對乒乓球正手攻球、反手攻球、正手搓球、反手搓球4 種動(dòng)作的識別準(zhǔn)確率可達(dá)97.32%.
本文研究的乒乓球運(yùn)動(dòng)模式實(shí)時(shí)識別方法, 可運(yùn)用于基于ESP32 的智能手環(huán)中, 通過實(shí)時(shí)采集轉(zhuǎn)發(fā)運(yùn)動(dòng)加速度信號, 自動(dòng)分析數(shù)據(jù)實(shí)現(xiàn)對用戶運(yùn)動(dòng)的模式識別, 及時(shí)反饋用戶的運(yùn)動(dòng)信息, 讓用戶能更好地了解自己的運(yùn)動(dòng)習(xí)慣, 有針對性地開展各項(xiàng)訓(xùn)練. 接下來的研究中將會考慮引入更多分類模型, 減少識別誤差, 優(yōu)化模型性能, 同時(shí)豐富動(dòng)作識別的種類, 以期能夠識別更多種類的球類運(yùn)動(dòng).