基於體感網路的高爾夫揮桿分析
學生:邱柏鈞 指導教授:易志偉
陳健
國立交通大學資訊工程學系網路工程所碩士班
摘要
在運動學習的過程中,打下良好的基礎動作是必須的,但若是自行摸索很容易造成 基礎動作錯誤,未來得耗費更大的精神來矯正錯誤姿勢,因此市面上有許多的教學書 籍、影帶以及訓練器材能夠提供民眾對各項運動的基礎認識。但是這些器材往往因為 過於靜態或是受限於器材本身的攜帶性不足,造成民眾無法在現場即時察覺動作上的 錯誤,或是某些細部動作的變化。因此我們提出一個結合體感網路以及雲端運算為基 礎的自我運動訓練系統,讓使用者能隨時隨地進行基礎訓練。我們以高爾夫運動為主 要對象,配合發展成熟的慣性感測元件偵測使用者的動作,並將資訊透過網路傳送至 雲端系統,其中處理了感測器的偏差校正以及分散式感測器的時間同步問題。接著為 了描繪出球桿的軌跡,對持續旋轉的感測器座標做處理讓資料表示在地球座標下。並 提出了高爾夫揮桿動作的五個分解階段,利用球桿上的感測資訊自動切割動作,最後 整合各種資訊提供使用者關於擊球速度、揮桿節奏以及揮桿軌跡資訊,讓打者藉由這 些資訊自行修正動作。
Golf Swing Analysis Using Body Sensor Networks
Student: Bo-Chun Chiu Advisor: Dr. Chih-Wei Yi Dr. Chien Chen
Department (Institute) of Network Engineering National Chiao Tung University
Abstract
Having a good foundation for action is necessary during athletics learning, but it is easily lead to the flaw of basic action by self training. Nowadays, these are many teaching books, videos and training equipments can provide people with a basic knowledge of athletics. But these devices lack for portable, so that the public can not find out the error or different of the detail of action immediately at the scene. Therefore, we propose a golf self-training platform based on body sensor networks and cloud services, so that user could practice anytime, anywhere. We use inertial sensors which placed on golf club and human body to detect user’s motion and transmit the data to cloud server through wireless connections. The server corrects the bias of sensors and handles time synchronization problems. Then, to depict the trajectory of golf swing, we calculate the rotation matrix which transforms readings from the sensor frame to the Earth frame. The swing is segmented into five actions based on the inertial data from the sensor attached to the golf club. In the end, we provide users information about the correctness of their swing such that user could correct their motion.
致 謝
經過兩年半的時間,包括中間轉換研究方向,最後終於完成碩士論文。在這期間遭 遇到不少研究問題,尤其要感謝指導教授易志偉老師,在期間內指出了許多方向上的 錯誤以及該如何分析問題,中間還抽空出車陪我們收集資料,到最後還要為我糟糕的 文筆及表達能力操心,也感謝老師在日常生活中給我們的驚喜及幫助。在剛換到新的 研究領域時,感謝宗隆及釗民學長給了我許多的幫助。再來要感謝實驗室的學長、各 位同學及學弟妹,讓我的實驗室生活過的很愉快。最後謹以這篇文章感謝供我讀書的 父母,讓我能夠完成求學中最大的一步。
目 錄
摘要 · · · · i
Abstract · · · · ii
致謝 · · · iii
目錄 · · · iv
圖目錄 · · · vi
表目錄 · · · viii
符號說明 · · · ix
一 緒論 · · · · 1
1.1 運動學習輔助系統 . . . 1
1.2 高爾夫運動 . . . 2
1.3 無線感測網路發展 . . . 3
1.4 研究方法 . . . 3
1.5 整篇架構 . . . 4
二 文獻回顧 · · · · 5
2.1 以影像為基礎的動作辨識 . . . 5
2.2 慣性感測器簡介 . . . 6
2.3 慣性感測器的應用在人體姿態辨識 . . . 7
2.4 陀螺儀應用 . . . 7
2.5 利用影像資訊輔助感測器進行揮桿動作的辨識 . . . 8
三 感測器校正與多感測器對時 · · · 11
3.1 感測器資訊 . . . 11
3.2 感測器偏差校正 . . . 14
3.2.1 最小平方法 (Least Square Method,LSM) . . . 16
3.3 時間同步 . . . 17
3.4 以 Best Effort 為基礎的時間同步 . . . 19
四 軌跡重繪 · · · 23
4.1 座標定義及旋轉矩陣 . . . 23
4.2 動態座標系統轉換 . . . 25
4.3 軌跡計算 . . . 26
五 揮桿動作分析 · · · 30
5.1 揮桿動作各階段定義 . . . 30
5.2 動作切割 . . . 32
5.3 動作比對 . . . 37
5.3.1 速度 . . . 37
5.3.2 肢體動作順序的比對 . . . 37
5.3.3 動作節奏 . . . 38
六 實驗結果 · · · 41
6.1 系統架構 . . . 41
6.2 設備畫面 . . . 41
6.3 實驗結果 . . . 44
七 結論 · · · 62
參考文獻 · · · 63
圖 目 錄
圖 1 高爾夫揮桿連結模型 · · · · 9
圖 2 量化模型 · · · 10
圖 3 手腕各階段轉動角度分群 · · · 10
圖 4 3DM-GX1 · · · 12
圖 5 3DM-GX3-25 · · · 12
圖 6 GX3 封包格式 · · · 13
圖 7 GX3 讀數範例 · · · 13
圖 8 球體模型偏差示意圖 · · · 15
圖 9 尋找偏差係數 · · · 17
圖 10 LSM 找出之偏移球體 · · · 18
圖 11 校正前 · · · 18
圖 12 校正後 · · · 19
圖 13 無延遲下多感測器時間軸 · · · 19
圖 14 實際下多感測器時間軸 · · · 20
圖 15 感測器時間同步 · · · 22
圖 16 GX3 三軸方向 · · · 23
圖 17 三軸旋轉方向 · · · 24
圖 18 揮桿過程的座標軸轉換 · · · 26
圖 19 軌跡描繪流程圖 · · · 28
圖 20 揮桿平面 [1] · · · 28
圖 21 揮桿軌跡 · · · 29
圖 22 高爾夫揮桿分解 [2] · · · 31
圖 23 揮桿動作分解 [3] · · · 32
圖 24 揮桿動作分解圖 [4] · · · 33
圖 25 揮桿動作球桿波形 · · · 34
圖 26 起桿及上桿中點判斷 · · · 35
圖 27 頂點及下桿中點判斷 · · · 35
圖 28 擊球點判斷 · · · 36
圖 29 揮桿動作波形切割 · · · 36
圖 30 肢體動作順序分布 [5] · · · 38
圖 31 上桿時間 [6] · · · 39
圖 32 下桿時間 [6] · · · 39
圖 33 上下桿時間比例 [7] · · · 40
圖 34 上下桿時間比例 · · · 40
圖 35 系統示意圖 · · · 42
圖 36 3DM-GX3 · · · 42
圖 37 高爾夫球桿 · · · 43
圖 38 電源包 · · · 43
圖 39 配戴在手腕 · · · 44
圖 40 配戴在腰部 · · · 44
圖 41 起桿及上桿中點影格 · · · 47
圖 42 上桿頂點及下桿中點影格 · · · 47
圖 43 擊球點影格 · · · 49
圖 44 同步前時間分佈 · · · 49
圖 45 同步後時間分佈 · · · 50
圖 46 揮桿動作切割 · · · 61
表 目 錄
表 1 使用的封包格式 · · · 14
表 2 揮桿動作分解表 · · · 33
表 3 時間同步結果 · · · 45
表 4 動作分段驗證 · · · 48
表 5 揮桿時間及速度 · · · 51
符號說明
a, b, c, . . . 實數或純量 x, y, z, . . . 向量
A, B, C, . . . 矩陣
g0 感測器靜止狀態下的讀數 G =∥ g0 ∥= 9.8m/s2 重力加速度
Lx, Ly, Lz 感測器的線性比例偏差 bx, by, bz 感測器的中心值偏差 g = a− g0 g-sensor 讀值模型
g′ 未校正前之 g-sensor 讀數 g 校正後之 g-sensor 讀數
a 加速度
v 速度
d 位移
aji 在 ti 時的資料在 j座標下的加速度 ωx, ωy, ωz 角速度
ϕ, θ, ψ 尤拉角
MB1→B2 從 B1 基底轉至 B2 的座標轉換矩陣 Rϕ,Pθ,Yψ X,Y,Z 軸的旋轉矩陣
E 地球座標(Earth frame)
B 人體座標(Body frame)
S 感測器座標(Sensor frame)
t(k)ij 以第 k個 sensor 的時間軸為基準,第 i個 sensor 的第 j筆資料時間 Tij 系統收到第 i個 sensor 的第 j筆資料的時間
∆Ti 第 i個感測器的時間序列中與系統時間最小的差值
一 、 緒論
近年來國人對於健康養生越來越重視,除了食用有機養生食品、少鹽、少油等飲食 方面的注重,也越來越多人開始固定進行運動,例如︰跑步、游泳、打籃球等等,但是 上述劇烈運動對於受過運動傷害或是上了年紀的人並不適合。相對的,他們會選擇一 些靜態的運動,例如高爾夫球或是太極拳等,一些比較不需要跟旁人推擠,偏向個人 自主類型的運動,來避免運動傷害。
在政府提倡國人運動的「333」原則下,希望每週運動 3 次,每次運動 30 分鐘,心 跳每分鐘達到 130 次,許多運動休閒與互動遊戲的相關產業逐漸地蓬勃發展。然而根 據統計只有 25% 的民眾有規律運動的習慣,其中一個主要原因是沒有一套工具軟體可 以輔助使用者學習,使用者甚至不知道自己運動姿勢是否正確。
有鑑於此,希望透過有別於以往以攝影機拍攝,由於器材昂貴、過於繁瑣的操作,
或是不熟悉攝影造成的人為失誤等不利條件,或是只能以死板的訓練器材固定運動姿 勢的方法,利用目前發展成熟的無線感測網路,讓使用者擺脫以往受到的限制,不需 要侷限於固定的場地,或是需要大範圍空間來擺放訓練器材,也能夠進行自我訓練。
1.1 運動學習輔助系統
在運動學習方面市面上也有不少針對不同運動的相關輔助學習系統,從傳統的書 籍、影帶,或是一些類似保齡球手套、高爾夫球揮桿姿勢矯正器的局部固定器材,到利 用虛擬實境(Virtual Reality, VR)來紀錄並重現八卦掌的各種動作讓學習者模仿 [8]。
在荷蘭也有以慣性感測器跟生物力學模型加以結合,生成精確的 3D 動作與運動學輸 出,並藉此研究划船的運動學以及降低受傷的風險。也有以高速攝影機搭配肌電圖以 及加速度等人體感測元件,對射飛鏢以及籃球運動進行多方面的分析來找出特定動作 的特徵,以方便初學者學習 [9] [10]。在美國也有專業的虛擬高爾夫訓練場所,利用攝 影機捕捉揮桿動作,輔以投影螢幕模擬顯示球飛行距離及方向的情況。
1.2 高爾夫運動
早年高爾夫運動被視為是一種貴族運動,只有少部的權貴人士能夠進行。但是隨著 經濟的蓬勃發展,以及高爾夫運動本身不會有劇烈碰撞或者造成心跳、血壓的上升,
但是又能有效的紓展全身的肌肉,以及在球場中能達到健走的目的。基於上述的特性,
高爾夫運動吸引了越來越多的運動人口投入,除了社會人士,也有許多學校開設高爾 夫教學,甚至校內就有自己的練習場,更由於女子高球的球后曾雅妮持續在國際發光 發熱,更是吸引了一般大眾甚至包括政府對這門運動的重視,因而坊間的影片、書籍 教材等也越來越豐富。
根據台灣高爾夫協會官方數據指出,台灣高爾夫人口在 2006 年已達 200 萬並逐年 以 15% 增加,依據 2010 年度《朝向白皮書——中國高爾夫行業報告》指出,中國從事 高爾夫運動的人口達到 33.3 萬人(不包含休閒的打者),比起前一年成長了 11% [11]。
在美國方面,根據 National Golf Foundation(NGF) 報告,在 2010 有約的兩千六百萬 民眾從事高爾夫球運動 [12]。
由於高爾夫是偏向個人的運動,因此打者理論上是可以自行在家實施自我訓練,但 是高爾夫球的入門門檻偏難且指導費用偏高,不是每個人都負擔得起。有鑑於此,有許 多廠商開始開發各種的運動訓練工具,包括錄製選手們的動作影片或者製作標準動作 的 3D 動畫,讓人們藉由觀看錄影帶來模仿選手的動作。另外有運動器材製造商推出簡 易型的推桿練習器具及大型的揮桿訓練器材。但是獨自一人進行練習的效果有限,更 甚者若動作有誤但自己卻沒發現,更會造成運動傷害而不自知。
有鑑於此,為了讓更多新接觸高爾夫球運動的民眾能夠熟悉這項運動,希望開發出 一套能夠讓使用者進行初步的自我訓練,能夠提醒使用者一些錯誤點,以及如何進行 改善。如此一來,當使用者能夠順利的完成運動的初級訓練,也能夠確定自己對這個 運動是否真的是有興趣或是只是一時興起,以避免浪費不必要的龐大支出。
1.3 無線感測網路發展
無線感測網路 (Wireless Sensor Network, WSN) 是藉由大量佈署各種不同感測元件 來監控環境變數的智慧系統,可監控範圍包括溫濕度、動作、車流量等等,在監控的同 時可對資料即時處理並將結果反應出來。在以往由於各種感測元件體積過於龐大,或 是感測精度不夠準確以及耗電量的問題,所以無法普及到一般的消費大眾環境。但是 因為近年來其相關研究已經漸趨成熟,各種感測元件的體積、成本等等都已經大量下 降。因此近年來藉著能大量佈署、低成本、體積小、低耗電、具即時性的特性,WSN 能夠快速發展相關研究也陸續增加,加上感測器內部的嵌入式系統發展逐漸成熟,已 可做到穿戴在身上並不會造成穿戴者的不適。
基於以上基礎,在 02 年 Prof. Guang-Zhong Yang 將 WSN 延伸進而提出 Body Sensor Network(BSN)的概念 [13]。BSN 基於 WSN 的體積小、低耗電量與即時性的 特性,讓使用者身上穿戴一些感測元件,持續發送人體動作的感測資訊,即可遠距離 即時監控穿戴者的狀況。
慣 性 感 測 元 件(Inertial Measurement Unit, IMU)是 目 前 非 常 熱 門 的 研 究 議 題,他 並 非 單 指 某 一 種 感 測 器,一 般 而 言 是 包 括 三 種 不 同 的 感 測 器 ︰ 加 速 度 計
(Accelerometer)、陀螺儀(Gyroscope)、磁力計(Magnetometer)。加速度計可以通 過電壓的改變來測量某個方向的加速度值,陀螺儀可以測量物體轉動的角速度,磁力 計可以透過內部電子羅盤確認物體的方向。
1.4 研究方法
以往對於運動訓練輔助的研究方法都是以攝影機為主來紀錄使用者整體的動作資 訊,如身體的擺動、上下姿態和轉身的時間點等等。傳統以攝影機來紀錄自身動作之後 與另一次的動作,也許是自身上次的動作或是職業選手的動作來做比較,但直接以視 覺觀察上的缺點、指導者對於觀察上的限制、以及對於高爾夫揮桿技術重要的細部動 作之建立並不完整。現下也有一些以感測器偵測高爾夫球運動的相關技術 [3] [14] [15],
但幾乎都是針對某個部位或是只有球桿的揮動來進行比對,或是針對小推桿動作將加
速度及角速度資訊透過 Kalman Filter 計算出較精確的揮動角度及位移 [16],而沒有整 合出一個完整的高爾夫球揮桿訓練系統。
在本研究中希望完成一個能夠憑藉感測資料偵測使用者的動作以及時間點正確與否 的訓練系統。這篇研究中主要注重在開發藉由慣性感測元件來自動分析高爾夫球揮桿 動作的系統,讓打者即使身在戶外也能夠即時分析當下的揮桿資料,在研究中主要碰 到的問題包括︰如何為高爾夫揮桿動作的定義、分散式的感測器資料收集以及處理,
揮桿軌跡重建等等。在後續章節會陸續描述如何依據高爾夫球專家研究來分割一個完 整的揮桿動作、利用 best effort 來處理分散式感測器之間的時間同步問題、重建軌跡中 該如何處理持續旋轉的座標軸,以及最後該如何為揮桿動作評分。
我們最後完成了一個在球桿的桿頭、手腕以及腰部三個部位上安裝慣性感測元件,
利用座標系統轉換將不同座標下的感測資訊統一在地球座標下表示,之後利用球桿上 的加速度計算出球桿揮動的軌跡,並以球桿以及身上的感測資訊將高爾夫揮桿動作切 割成五個時期,然後依照普遍建議的起桿與下桿瞬間各部位動作的順序正確與否、上 下桿節奏以及球桿揮動過程形成的揮桿平面,來進行一個揮桿動作整體的流暢度評比,
讓打者能夠自我檢視揮桿過程的缺點並加以改善。
1.5 整篇架構
第二章介紹以往文獻的作法,第三章敘述資料收集流程以及處理,包括偏差值校正 及分散式感測器的時間同步。第四章敘述如何重建揮桿軌跡,包括座標軸定義,旋轉矩 陣以及軌跡計算。第五章敘述揮桿動作定義以及如何分析。第六章敘述實驗結果,包 括系統架構、使用的設備展示以及初步的揮桿動作評比。第七章是我們的結論以及未 來工作。
二 、 文獻回顧
人體運動姿態追蹤相關的研究相當多,大致上可以區分成以影像辨識以及感測資訊 辨識兩種。而利用感測資訊辨識近年來由於感測器的發展,相關研究也陸續增加,而 主要利用的資訊有兩個:透過 g-sensor 得到的加速度以及陀螺儀量測的角速度,研究 範圍也從最早的偵測靜態姿態到運動姿態追蹤。本章節內容大致如下:2.1 介紹用影像 辨識處理揮桿軌跡的方法,2.2 介紹慣性感測器的原理及用途,2.3 介紹將加速度計在 人體姿態辨識的應用,2.4 介紹避免因為加速度計二次積分造成的誤差,只以陀螺儀配 合球桿及肢體長度計算揮桿動作的軌跡,2.5 介紹結合加速度計及陀螺儀,分析揮桿過 程中手腕的轉動程度。
2.1 以影像為基礎的動作辨識
以往針對動作辨識的作法都是以攝影機當做影像來源,後續經過各種影像處理步驟 來得到球桿的軌跡資訊。一般來說,都是以複數個攝影器材擺放在不同的角度以取得 全方位的動作資訊。利用影像資訊重建人體動作模型的困難點在於影像資訊的高複雜 度,尤其是在多個攝影鏡頭下取得前景及景深的資訊再進行人體姿態的捕捉。
在 [17] 中,R. Urtasun 等人提出了在單一視角的影像資訊下,利用預先收集大量的 影像資訊,透過人工觀察取出幾個重要的關鍵畫面的資訊,並利用內插法取得相同的 取樣數,再經過 PCA 去除重複的資訊降低維度,再用 Hill-Climbing Algorithm 計算人 體運動姿態的參數再結合人體動態模型,來重建出 3D 高爾夫揮桿動作,避免了在複數 攝影機下的高計算複雜度。
N. Gehrig 等人在 [18] 中,在 YUV 空間下,將前後格影像利用二元遮罩 (Binary mask) 取出前後影格中移動的部分,透過 Canny edge detection(尋找邊緣的演算法) 將 桿身邊緣明顯化,找出桿身後在 2D 平面跟隨桿頭的移動繪出軌跡。此方法只能從正面 觀看平面的軌跡,並且對於人體或是球桿的轉動並無法得知。
由於單純以影像擷取動作難以偵測轉動,J. Myersa 等人在 [19] 研究中在打者身上 幾個重要的關鍵點如:桿頭、肩膀、手軸等部位貼上反光亮片,透過多部高速攝影機在
各角度記錄動作,在後端處理就能夠輕易地找出每一個點在過程中旋轉的角度、時間 等因素,因此對於擊球的分析較為容易。
透過影像處理的機制雖然能夠較為正確的取得運動的軌跡,但是對於身體細部的扭 動或是旋轉則較難以偵測,一般來說都是以固定場所在多個方位安裝複數攝影機來記 錄資訊,或是必須請專人幫忙操作攝影機,若只想使用一台攝影器材重建 3D 的軌跡,
則必須對拍攝地點先收集資料,讓後端處理能夠分辨出前景及景深資訊,因此對於室 外球場必須移動的情況下在追蹤動作上是非常困難。
2.2 慣性感測器簡介
市面上有包括壓力計、溫溼度計、肌電計等各式各樣的慣性感測元件,本小節會依 序介紹在實驗中會用到慣性感測元件,並簡述各個元件的原理及應用。
加速度計︰主要用來測量物體的加速度,MEMS(Micro Electro Mechanical Systems) 加速度計利用半導體材質受到加速度力的作用時電阻率會產生變化的特性,透過這種 隨壓力大小變化的壓阻效應,透過電路讀取電壓值在轉換成加速度。原始讀數為電壓 值,透過 A/D 轉換器轉成以 m/s2 為單位。根據上述原理,可以生產單軸、雙軸到三 軸的加速度計,在多軸下必須注意軸之間是否垂直。加速度計最早見於現代汽車的安 全氣囊系統上,以偵測碰撞發生時車輛突然的減速度。另外也有將加速度計與陀螺儀 一同使用於運用個人定位導航系統的研究,由於全球定位系統 (GPS) 必須依靠接收衛 星訊號才能使用,如果裝置進到如室內、隧道等遮蔽衛星訊號的位置,或是因天候造 成衛星訊號減弱,無法繼續利用 GPS 確定目前所在位置,就可以利用加速度計結合收 到的 GPS 位置來推斷位置 [20]。
陀螺儀︰陀螺儀是利用角動量守恆原理來量測物體轉動的角速度或是角位移,最早 是用於航海或飛行器的導航,優點是不會受到擺放位置、磁場等影響,能夠穩定的輸 出角動量。隨著 MEMS 技術的發展,從傳統的機械式陀螺儀進步到可以在微型晶片上 製造,從只能量測單軸轉動到能夠同時量測三個垂直軸轉動的三軸陀螺儀。MEMS 陀 螺儀是利用科氏力 (Coriolis) 原理把角速率轉換成特定感應結構的直向位移,該位移會 引起晶片上電極的電容變化,進而由電路輸出電容變化並取得變化量資訊,一般來說
可以測量到度/秒為單位的數值。目前陀螺儀主要用途在載具方位確認、精密電子產品 的翻落偵測等等 [21]。
磁力計︰以地球磁場原理量測與地磁方位的夾角,感測數值以高斯為單位。可利用 三軸磁力計與三軸加速度計來實作一個電子羅盤,用磁力計測量各軸的磁場數據計算 方位角,在三軸加速度計測量重力方向來計算傾角,結合上述二項計算出三軸分別與 北極、東方以及重力加速度方向的夾角,可用於確認目前裝置的所面朝的方向。雖然磁 力計能夠直接表示儀器目前的方位,但是由於其必須利用霍爾效應感應地磁大小,當 儀器在快速旋轉或移動,磁力計的反應會明顯跟不上加速度或是角速度的變化 [22]。
2.3 慣性感測器的應用在人體姿態辨識
隨著慣性感測元件在微機電方面的發展,除了原本應用在車輛或是醫療器材等較為 昂貴的領域之外,也逐漸應用在個人姿態辨識領域。M. J. Mathie 在 [23] 中實做一個 以單加速度計進行遠距看護的系統,並對一般慢性病人的日常動作進行劃分,例如從 坐姿到站姿或是平躺的方向,針對各種姿態設定合適的加速度值門檻,以便追蹤病人 目前的狀況,當加速度值在短時間劇烈變化,可以判斷出病人是否不慎跌倒以便快速 通知看護人員進行協助。
D. Fontaine 等人在 [15] 中提出在人體如手臂或是腿部上安裝加速度計,透過二次 積分得到位移量,藉由 3D 模型追蹤人體的動作。由於只使用了加速度計,因此對於物 體的轉動並無法偵測,只能針對移動部份進行追蹤。
K. King 等人在 [24] 的研究中提出以慣性感測器取代昂貴而且攜帶不便的高速攝影 機來偵測揮桿動作。這篇文章中將球桿的握把改造成中空,並且可以旋入自製的三軸 加速度計以及陀螺儀,藉此偵測高爾夫的揮桿動作的特徵,但是這篇文章最後的分析 結果只給予角速度的波型變化,並說明在上桿頂點會有短暫地暫停。
2.4 陀螺儀應用
陀螺儀由於有著不受物體振動以及移動速度影響的特性,因此 [25] [26] 將陀螺儀安 置於跑步鞋上。該研究認為在跑步的過程中,導致受傷的原因部分是由足部過於內旋,
所以藉由陀螺儀的特性,偵測在跑步的過程中腳掌內旋、外旋以及前傾的程度,以避 免跑者因不當的動作造成的傷害。
Lee 等人在 [27] 中在雙腳大腿及小腿上綁上加速度計及陀螺儀,透過感測資訊找出 人體走路時的特徵參數,例如每一步的週期、姿態、後腳彎曲的角度及步伐大小等等。
K. Watanabe 跟 M. Hokari 認為利用加速度計來計算位移量由於需要進行二次積 分,因此會造成誤差偏大,因此提出以陀螺儀測量的角速度為基礎來計算運動員揮桿 軌跡 [28]。他們將人體部位分割成總共 12 個骨架,每個骨架都假設為不可彎曲及長度 固定,並假設每個區段的轉動方式是將區段的頭固定住在旋轉的方式。之後依據欲測 量的部位不同會合併幾個骨架為同一區段,之後在不同的區段上安裝陀螺儀。圖 1的 OF 為將雙腳的大腿及小腿合併的區段,FW 為臀部至腰部,WS 為腰部至肩膀,SH 為頭部。首先他先測量出 l0 到 l3 各個區段的長度,以及起始動作時身體區段與垂直軸 的夾角 θ1 到 θ3,然後計算出每一個區段在起始預備位置的座標。當人物開始移動後,
各個區段的陀螺儀會持續回傳三軸的角速度,當動作結束後依據下列公式將角速度積 分出的轉動角度,θ 為角位移,ω 為角速度,n 代表第幾個感測器。
[θxn(t), θyn(t), θzn(t)] =
∫
[ωxn(t), ωyn(t), ωzn(t)]dt
在分別計算各區段各自的轉動情形後利用矩陣乘法累計轉動的角度,最後計算出轉 動後各個區段末端的座標。當想知道某一段末端的位置,則由下至上將該段之前各區 段的末端座標加總,最後加上本身區段的座標,即可計算出最後的位置座標。這個方 法雖然避免了加速度計在雙重積分計算下的誤差值,但是需要預先收集的資訊過於繁 複,包括受試者得依據骨架分段測量各段的長度,就起桿預備位置時得測量與垂直軸 的夾角,必須準備好上述的資料受試者才能開始進行動作,因此對於必須重複揮桿的 打者來說非常不方便。
2.5 利用影像資訊輔助感測器進行揮桿動作的辨識
R. Burchfield 跟 S. Venkatesan 希望以較為低價的感測器來計算高爾夫推桿中球 桿後拉的角度,但是較為低價的陀螺儀其感測的密度與精確度都不夠,因此提出以 Kalman filter 來提高計算角位移的精確度 [16]。該研究以一個鐘擺模型模擬高爾夫推
圖 1: 高爾夫揮桿連結模型
桿,以鐘擺柱為球桿,震幅為拉動幅度,並在鐘擺柱上安裝感測元件,透過鐘擺穩定的 控制後拉角度,來驗證其角位移的精確度。但是該研究由於限制了揮動的速度以及模 擬球桿只在平面上移動,因此如果是在實際揮桿的高速移動及三維空間的轉動下,是 否能維持角位移的精確度還有待驗證。
H. Ghasemzadeh 等人更進一步的除了利用陀螺儀,加入了三軸加速度計來評量 一個高爾夫球揮桿的好壞 [3]。在這篇研究中,提出了將揮桿動作分割成四個階段︰
Takeaway, Backswing, Downswing, Follow-through,並著重在揮桿中各個過程中手腕轉 動的程度。研究中,打者會在身上安裝總共五個感測器,分別在接近桿頭位置、球桿握 把、右手手腕、左手上臂以及腰部。使用的感測器為 XBow 生產的 TelosB,可以透過 ZigBee 傳輸三軸加速度以及三軸角速度資料,取樣頻率為每秒 50 筆。當資料收集完 後,經過 Principal Component Analysis(PCA) 以及 Linear Discriminant Analysis(LDA) 處理資料並取得特徵值,整體流程如圖 2,配合一旁的錄影資訊以人工來判斷四個階段 的時間來將揮桿動作分割。再來藉由預先收集好的手腕固定轉動 20°、40°、60° 的資料 當作分群母體,來判斷打者該次的揮桿過程中,手腕在各個階段轉動的角度座落在哪 一群中,並將結果輸出給打者知道。
但是這個方法只著重在手腕的轉動,並沒有監控整體動作的協調性,並且必須以人 工方式搭配攝影器材來分割揮桿動作,處理每一次揮桿的時間過長。該研究中的取樣
圖 2: 量化模型
圖 3: 手腕各階段轉動角度分群
頻率為每秒 50 筆,由於該實驗中並沒有實際擊球且沒有說明一次揮桿動作經過的時 間,但若是實際揮桿擊球的狀況下,50Hz 的取樣頻率是不夠的。
三 、 感測器校正與多感測器對時
基於 WSN 的基礎,在 02 年 Prof. Guang-Zhong Yang 將 WSN 延伸進而提出 Body Sensor Network(BSN)的概念 [13]。BSN 基於 WSN 的體積小、低耗電量與即時性的 特性,讓使用者身上穿戴一些感測元件,即可遠距離即時監控穿戴者的狀況。
感測器的應用概念也在產業界快速的興起,許多手機開發廠商,例如︰ Apple、
HTC 等,都相繼在手機上內建加速度計、光感應計、距離感測器等各種感測器,方便 手機能夠針對使用者的手持方向等進行相對應的反應,包括︰多點觸控介面、偵測機 身目前是直立或是橫放狀態來自動改變顯示方向。電玩主機廠商方面,自從任天堂公 司在 2006 年推出 Wii 後,藉由內含加速度計的 Wii Remote 來辨識動作,讓玩家能藉 由動作來進行遊戲,在當時造成極大的轟動。其後另外兩間主機廠商 Sony 及 Microsoft 也相繼在 2010 推出各自的體感遊戲控制器,其中 Microsoft 在 Xbox 360 上推出了完全 不需要手持控制器的 Kinect [29],透過類似網路攝影機的感應裝置,利用三個不同的鏡 頭構成 3D 深度感應器,來捕捉使用者的動作,讓使用者宛如身在遊戲中一般。其他類 似技術也有用智慧型手機上的單一加速度感應器來做大門或是車門鎖的鑰匙,只要手 持裝置畫出設定好的圖案就可開啟 [30]。本章節內容如下:3.1 介紹所使用的感測器,
以及它使用的資料格式,3.2 敘述感測器讀數偏差的問題及解決方法,3.3 描述多個感 測器下的時間同步問題,3.4 提出在分散式的感測器下,如何利用感測器的計時器及主 機時間將兩個感測器的時間軸對齊。
3.1 感測器資訊
研究中使用的感測元件為 MicroStrain 公司生產的 3DM-GX3 圖 5,它是一個高效 能的微型慣性感測元件,其內建有三軸加速度計、三軸陀螺儀、三軸磁力計感應元件,
並有內嵌的微處理器執行特殊的演算法提供穩定的方位以及慣性感測資訊,圖 6為 3DM-GX3 傳輸的封包格式。
3DM-GX3 能夠提供我們足夠的資訊來判斷使用者目前動作情況,且大小為 44 mm x 25 mm x 11 mm,而重量只有約 18 公克,其大小與重量比早前同公司生產的
圖 4: 3DM-GX1
圖 5: 3DM-GX3-25
3DM-GX1 更加適合穿戴在人體。圖 7為 3DM-GX3 讀數範例,上圖為直線移動讀數,
由於是沿 X 軸方向前進及後退,所以前後兩個 X 軸波形為反方向,Y 軸則是因為地心 引力影響維持在 1G,而陀螺儀讀數則是因沒有旋轉動作讀數應為零,其微小數值為人 為移動造成的影響。下圖為繞著 X 軸轉動讀數,由於是在原點垂直轉動,除了 X 軸受 到地心引力影響讀數為 1G,其餘兩軸的誤差為人為影響,陀螺儀讀數可看到 X 軸角速 度的明顯變化。
圖 6: GX3 封包格式
圖 7: GX3 讀數範例
在本研究中,3DM-GX3 的取樣頻率設定為每秒 100 筆資料,其中每筆資料以 圖 6的項目為基礎,額外再加入需要的項目,表格 3.1為使用的格式︰
1. 從感測器第一筆資料起算的時間戳記
2. 三軸各自的加速度值,以重力加速度 (9.8m/s2) 為單位
3. 三軸各自的角速度值,以每秒弧度 (radius/s) 為單位
4. 封包到達的系統時間
5. GX3 本身的時間 tick 數,1 tick=625001 秒
6. 地球座標轉到感測器座標的轉換矩陣
表 1: 使用的封包格式
編號 數值 單位
1 時間戳記 秒
2 X 軸加速度數值 G 3 Y 軸加速度數值 G 4 Z 軸加速度數值 G 5 X 軸角速度數值 弧度/秒 6 Y 軸角速度數值 弧度/秒 7 Z 軸角速度數值 弧度/秒 8 封包到達的系統時間 tick 9 GX3 本身的計時數 tick 10-18 旋轉矩陣 None
3.2 感測器偏差校正
由於感測元件會隨著時間或電壓大小的變化,導致其量測的基準點會有些許偏差,
該誤差會導致計算物體位置的累計誤差加大。假設我們將感測器靜止擺放一段時間,
由於其中心值的偏差,會導致加速度數值的為非零讀數,若是以該數值經過積分計算 成位移,會導致本應維持在原點的物體,其位置會到處飄移。由於是三軸的資料並且 我們知道在理想的靜止狀況下,大量三軸的加速度值會形成一個半徑為 1 的球體模型,
圖 8是較為明顯的示意圖,下方的球體為無偏差的理想狀態下球體,上方的點為感測器 讀數,較為透明的球體為最逼近感測器讀數所形成的球體,可以清楚看到感測器的中 心點明顯偏離。
圖 8: 球體模型偏差示意圖
為了修正這種偏差我們使用了以最小平方法找出的球體迴歸模型來校準。其計算流 程如下,首先假設在靜止狀態下測量出的重力加速度讀值為 g′,原始的重力加速度為 g,在感測器沒有偏差的正常情況下 ∥ g’ ∥=∥ g ∥= 1,但是在感測器有偏差下 g’ 會有 個偏移量,我們假設該偏移量可用下列算式表示,
g′ =L(g + b),
g′ =
g′x gy′ gz′
,L =
Lx 0 0 0 Ly 0 0 0 Lz
, g =
gx gy gz
, b =
bx by bz
L 為感測器的線性比例偏差,b 為感測器的中心值偏差,設三軸中心點各為 c1, c2, c3 則 偏移模型可以下列公式表示,r 為球體半徑。
(Lx(x− c1))2+ (Ly(y− c2))2+ (Lz(z− c3))2 = r2
將上式展開並先假設三軸各自的線性比例偏差 Lx = Ly = Lz = 1,先計算出 c1, c2, c3 及 r。
2xc1+ 2yc2+ 2zc3+ r2− c21− c22− c23 = x2 + y2+ z2
由 於 r2 − c21 − c22 − c23 這 些 變 數 為 次 方 項,無 法 簡 化 成 線 性 迴 歸,因 此 令 一 變 數 c4 = r2− c21− c22− c23 將式子簡化成
2xc1+ 2yc2+ 2zc3+ c4 = x2+ y2+ z2
3.2.1 最小平方法 (Least Square Method,LSM)
Least square method 為一種數學最佳化技術,當一組數據無法解出唯一解時,透過 計算出最小化誤差的平方和來找到一組函數與數據最為匹配,但是該函數並不會通過 所有的資料點,只是一個逼近所有資料下的近似解。
為了修正如上述的偏差值,因此我們以多筆感測器的讀數形成一球體多項式,並且 因為直接用多項式進行計算過於繁瑣,因此將多項式改成以 Ax = b 的矩陣形式表示,
2x1 2y1 2z1 1 ... ... ... ...
2xn 2yn 2zn 1
c1 c2 c3 c4
=
x21+ y12+ z12 ...
x2n+ yn2 + zn2
在矩陣表示法下,欲求得最佳解只需要下列算式即可。ˆx 即為最佳解。
ATA^x = ATb => ^x = (ATA)−1ATb
由上述可知,在靜止下收集越多不同角度的資料則求出的偏移量就越精準。修正之 流程圖如圖 9。
圖 9: 尋找偏差係數
找 出 c1, c2, c3 及 r 後,再 帶 入 原 式 重 複 上 述 步 驟 計 算 出 Lx, Ly, Lz。最 後 以
g =L−1g’− b 即可扣除這些偏差值的因素,得到接近實際的重力加速度 g。圖 11為校
正前在不同擺放角度靜止下的加速度,最上方的線為三軸加速度平方根,在靜止狀態下 應保持為 9.8m/s2 但由於有偏差值影響,可以看到在不同角度下三軸合力會在 9.8m/s2 上下飄移。圖 12為經過校正後的結果,雖然在某些角度下仍有些許的誤差,但可以看 到三軸合力較校正前更接近 9.8m/s2。
3.3 時間同步
感測器的時間同步在無線感測網路環境中已經是熟知的研究議題,在配戴多個感測 器的情況下,我們並無法確定每個感測器是保證在同一個時間點開啟,如此造成兩個感 測器間的時間偏差一般稱之為 offset,尤其是在以每秒 100 筆資料的快速取樣情況下,
只要差個 0.1 秒就是 10 筆資料的落差,而高爾夫揮桿又是一個屬於短時間的快速動
圖 10: LSM 找出之偏移球體
圖 11: 校正前
作,尤其是下桿部分,因此對感測器進行同步是很重要的要點。由於使用的 3DM-GX3 感測器屬於接收指令後,根據不同的指令以固定的時間間隔持續將對應於指令的感測 資料回傳,並不支援使用者自行在上頭撰寫程式以及彼此之間相互通訊,因此一般在 感測網路中以感測器相互溝通後在同一個時間點來同步時間的方法並不適用。在此我 們提出以主機接收到的時間搭配各自感測器上的計時 tick 數,計算出主機及感測器之 間的時間差,之後將多個副感測器時間軸對準到某一個主要感測器的時間軸。
圖 12: 校正後
3.4 以 Best Effort 為基礎的時間同步
在理想無任何延遲的狀況下,由感測器送出的資料封包會依序立即到達負責接收的 主機端,在這種情況下,可以很簡單的從主機端收到的時間來計算兩個感測器之間的 offset,如圖 13可以很輕易找出兩個感測器的差距並調整。
圖 13: 無延遲下多感測器時間軸
t(k)ij : 以第 k 個 sensor 的時間軸為基準,第 i 個 sensor 的第 j 筆資料的取樣時間。
Tij: 系統收到第 i 個 sensor 的第 j 筆資料的時間。
但是在實際環境中,由於封包在傳送的過程中會有延遲,因此封包不一定是按照固 定的時間差到達主機端,主機有可能會在同一個時間點同時收進多數個封包,並且每 個封包間的時間差並不固定,我們認為會造成這類延遲的理由有可能是傳送過程的延 遲,或是主機端暫存造成的延遲。
圖 14為兩個感測器傳輸下的假設情境時間軸,在後續內容我們將 Sensor 1 稱為主 感測器,Sensor 2 稱為副感測器,可以看出主感測器以及副感測器起始的時間點不同,
在傳輸過程中也會因為上述的理由,造成可能會在同一個時間點一起收進來好幾個封 包。
圖 14: 實際下多感測器時間軸
在發現上述情況後,我們提出以主機端收到的時間為中介,搭配感測器本身的計時 器來將副感測器往主要感測器的時間軸對齊的非即時同步方法。首先在接收完一個完 整的動作資訊後,在各感測器的記錄檔中每一筆資料會有感測器的時間戳記以及主機
收到的時間戳記,而後各感測器各自計算出主機時間與感測器時間的最小值,這個最 小值可以看成該感測器資料在與主機端之間的時間差,我們將主要感測器的時間差稱 為 ∆T1,副感測器的時間差稱為 ∆T2。
∆Tj = min
i (Tji− t(j)ji )
在取得 ∆T1 及 ∆T2 後,將 ∆T2− ∆T1 就可以得到副感測器與主感測器之間的時間 差,就可將副感測器的時間軸轉成主感測器的時間軸。
t(1)2 = t(2)2i + T12, T12 = ∆T 2− ∆T 1
在對齊到相同的時間軸後,必須將感測器的資料調整成是在同一個時間點開啟,一 般來說是將提早開啟傳輸的感測資料刪除,但是由於有多個感測器需要同步調整,因 此必須在副感測器全部調整完時間後,根據最慢開始傳輸的感測器時間軸來調整資料。
圖 15為以兩個感測器做一同步實驗測試結果,X 軸為時間,單位 0.01 秒,Y 軸為 感測器加速度讀數,單位為 G。實驗方法為將兩個感測器重疊擺放,之後同時給予感 測器一短暫振動,如此一來兩個感測器的數值波形應該是同時發生以及同時結束,但 是從前兩張波形可以很清楚看到,Sensor 1 以及 Sensor 2 的開始時間明顯有段差距。
因此以上述的流程計算過後,將 Sensor 2 的時間軸朝 Sensor 1 的時間軸對齊後再調整 資料,從第三張的結果可以清楚看出兩個感測器的波形已經完全吻合。
圖 15: 感測器時間同步
四 、 軌跡重繪
高爾夫揮桿動作中,桿頭在揮動過程形成的軌跡是本次揮桿好壞很重要的一個要 點。因此以感測資訊為基礎的揮桿軌跡還原是很動要的一環,在以感測資訊還原軌跡 中,最重要的是必須將在不同座標軸下的加速度透過旋轉矩陣轉至同一個座標軸後,
在以轉換後的加速度重建揮桿軌跡。本章節在 4.1 描述各個座標及旋轉矩陣的定義,
4.2 介紹在持續改變的座標下將資料轉回原始座標,4.3 描述如何用在固定座標下的加 速度資訊計算軌跡。
4.1 座標定義及旋轉矩陣
感測器座標為感測器本身目前所處的座標軸如圖 16,地球座標一般定義上以北極方 向為 x 軸,東邊為 y 軸,重力方向為 z 軸。由於感測器固定在球桿上,且感測器只能 回傳本身座標上的資料,因此當球桿揮動時,上頭的感測器座標也會跟著變動,為了方 便描繪軌跡,將感測器每次回傳的資料經由旋轉矩陣將其從感測器座標轉回地球座標,
並直接對地球座標上的加速度進行運算來得出這一筆資料在三軸各自的速度以及位移,
並在將其在三維空間上對每一筆的資料打點,之後將各點連成一條線以便觀察軌跡。
圖 16: GX3 三軸方向
以 Yaw, Pitch, Roll 定義旋轉矩陣
要描述一個物體在三維空間中的旋轉有著不同的方法,例如四元數、矩陣系統以及 尤拉角,我們採用以尤拉角定義的旋轉矩陣來表示桿頭目前的狀態。三維空間的旋轉
矩陣是由三個軸獨立的旋轉矩陣測滾 (Roll), 俯仰 (Pitch), 偏轉 (Yaw) 合併而成,分別 為繞著 X,Y,Z 軸旋轉,其旋轉方向則是依照右手定則,Roll 為繞著正 X 軸方向逆 時針旋轉(從正 Y 軸朝正 Z 軸方向旋轉),轉動的角度以 ϕ 表示,Pitch 為繞著正 Y 軸方向逆時針旋轉(從正 Z 軸方向朝正 X 軸方向旋轉),轉動的角度以 θ 表示,Yaw 為繞著正 Z 軸方向逆時針旋轉(從正 X 軸方向朝正 Y 軸方向旋轉),轉動的角度以 ψ 表示,示意圖如圖 17。
圖 17: 三軸旋轉方向
Roll, Pitch, Yaw 的旋轉矩陣分別以 Rϕ,Pθ,Yψ 表示
Rϕ=
1 0 0 0 cos ϕ − sin ϕ 0 sin ϕ cos ϕ
Pθ =
cos θ 0 sin θ 0 1 0
− sin θ 0 cos θ
Yψ =
cos ψ − sin ψ 0 sin ψ cos ψ 0
0 0 1
上述三個旋轉矩陣能夠將繞著該軸旋轉後的新座標讀取到的讀數轉換到舊座標。但 是要描述一個物體在三維空間的旋轉單靠一個軸的旋轉矩陣是不夠的,除了一般慣用 的 YPR 矩陣,PRP、YPY、. . . 等矩陣也被用在各種物理學說中,根據矩陣不可交換 的性質以及 YPR 的組合方式,總共有 12 種可能的表示方式能夠表達三維空間中的旋 轉。
在本論文中,我們採用了慣用的 YRP 順序結合三軸的旋轉矩陣 M,即是說先對 X 軸旋轉再對 Y 軸旋轉,最後是對 Z 軸旋轉,即可以將數據從目前的座標軸轉回旋轉之 前的座標軸。
M = Yψ∗Pθ∗Rϕ =
cos ψ cos θ cos ψ sin θ sin ϕ− sin ψ cos ϕ cos ψ sin θ cos ϕ + sin ψ sin ϕ sin ψ cos θ sin ψ sin θ sin ϕ + cos ψ cos ϕ sin ψ sin θ cos ϕ− cos ψ sin ϕ
− sin θ cos θ sin ϕ cos θ cos ϕ
由於在配戴身上的感測器時礙於位置導致感測器的方向無法統一,因此要將三個感 測器的資料從各自的感測器座標轉到地球座標,利用在靜止狀態下,紀錄當下從起桿 時的人體座標轉至地球座標的旋轉矩陣,該矩陣由 GX3 感測器利用 g-sensor 以及磁力 計測量各軸的磁場數據計算方位角,再以 g-sensor 計算各軸與重力方向的傾角,結合 上述二項計算出三軸分別與北極、東方以及重力加速度方向的夾角,再將角度套入 M 即可得到感測器轉換到地球座標的旋轉矩陣。在後續的揮桿數據陸續轉至起桿時的人 體座標後,再將數據統一從人體座標旋轉到地球座標上,以方便後續描繪軌跡時使用。
4.2 動態座標系統轉換
固定在球桿上的感測器在揮桿的過程中,由於隨著桿頭的旋轉及移動等一連串的動 作,感測器本身的座標軸會隨著改變如圖 18。若感測器測量的數值並不在同一個座標 軸上,就算是同一軸上讀取到相同的加速度,但實際上的加速方向也不一定相同,因 此勢必要將座標軸轉到同一個參考座標。由於旋轉矩陣需要三軸各自的角度變化量,
所以我們藉由陀螺儀量測的三軸角速度乘上每一筆數據的取樣時間間隔取得每一段時 間的角度變化量,再根據角度變化量得到轉換到前一個取樣時間的座標軸的旋轉矩陣,
利用這個旋轉矩陣就可以把感測器數據轉換到上一個時間點的座標軸,在利用上一個
圖 18: 揮桿過程的座標軸轉換
時間點計算的轉至起桿座標軸的旋轉矩陣再透過靜止時的旋轉矩陣轉換至地球座標後 進行軌跡計算。
aBn =Msn−1→BMsn→sn−1asnn Msn→B =Msn−1→BMsn→sn−1
asii 為第 i 筆資料在 si 座標軸下的加速度 Msi→sj 為從 si 座標軸旋轉至 sj 座標軸的旋轉矩陣
B 為起桿預備動作時的感測器座標軸,si 為時間點 i 時感測器所在的座標軸
4.3 軌跡計算
經過一連串的座標系的轉換後,首先須將轉到初始座標的加速度減掉靜止的重力加 速度得到不受地心引力影響的加速度值,加速度值進行一次積分得到揮桿速度,再經 過一次積分得到揮桿位移來完成軌跡重建。我們假設起始位置時的位移量及速度皆為
0,∆t 為每一筆取樣資料的時間差,由於實驗中取樣頻率為 100Hz,因此 ∆t 固定為 0.01,則可以下列公式計算位移量
vi = vi−1+ ai−1∆t
di = di−1+ vi−1∆t +1
2ai−1∆t2
由於揮桿是一個三維空間的運動,利用三軸加速度計我們可以得出各個垂直軸的加 速度,再對各軸的加速度各自計算其位移,即可得知在每一個取樣時間之間,物體分 別在三軸移動量,再將位置依序繪製在三維座標上,揮桿者即可得知揮桿過程球桿的 移動、轉動變化狀況,影響開球好壞但常被忽略的因素就是揮桿軌跡是否處於同一個 平面,如圖 20,即是說上下桿的軌跡是否一致會影響揮桿的穩定性 [1],因此在利用上 述流程計算三軸的位移量,並繪製在三維座標上,讓使用者可以觀察這次的揮桿軌跡 並藉此修正。在還原軌跡的同時計算的速度及角度都是一些特徵值,經過分析、處理 即可提供給訓練者一個參考的數值。軌跡描繪流程如圖 21。
圖 19: 軌跡描繪流程圖
圖 20: 揮桿平面 [1]
圖 21: 揮桿軌跡
五 、 揮桿動作分析
影響高爾夫打得好或壞的最重要因素就是揮桿的動作,一個良好並且穩定的揮桿動 作能夠幫助打者將球開得更遠、方向更正確,由於每次的揮桿動作的時間長短不一,如 果直接將整個揮桿過程直接拿來做比對的話,則會造成比對上的困難,例如︰兩次的 揮桿動作一次只花 3 秒,另一次揮桿卻花費 5 秒。另外也有可能兩次揮桿動作總共花 的時間一樣,但是其中各個分段動作(上桿,下桿,收桿)的時間卻不同,其中一次的 時間各為 2 秒、1 秒、1 秒,另一次則為 1.5 秒、1.5 秒、1 秒。這兩種由於動作的時間 不同所造成的差異將會妨礙到我們對揮桿動作的相似度以及時間點進行比對。因此對 於這個問題我們避免直接比對,轉而利用特徵值的想法,而將揮桿動作進而分解。
本章節依序在 5.1 介紹以往的揮桿分解以及我們提出的分段方法,5.2 敘述如何從 感測資訊分解揮桿動作,5.3 提出一些關於揮桿好壞的初步建議。
5.1 揮桿動作各階段定義
在文獻上,對於揮桿動作的分解定義有不同的做法,以下為幾個具有代表性的介 紹。
根據 Pink 等人 [2] 的研究,他將高爾夫揮桿動作分解為 5 個時期,包括:上桿 期 (Takeaway)、下桿前期 (Forward swing)、加速期 (Acceleration)、收桿前期 (Early follow-through)、收桿後期 (Late follow-through),各個時期的定義說明如下:
1. 上桿期 (Takeaway):從揮桿起始位置至上桿頂點
2. 下桿前期 (Forward swing):從頂點至球桿呈水平位置
3. 加速期 (Acceleration):從球桿呈水平位置至擊球
4. 收桿前期 (Early follow-through):從擊球至球桿呈水平位置
5. 收桿後期 (Late follow-through):從球桿呈水平位置至動作結束
圖 22: 高爾夫揮桿分解 [2]
P. A. Hume 等人在 [31] 中將揮桿簡化成 3 個時期,這個研究主要利用攝影機分析 在三個時期之間,肩膀及腰部的轉動情形,並觀察上下桿時期的球桿是否處於同一個 揮桿平面上。:
1. 上桿期 (Backswing):從起始位置至上桿頂點
2. 下桿期 (Downswing):從上桿頂點至擊球點
3. 收桿期 (Follow-Through):從擊球點至動作結束
後續 H.Ghasemzadeh 等人在 [3] 中,參考上述的分解將揮桿動作分解成 4 個時期 圖 23,包括:
1. 上桿前期 (Takeaway):從起始位置至球桿呈水平位置
2. 上桿後期 (Backswing):從球桿呈水平位置至上桿頂點
3. 下桿期 (Downswing):從上桿頂點至擊球點
4. 收桿期 (Follow-through):從擊球點至動作結束
該研究將上桿期細分成前期與後期,想要觀察在球桿呈水平位置時手腕是否過度轉動,
以及是否導致後續動作的不穩定。
圖 23: 揮桿動作分解 [3]
由於以往的分段方法不是過於繁瑣就是太過簡化,並且必須由人工觀察來分段,在 此結合以往的分段方法提出一個合適且能藉由感測資訊來分解的高爾夫揮桿動作分解 法。
首先根據 [31] 先將動作分解成上桿期、下桿期以及收桿期三個階段,由於擊球結果 主要是由上桿以及下桿的影響所致,因此再結合 [2] 及 [3],進一步將上桿期以及下桿期 各自分解成前期以及後期,在上桿期間右手腕轉動至正前方的時間點稱之為上桿中點,
下桿期間將手腕固定角度釋放的時間點稱之為下桿中點,因此提出的分段方法如下:
1. 上桿前期:從起始位置至球桿呈上桿中點
2. 上桿後期:從上桿中點至上桿頂點
3. 下桿前期:從上桿頂點至下桿中點
4. 下桿後期:從下桿中點至擊球點
5. 收桿期:從擊球點至動作結束
高爾夫球揮桿動作圖解定義如下表︰
5.2 動作切割
由於本研究中將動作切割為五個時期,因此需要從一個完整個揮桿波形中尋找六個 時間點,包括:起始點、上桿中點、上桿頂點、下桿中點、擊球點、收桿點。圖 25為
圖 24: 揮桿動作分解圖 [4]
表 2: 揮桿動作分解表
動作區段 動作描述 起終點
上桿前期
手、手臂、肩膀、臀部,
以上述順序帶動球桿,將球桿帶至約水平位置 左手手腕準備曲腕並準備將球桿後拉
起始點: 起桿準備位置 結束點: 上桿中點
上桿後期
左肩旋轉至下巴下方,
作出一個大幅度的上桿動作,手臂彎曲,
上升至頂點時球桿與地面平行,
且左手腕固定約 90 度角
起始點: 上桿中點 結束點: 上桿頂點
下桿前期
順序:臀部 → 肩膀 → 手臂,
以上述順序帶動球桿,將球桿帶至約水平位置 維持左手手腕角度
起始點: 上桿頂點 結束點: 下桿中點
下桿後期 手腕在下桿前期所維持的角度做完全的釋放,
球桿在短時間內大幅轉動
起始點: 下桿中點 結束點: 擊球點
收桿 擊球後球桿順著力道將球桿帶至身體後方
起始點: 擊球點 結束點: 收桿點
一個完整揮桿動作的波形,上半部為加速度,下半部為角速度,皆為在感測器座標下 的數值,X 軸為時間軸,單位為 0.01 秒,Y 軸為讀數單位,加速度單位為 G,角速度 單位為弧度/秒。
圖 25: 揮桿動作球桿波形
1. 起始點:偵測球桿開始移動後,再往前回推至加速度數值為零。
2. 上桿中點:偵測球桿上的角速度值,當 X 軸角速度值到達峰值開始轉折時,即代 表球桿已轉動至水平位置,並開始向後移動,轉折該點為上桿的中點。
3. 上桿頂點:由於至上桿頂點時,球桿會呈現靜止狀態,因此檢查球桿的感測器上 頭的角速度值,當其三軸數值交叉時,判斷此為上桿頂點。
4. 下桿中點:下桿前期的期間,應該維持手腕角度直到進入加速期在釋放角度,因 此在進入加速期的瞬間,球桿角速度會陡升。
5. 擊球點:擊球瞬間由於撞擊並將力道傳至球上,會造成球桿上的加速度瞬間產生 一個明顯的突波。
6. 收桿點:從擊球後直到角速度歸零。
(a) 起桿點 (b) 上桿中點
圖 26: 起桿及上桿中點判斷
(a) 上桿頂點 (b) 下桿中點
圖 27: 頂點及下桿中點判斷
圖 29為依照上述判斷演算法將揮桿波形切割。
圖 28: 擊球點判斷
圖 29: 揮桿動作波形切割
5.3 動作比對
在許多的球類運動,例如:高爾夫球、網球,相對於施力的多寡,更重視的是能穩 定的擊到球並控制球的方向,才能把球打到想打的地方,只要控制的方向正確,距離的 長短只要再加上力道的控制即可達成。在高爾夫運動中,為了要把球以最少的揮桿次 數下,打到最終的目標位置,擊球方向的穩定性就非常重要,必須建立一個完美的揮 桿,才能提高成功擊球的機率以及更接近所想要達到的位置。所以初學者必須藉由無 數次的揮桿練習,來建立一個穩定的揮桿路徑,若想要在沒有教練陪同的情況下自主 訓練,但訓練者無法自知動作是否正確又無人可以給予糾正,往往錯誤的動作在自我 的訓練下,會得到反效果,一旦動作習慣之後要再更改動作又得再花上一段時間。因 此,必須要有一套方法來反映出訓練者所揮擊的資訊,讓訓練者經過一次揮桿練習後,
可以得知剛剛所揮擊的資訊。我們在此使用感測器來達成這樣的任務,在球桿的桿身 上安裝慣性感測器,藉此抓取球桿在移動過程中的動作資訊,利用三軸加速度計擷取 球桿移動的加速度狀況,用陀螺儀來擷取球桿旋轉的角度變化狀況。
5.3.1 速度
影響開球距離最大的因素就是擊球瞬間的速度,擊球瞬間的速度越快,能傳遞到球 上的力道就越大,開球距離也會隨之增加。
5.3.2 肢體動作順序的比對
高爾夫揮桿的過程中,肢體轉動的順序也會影響揮桿的穩定度及擊球方向 [32]。一 般來說,在啟動上桿以及啟動下桿的瞬間,手臂跟腰部的時間配合是較多人注重的部 分。在啟動上桿時的順序依序為球桿、手腕最後是腰部旋轉。啟動下桿時順序則與上 桿完全相反,以腰部帶動上半身旋轉來帶動手臂、手腕再拉動球桿。因此為了判斷打 者的揮桿是否有符合上述對於上下桿時間點的描述,藉由預先收集揮桿資料,以桿頭 啟動的時間點為基準,計算手腕及腰部開始轉動的時間點跟桿頭移動的時間點的差距,
並標記於平面座標上。未來將感測資料進行分群,並以先行收集的正確動作的分群時 間軸為準,檢查使用者的感測資料是否落在正確的分群當中。
圖 30: 肢體動作順序分布 [5]
5.3.3 動作節奏
揮桿必須要有正確的節奏才打得出好球,揮桿動作雖然很短暫但也要有一致的節 拍,才有穩定的球路及揮桿速度。揮桿過程上桿慢、下桿快,所以當上桿是三拍時,下 桿應是一拍,如圖 31及圖 32所示,示範者為女子職業高球選手 Michelle Wie。以各個 關鍵動作的時間比例作為判斷依據,例如在切割出上桿與下桿的關鍵動作後,則以兩 者的時間長度來做評斷的基準,加上先行收集好的各種揮桿範本資料,來觀察本次揮 桿是否有符合示範資料的比例。
圖 31: 上桿時間 [6]
圖 32: 下桿時間 [6]
根據 Neal 等人的研究 [7] 中也指出,新手以及專業球員在上下桿的時間分佈上仍有 不小的差異,圖 33。由下圖可看出新手球員在揮桿的時間分佈中,上桿所佔的時間從 20% 至 60% 不等。相對來說,專業球員的上桿時間分佈很密集的分佈於 70% 上下,這 與上述建議的上桿三拍以及下桿一拍的節奏非常相近。圖 34為實驗中二十筆資料的上 桿時間比例分布,可以看到比例與 [7] 非常接近。
圖 33: 上下桿時間比例 [7]
圖 34: 上下桿時間比例
六 、 實驗結果
6.1 系統架構
首先在球桿、手腕以及腰部上配戴好慣性感測器,並藉由使用者端程式設定好參 數。由於使用的 3DM-GX3 感測器並不支援無線傳輸,因此在每個感測器上加裝了一 個 RS232 連接阜轉接成藍芽無線傳輸的模組。當使用者開始動作後,3DM-GX3 會將 感測資料透過藍芽無線傳輸到使用者端,使用者端則持續紀錄資料直到動作結束。由 於身上會配戴超過一個感測器,因此在最初建立使用者端與感測器的連線時,必須按 照桿頭、手腕以及腰部的順序建立連線,之後在建立紀錄檔時分別編號 -1、-2 以及 -3 分別表示桿頭、手腕以及腰部的紀錄資訊。當動作結束後,使用者端會執行預處理作 業,包括資訊去頭去尾以及時間同步。之後將處理過的紀錄檔通過 3G 或是 Wi-Fi 上 傳至雲端伺服器,並通知伺服器端的程式本次揮桿的檔名並開始處理資料。
伺服器端在收到通知後,會以球桿上的資料為基礎將揮桿動作分割成上桿前期、上 桿後期、下桿前期、下桿後期、收桿五個部分,各階段的時間點確定後,透過座標軸轉 換將持續變動的感測器座標的加速度資訊轉回至起始動作的感測器座標,再由起始的 感測器座標轉換至地球座標,在加速度資料轉至地球座標後,利用二次積分得到三軸 各自的位移。由於本研究中著重在揮桿動作整體的時間協調,因此在起桿以及下桿部 份,會抓取手腕與腰部開始轉動的時間來做肢體動作順序的比對,另外上桿、下桿的 時間分佈、擊球瞬間桿頭得速度等特徵值會依序計算並存入資料庫。
在伺服器端資料處理完畢後,使用者端可以透過網頁連上資料庫存取處理過的資 料,選擇使用者 ID 及第幾次揮桿即可顯示該次的揮桿軌跡以及一些關於揮桿動作的評 比。整體運作流程如圖 35。
6.2 設備畫面
下列為使用的設備,圖 37為使用的高爾夫球桿,感測器固定在桿面與桿身連接的位 置,由於 3DM-GX3 需使用外接電源提供電力以及另外連接一藍芽傳輸模組,電源包
圖 35: 系統示意圖
以及藍芽模組向上延伸到接近握把的位置,以減少電源及藍芽模組的重量影響揮桿的 順暢度。圖 39為佩戴在手腕上的感測器,使用黏扣帶在手腕上環繞成手環形狀,再將 感測器固定在黏扣帶上。圖 40為配戴在腰部的方式,將感測器固定在腰帶上後穿戴在 身上,而手腕以及腰部的感測器電源以及藍芽模組全部延伸至一小腰包集中擺放,避 免影響揮桿動作。
圖 36: 3DM-GX3