• 沒有找到結果。

iGolf : 一個基於體感網路與雲端服務之高爾夫球揮桿學習系統

N/A
N/A
Protected

Academic year: 2021

Share "iGolf : 一個基於體感網路與雲端服務之高爾夫球揮桿學習系統"

Copied!
54
0
0

加載中.... (立即查看全文)

全文

(1)

網路工程研究所

iGolf : 一個基於體感網路與雲端服務之

高爾夫球揮桿學習系統

iGolf : A BSN-based and Cloud-Assisted

Golf Swing Training System

研 究 生:黃怡箴

指導教授:易志偉 教授

(2)

iGolf : 一個基於體感網路與雲端服務之高爾夫球揮桿學習系統

iGolf : A BSN-based and Cloud-Assisted Golf Swing Training System

研 究 生:黃怡箴 Student:Yi-Chen Huang

指導教授:易志偉 Advisor:Chih-Wei Yi

國 立 交 通 大 學

網 路 工 程 研 究 所

碩 士 論 文

A Thesis

Submitted to Institute of Network Engineering College of Computer Science

National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Master

in

Computer Science

August 2013

Hsinchu, Taiwan, Republic of China

中華民國一百零二年八月

(3)

i

iGolf : 一個基於體感網路與雲端服務之高爾夫球揮桿學習系統

學生:黃怡箴

指導教授:易志偉

國立交通大學網路工程研究所碩士班

在運動學習的過程中,養成正確的姿勢得以達到最佳的學習效果並避免

運動傷害,但若未能及時發現姿勢的錯誤,將付出更多的時間及代價來校

正於無形中養成的壞習慣。以高爾夫運動為例,球友往往容易被錯誤的肢

體動作影響了擊球結果,在金錢考量上,也不是每位球友都可以負荷聘請

教練的花費;因此在此以高爾夫揮桿的學習為例,提出一個基於體感測網

路技術與雲端服務的系統,本論文中將慣性感測元件依附於身體部位如

腰、手腕,以及高爾夫球桿桿頭上,在建構好的體感測網路環境中收集使

用者的揮桿感測資訊,將分析感測資訊的動作作為雲端服務之一,進行資

料處理,最後本系統將提供球具軌跡偵測、揮桿狀態如揮桿速度、揮桿節

奏等資訊,甚至該次揮桿的改善建議,輔助初學者的高爾夫球揮桿訓練。

(4)

iGolf : A BSN-based and Cloud-Assisted Golf Swing Training System

student:Yi-Chen Huang

Advisors:Dr. Chih-Wei Yi

Institute of Network Engineering

National Chiao Tung University

ABSTRACT

In the process of sport learning, learners spend a lot of time on practicing in

order to develop correct action habit. Take golf practice as an example. Without

the supervising of coaches, novices may keep practicing wrong swing actions,

and that will cost more time later on to correct the wrong habit. It would be

helpful to let learners can be aware of incorrect swing actions in self-training. In

this work, we propose an IMU-based solution to help learners by allowing them

to review their swing trajectories and also learn key features of the swings. In

the proposed system, we build a BSN-based environment and there are IMUs

composed of an accelerometer, a magnetometer and a gyroscope used and

attached on the human body like wrist and waist, and also installed on the golf

(5)

iii

processing the collected data thus that swing trajectories can be calculated and

more swing features can also be extracted to assist learning process of golfers.

(6)

感謝本人的指導教授,易志偉教授在本人碩士班兩年以來求學過程的鼓

勵與教誨,並提供了實驗上的協助與想法上的建議,沒有您的帶領是無法

順利完成此篇論文的,在此感謝您。另外感謝 NOL 實驗室全體同仁的陪伴

與不時的實驗人力支援,很高興可以進入這間氣氛理想的實驗室完成學

業,也感謝已經早一步進入社會的朋友們不時回頭為我打氣,你們的精神

支援讓我更有動力!最後感謝總是提供一個避風港讓我得以適度休息的家

人們,這段日子以來一言難盡,謝謝你們對我的關心與期許,並包容我的

任性。非常感謝各位,在這兩年下來經歷也學習了很多,在辛苦的另一面,

更留下許多美好的回憶。感謝大家!

黃怡箴 於

國立交通大學網路工程研究所碩士班

中華民國一百零二年八月

(7)

目錄

1 緒論 1 1.1 研究動機與背景 . . . 1 1.2 系統提案 . . . 2 1.3 整篇架構 . . . 3 2 文獻回顧 4 2.1 高爾夫揮桿學習 . . . 4 2.2 基於影像處理之姿態辨識. . . 5 2.3 基於感測器應用之姿態辨識 . . . 5 2.4 運動訓練系統 . . . 7 3 系統設計 8 3.1 系統架構 . . . 8 3.1.1 體感測網路 . . . 9 3.1.2 雲端服務 . . . 10 3.1.3 使用者介面 . . . 10 3.2 系統功能與貢獻 . . . 11 4 慣性感測元件讀值 12 4.1 感測器座標系統 . . . 12 4.2 感測器資料解讀 . . . 12 5 軌跡運算 15 5.1 尤拉角與座標轉換 . . . 16

(8)

5.2 軌跡運算演算法 . . . . 18 6 動作分段 21 6.1 揮桿關鍵點之定義 . . . 22 6.2 揮桿關鍵點與分段動作 . . . 22 6.3 揮桿動作分段 . . . 23 7 特徵值擷取 26 7.1 揮桿節奏 . . . 27 7.2 揮桿速度 . . . 27 7.3 桿頭旋轉角度 . . . 28 7.4 揮桿路徑 . . . 29 8 實作 30 8.1 設備介紹 . . . 30 8.1.1 藍芽裝置 . . . 30 8.1.2 感測器裝置 . . . 31 8.2 設計需求 . . . . 32 8.2.1 系統關係圖 . . . 32 8.2.2 資料流程圖 . . . . 33 8.2.3 資料庫設計 . . . . 36 8.3 實作工具與環境 . . . 38 9 結論 40

(9)

圖目錄

1 iGolf系統架構圖 . . . 9 2 標示在裝置上的3DM-GX3-25感測器座標系統 . . . 12 3 附著著感測器的高爾夫球桿 . . . 13 4 兩種揮桿波型 . . . 14 5 五個高爾夫揮桿過程中的關鍵點 . . . 15 6 尤拉角 . . . 17 7 揮桿軌跡重建之演算法流程圖 . . . 21 8 揮桿過程中其關鍵點所對應之位置 . . . 23 9 高爾夫球揮桿的動作分解. . . 24 10 以影像方式計算擊球速度之設置 . . . 28 11 上桿頂點與擊球點的尤拉角資訊三維分布 . . . 29 12 大左曲球與大右曲球在下桿路徑斜率上的比較 . . . 30 13 HL-MD08P-C2型號藍芽模組實物. . . 30 14 藍芽接收器 . . . 31 15 3DM-GX3的規格輕便可攜 . . . 31 16 資料收集模組之實物展示. . . 32 17 資料收集模組附著於球桿上之實物展示 . . . 32 18 iGolf系統之系統關係圖 . . . 33 19 資料流程圖(level 0) . . . . 33 20 資料流程圖(level 1) . . . 34 21 資料流程圖(level 2)-1 . . . . 35 22 資料流程圖(level 2)-2 . . . . 36

(10)

23 本地端之帳號管理資料庫設計 . . . 37

24 伺服器端之帳號管理資料庫設計 . . . 37

25 本系統之實作環境與使用工具 . . . 39

26 資料收集端程式之運作畫面 . . . 39

(11)

一 、

緒論

運動學習的過程中,正確的身體姿態及肢體動作是最重要的, 尤在初學階段,更必須在學習過 程中讓身體養成正確的動作;但若在這段期間內少了教練腳色的監督,學習者極有可能沒有發 覺並在無形中養成動作上的錯誤習慣,若未能及時發現及校正,將付出更多的時間及代價來訓 練矯正 。 因此,協助初學者改善基本姿勢已經是各種運動項目的學習過程中不可或缺的一環, 正確的基礎不僅可以提升學習成效, 也能夠避免產生運動傷害,甚至會有更好的表現 。

1.1

研究動機與背景

由於現代的忙碌生活和缺乏運動造成人們很多生體上的疾病,無論男女老少,多做運動來維持 身體健康是人們主要的課題之一。 以高爾夫運動為例 ,台灣曾經登上世界球后的高球選手曾雅 妮耀眼表現,讓許多人為之瘋狂 ,帶動國內一股高球風氣, 讓更多人有了接觸高爾夫球的契機 。 加上它高爾夫並不是個非常激烈但可以維持健康的運動 ,對許多人而言是不錯的考量,不 幸的是學習高爾夫不只需要大量的金錢投入,也需要花不少 (通常將近十年) 的時間才能達到 專家的水準 。 如果考慮到長期的教練費與所花費的時間,很多人就會打退堂鼓打消學習的意願 。 高爾夫球的學習重點在於正確的動作與肢體協調性,揮桿過程更是一連串精密而各有要領 的動作所組合而成 [1] , 球友往往容易被錯誤的肢體動作影響了擊球結果 。 在專業教練的提點 中, 不僅有不同球具類型先天上的差異 ,包括球員站位、 手腕與腰部之間的旋轉順序 、 揮桿平 面之傾斜程度、 上下桿路徑 、 擊球桿面傾斜角度 、 甚至是揮桿節奏(tempo)等因素都會影響到 擊球結果,例如 :在揮桿過程手腕若僵硬無轉動則不易擊中球心, 甚至無法碰到球 。 從事高爾夫球的玩家,許多是頂級的消費人群, 根據專業教練表示,一般的高爾夫球教學 課程為每小時3000元,且單就基礎動作的部分便要花費至少10小時以上進行教學 ,可知高爾

(12)

運動的訓練是一個入門門檻偏難、 細水長流的過程 。 然而在金錢考量上 ,並不是每位對高爾 夫運動有興趣的球友都可以負荷聘請教練的花費 ,事實上如果初學者知道了基本動作 ,像高爾 夫球這類的運動是可以自已打自我學習的 ,因此本論文認為,基於輔助訓練的運動學習系統幫 助初學者精進訓練的概念,開發出一套讓初學者得以進行簡單自我訓練的專家系統 ,可以讓更 多新接觸高爾夫球運動的民眾熟悉這項運動 ,在相對少的金錢成本上讓學員也可以得到相當的 學習效果, 經過初步訓練稍有底子的初學者更可以考慮進一步在專業教練身上投資 ,這麼一來 ,不但可以普及化高爾夫球的風氣,也在相關產業領域具有高度的商業價值

1.2

系統提案

隨著無線感測技術和雲端網路應用日益發達,本論文提出了將運動感測器模組與高爾夫球球桿 結合,配合雲端伺服器對桿測數據的處理 ,設計出一個雲端運動學習專家系統的概念 ;為了追

蹤觀察球具與球員姿勢的動態,藉由體感網路 (Body Sensor Network) 實現感測器資料收集 ,

並挑選有意義的特徵值出來分析 。 對於球員的揮桿,期望做到一次或多次揮桿動作的分析:分 析一次揮桿的的單獨表現,提供修正建議,或是分析多次揮桿動作的一致性與正確性以觀察學 員的動作與協調性是否穩定 (或是趨近穩定) 。 體感測網路最主要的概念係指依附於物體上之感測器讀值之相關探討與應用,藉由可彈性 設計之感測裝置拓璞,得以打破空間上的限制,進行特定環境資訊的收集與分析, 透過智慧型 終端裝置, 近年來尤在生理醫療的領域上的應用最為顯著;這樣的特性也使其在偵測與監控服 務的實作上扮演了重要的角色,是與本研究主旨契合的核心技術之一 。 另外值得一提的考量為 現今盛行的社群網路風氣, 資訊分享的動作簡單而普遍,也更相對地不容忽視 ;許多服務得以 藉社群網站的功能持續運作, 並保留原系統在未來網路服務發展上的擴充性 。 為此,將資訊完 整地儲存在資料庫以供隨時調出參閱也是實作本系統過程所必要的工作項目。 在這樣的系統設計下,使用者不需花費大筆金錢聘請教練指導或是購買現今市面上高額的 學習設備,只需要一些感測元件如加速度計和陀螺儀、 資料收集端如筆記型電腦或智慧型手機

(13)

(亦稱作前端平台) , 利用3GWi-Fi 將設備上的藍芽接收使用者身上穿戴的感測資料與使用 者本身的使用經驗等輔助資訊上傳至雲端伺服器進行分析與運算,並在前端平台的使用者介面 上顯示揮桿資訊與適當的修正姿勢建議 ,讓學員有進一步的訓練方向 。 本系統將學習重點擺在揮桿動作上,工作要點包括軌跡重建 、 特徵值擷取與動作分段 、 揮 桿歷史回顧、 成果評比, 相關建議的提供 、 以及其在社群網路上的實現 。 而不放眼於其他動作 如推桿而選擇揮桿作為分析的原因不外: • 在球場上正式展現成果時,每一洞的開球表現都是取決於學員的揮桿能力 。 • 在一般訓練中,對於初學者而言,揮桿會是最基礎 、 最容易得到滿足感的訓練項目 。 • 相較於推桿 ,揮桿的動作是一個完整的過程,包含著高爾夫球學習中大部分肢體動作的 訓練要訣 ,變因與學習重點也較推桿多 。 • 在擊球教學上 ,教練最初也是從揮桿的基本姿勢教起的,要說初學時期的花費都在揮桿 動作上也不為過 。 • 和推桿相比 ,揮桿所需的訓練場地資源更大 ;推桿可以購買小型草皮在自宅練習,不需 要其他高階設備也能看到成效, 但即使揮桿更著重在肢體動作的協調上 ,一般的揮桿練 習場所也會被限制於球場 。

1.3

整篇架構

本論文將在之後在第2章進行文獻回顧 ,第3章介紹我們提出的系統架構、 功能及使用到的相關 技術,第4章淺談感測器讀值的解析及使用,第5章開始進入正題,介紹揮桿軌跡重建的方法, 第6章介紹動作揮桿分段的概念,並提出相關的演算法 ,第7章則介紹揮桿資訊中可萃取出之特,並說明如何靠現有演算法得出 ,而在第8章將會結合前述技術及成果 ,介紹本論文已實際 實作出來的系統及其設備規格,包括簡易操作流程與使用者介面之導覽。 , 並在最後的第9章 進行結論 。

(14)

二 、 文獻回顧

本論文在這裡做了一些文獻探討,包括市面上高爾夫運動訓練相關的設備與相關研究工作 。 現 有的設備與分析方式包括影像處理與感測器應用等兩種,其中精準度高的成果在成本上稍嫌昂 貴, 設定複雜需要專業人員操作;而成本低廉的取樣的效果不足以對揮桿動作做分析 ,或者需 要人為操作才能獲得更進一步資訊 。 以一個有價值的訓練系統而言,大量數據的分析是必須的 ,往往為了處理龐大的資料,系統無法給予使用者即時的回饋,市面許多高爾夫分析設備的訓 練資訊亦侷限於與廠商有合作關係的高爾夫俱樂部

2.1

高爾夫揮桿學習

爾夫球揮桿是由一連串快速且複雜的動作所組成的[1] ,前一個動作將會影響下一個動作的執 行, 所以初學者必須一步一步學習基本的握桿 、 站姿 、 身體的旋轉以及多個連貫的動作 ,並建 立一個正確且穩定的揮桿 [2]。 但在學習基本動作之後,初學者需要的其實是要去練習固定一 個適合且正確的揮桿去增加成功擊球的機率 ,在練習的過程通常是由教練來引導並指點那些動 作需要做修正 ,讓學員持續練習修正到正確擊球的姿勢使肌肉產生揮桿記憶,但除非你有一個 個人的指導教練時時刻刻指正你,否則這段練習過程初學者必須花費時間自我練習 ,不然會消 耗更多的費用成本 。 在高爾夫這項運動,穩定揮桿與精準地控制方向和球的距離反而是更重要的 ,因為所有的 高爾夫選手在球場上就只有一個目標就是在最少的桿數到達目標洞口 ,因此,所有的選手一定 要做的事就是建立一個完美的揮桿並且在每一次揮桿都能確切執行[2] [3] [4]。 然而 ,在固定個 人揮桿姿勢之前, 每個人在練習時都會犯錯,久而久之,初學者將會固定有瑕疵的姿勢 、 練習 效果也不,一旦找到問題的所在,往往已經很難去修正必須花費更多的時間 。 主要的原因就是初學者很難去了解和識別自己這麼快速且複雜的揮桿動作 。 因此學習者需 要一個輔助的訓練系統去監督他們的學習歷程,現今使用攝影來幫助教練教學是最普遍的方式

(15)

,它可以提供連續的慢動作重播專家即可指出哪一個動作不正確 。 有很多的研究學者也做過許 多的相關研究主題和調查高爾夫揮桿動作以科學化的方式去開發輔助教學工具,例如: 以影 的方法或感測器的方法,這些科學化的方法都有著相同的目的就是能夠自動判別高爾夫球揮桿 動作的資訊 ,因此這些資訊能給予學習者一些訊息去協助他們調整姿勢 。

2.2

基於影

像處理之姿態辨識

辨識運動姿態的方法有很多 ,其中之一便是影像辨識;從影像處理的方法切入,此篇論文 [2] 使用高速攝影機來呈現視覺化與分析的工具如何判別與消除高爾夫球者在揮桿技術上的錯誤, 並計算上半身與臀部分開的角度 ,這是一個在高爾夫球揮桿上可以決定擊球距離的重要決定因 子(X 因子) ,這個角度越大,桿頭速度與撞擊就越大因此球速與距離就會增加 [5] [6]。 另外也 有人[7]提出了視覺化的資訊給高爾夫球者來分析與比較,這資訊不只包括二維控空間的軌跡 , 也提供時間上的評估, 其目標是從最少可能的揮桿參數去找到一個簡單的模型能夠呈現桿頭的 軌跡 。除此之外 , [6] 此篇論文亦去驗證一些普遍教練對於影響球速的想法,藉由這些重要的 事件來回歸分析一些重要的變數 。 也不乏從攝影機的影像對於高爾夫球揮桿進行單視覺的追蹤 [8] ,使用低複雜度的演算法對原本的影像重建三維空間的運動。 然而這些影像的方法 ,因為高 速攝影機高成本的因素,並不是每個人都可以負擔的 ,甚至攝影機在不同的環境架設不易也會 因環境的背景造成錯誤的判斷

2.3

基於感測器應用之姿態辨識

除了影像辨識外,在運動體上附著感測器也是常用的辨識方法 ,以感測器的方法切入,通常使 用慣性體感測網路利用物件追蹤的技術來重建運動的狀態[3] [4] [9] ,或利用光感測器或壓力計

進行動作的分析 。 隨著科技的發展與微機電系統(Micro Electro Mechanical Systems)技術的

進步,感測處理晶片更具備低成本 、 低功耗 、 微型化等特性可以加載到各式各樣的載具來發展

(16)

即時且近距離的感測物體的狀態,由於感測器的微型化及可攜性有助於體感測網路的發展性與

行性快速上升, 特別是體感遊戲帶來的熱潮就是慣性感測元件的熱門應用,例如 : 2006年任

天堂公司推出 Wii ,藉由內含加速度計的 Wii Remote 裝置來辨識玩家的姿態, 融合虛擬的

遊戲內容與實際的的肢體動作,在當時造成不小的轟動 。 每一種運動都是由一連串的連續動作所組成而其中都會包含幾個關鍵動作,為了讓學習者 更易學習教練通常會將動作分解,再將這些分解動作串連再流暢執行 ,為了去判別高爾夫球者 的揮桿動態,需要做的第一件事通常是如何去定義這些關鍵動作以及如何切割這些關鍵動作[3] [6] [9] [11] 並且試圖取得揮桿的特徵與因子,譬如手腕角度 [3] [4]、 揮桿平面 [4]、 揮桿軌跡 [7] [8]、 身體的協調性[9]、 重心轉移以及力量釋放的時機 。 在[1]此篇論文中,作者只利用三軸陀螺儀在身體固定的幾個位置上偵測人體動作,設計一 個高爾夫球者的連結模型包含了12個區段,每一個區段不能彎曲且長度必須事前測量,之後利 用這些固定的長度與轉動過後的角度估算身體每個部位的平移與轉動 。 除了只利用陀螺儀,再 協同加速度計來偵測人體運動可以給予更多彈性且動態的資訊 ,下列的幾篇論文將使用加速度 計與陀螺儀來開發一些便宜 、 方便可攜及創新的應用或系統來幫助學習者訓練他們的推桿或揮 桿 。 另有研究是為了發展一個較便宜且高度可攜地揮桿分析工具來取代高速攝影機 [12] ,這個 概念最早由這篇論文所提出,而這也是我們要達成且更增進的目的 ,這篇論文最後的分析結果 只給予角速度的波型變化說明在上桿頂點會有短暫地暫停, 但純粹這樣的分析結果是不足以給 學習者學習的資訊 ;而在[4] 中,提出了一個高爾夫球揮桿訓練系統,利用可穿戴式的慣性感 測器來獲得慣性資訊並提供動作的好壞給予回饋的想法,也介紹一個量化的模型過訊號處理的 技術來收集資料與量化動作的正確性,並針對手腕旋轉和揮桿平面過偏這兩個初學者常犯的錯 誤來描述,所以作者放置兩個感測器於球桿 、 一個於右手腕 、 一個於左手臂以及背後臀部 ,透 過ZigBee 以50Hz 的取樣頻率來抓取身體主要部位的動作,前者錯誤為初學者在擊球時手腕 會過於順時針旋轉造成球向目標線右方飛行(Slice) ,相反低,擊球時手腕過於逆時針旋轉造成

(17)

球往目標線左方飛行 (Hook) ,後者錯誤則是手肘跟手腕過度彎曲會造成揮桿在揮桿平面外偏 離擊球軌道減少撞擊力道與飛行距離 。 這一類的運動訓練系統可以被可用在多種的運動,其中 [11] 中更是整合多種類的感測器開發監控與教練系統來監控運動選手的動作, 被用在多元的體 育活動上測試, 包括划船、 溜冰 、 跑步等等 ,在文章中將划槳的過程分解成四個主要的動作, 藉由這四個連續動作會產生較大的滑動力量,其中也說到教練與選手不只對於運動軌跡的資訊 有興趣在各動作切斷的分析也有興趣, 這就是為什麼研究者想要去發展這類的訓練系統 。 另外 , [9] 中利用體感測網路給予棒球選手正確的回饋, 相對於需要教練陪同攝影機的訓練方式,可 穿戴式的感測裝置更提供高度的移動性,這篇論文更是提出一個轉譯動作的想法 ,這動機來自 於人說話的表示方式有抑揚頓挫的分段點 ,於是將動作轉譯成多斷減少原始資料的複雜度,在 特定且重疊的時間序找出重要的時間點, 最後與好的模版比較各部位間的協調性來評估揮棒的 程度 。[13] 則是利用座標轉換的技術將加速度轉移到地球座標系統來分析在揮桿時的握把動態 ,求得在座標系統下的揮桿角度與速度,並分析波行切割出關鍵點 ,不足的是其分析數據給予 訓練者的訊息也是有限 。

2.4

運動訓練系統

站在可用的系統開發觀點, 近幾年,隨著行動運算裝置的盛行,資料收集處理裝置變得更輕巧 與可攜, [14] 這篇論文即是由行動裝置Android 智慧型手機與便宜的體感測元件來呈現高爾夫 球推桿的分析,分割推桿或揮桿的資料,並辨別職業與業餘選手的不同 ,但資料的分析卻沒有 描述的那麼豐富 。 雖然行動運算裝置限制在儲存空間 、 處理能力和電池的續航力,雲端運算以 豐富的互補資源將提供使用者進行複雜的運算 [15] , 這種互補的方式,形成一個巧妙的組合 。 總結以上的論文, 我們將呈現一個mobile 的自我訓練系統運用體感測網路的技術與行動運算 平台來分析高爾夫球揮桿的身體動態 。 對於目前我們的研究有幾個限制: • 因為高爾夫球員通常有屬於自己的球桿,因此要使用自己的球桿必須附著我們的感測模 組,在未來希望改測模組能變得更小放便移植 。

(18)

• 雖然現今感測器變得微型化 ,但高爾夫球者穿戴感測器於手臂或膝蓋還是會不太方便 ,在 [16] 這篇論文提到一些感測器已能嵌入至智慧型T-shirt ,這項發明或許也適合於可穿式 的體感測網路應用 。 • 為了更豐富的資訊收集與分析運算,比起一個離線的本地系統 ,本論文目前更偏向增加 無線網路的需求存取雲端伺服器的服務,這樣的設計亦可減少本地的行動裝置端在運算 上的負擔 。

三 、

系統設計

在這裡將會提出一個可攜式的初學者導向訓練系統 ;一個理想的訓練系統應該是不受環境所拘 束 、 隨時可以使用的設計 。另外在體感測網路部分的感測器選擇上, 必須選擇輕量的感測器附 著穿戴在球桿桿頭及人體上 ,雖然初學者對於桿身的重量不會太敏感,但還是要避免使用過於 沉重的感測器,以防本末倒置 ,影響到學員的學習效率 。 本論文的體感測網路系由可穿戴的感 測器組成, 揮桿資料將被上傳至雲端伺服器分析並備份 ,也因此我們得以以此為基礎,開發主 要運算集中於伺服器的專家系統;伺服器強大的儲存能力更能保存學員的學習歷程做為之後調 閱之用,甚至具有讓學員們相互交流比較,往社群網路方向開發的潛力 。

3.1

系統架構

本論文預期提出一個高爾夫學習系統,透過慣性感測元件即時偵測球具及球員的動作 ,經過分 析後提供訓練者一個評判訓練成果好壞之依據與分享介面,其中包括回饋的揮桿軌跡 、 有意義 的特徵值提供、 擊球的一致性與穩定性 ,以及該次揮桿之修正建議等等 。 系統架構如圖1 , 行動裝置端用於進行資料收集與呈現 ,雲端伺服器用於進行資料運算與儲 存; 伺服器端同樣也是高爾夫學習專家系統之所在。 以下分別以行動裝置(Mobile devices)和 雲端伺服器 (Cloud server) 兩個小章節個別說明其基本技術及結合成本系統之可行性 。

(19)

Mobile Device BSN (Bluetooth )

Cloud

Data Sink 2

Show the performance and suggestions 4 Body Sensing 1 Cloud Server 3 圖1: iGolf系統架構圖 行動裝置為我們提出用以收集資料的體感測網路架構的一部份,其易於攜帶的特性也是我 們選擇它作為與伺服器溝通的媒介的原因之一,本論文之實作部分以C++ 視窗程式在行動裝 置上開發可攜式的前端使用者介面,提供使用者簡易的操作環境 ,同時作為一個資料收集端, 配合後端 server ,設計出一個以體感測網路為基礎的分散式系統 。 基於這個系統所提出的系統 流程為 :於人體及球具上穿戴感測器,在一次揮桿後將收集到的體感數據經由藍芽傳輸集中於 資料收集端, 再將資料上傳到雲端server進行運算和儲存的處理 ,並在前端提供一個顯示頁面 讓學員即時檢視資料分析結果。 3.1.1 體感測網路 為了收集感測資訊,本論文實作中在使用者端建構了一個體感網路環境,感測器的資訊收集與 傳輸部分則是選擇透過藍芽裝置進行與資料收集端之間的溝通,而在系統設計中感測器透過藍 芽模組與裝置連線後,便可彈性進行裝置的選擇,可同時收集資訊之感測器數量目前暫定最多

(20)

三個,理論上分別穿戴在學員的手腕和腰部, 以及球桿桿頭上 。 另外在資料收集端也提供個人帳號的功能,在設定與操作介面更能設定個人資訊如身高、 使用桿號等於開發期間做為使用者回饋資訊的欄位 ,系統成熟後這些資料更可作為系統提供修 正建議之依據,這些個人資訊會跟著揮桿資料上載到資料庫裡,方便使用者日後查詢個人資料 。 資料收集端除了收集以外也負責整理感測資訊, 將其輸出為一個固定格式的*.csv 檔檔案 ,共有九個欄位 ,分別為三軸加速度 、 角加速度以及磁力感測值,另外除了基本的揮桿資訊之 外, 使用者的個人資訊也夾帶在檔案中一併處理,這些處理都是為了上傳後方便讓伺服器處理 ,在此時,行動裝置亦做為一個和伺服器溝通之閘道(gateway)使用 ;該檔案經由WiFi3G 上傳至伺服器儲存的上傳動作同時也會觸發伺服器端進行資料分析。 3.1.2 雲端服務 本論文中提到的演算法皆是實作在雲端伺服器上, 雲端伺服器負責處理資料分析與資料儲存 , 亦是專家系統與資料庫之所在, 資料庫中除了三軸加速度 、 角加速度及磁力感測值等經由感測器所測得的資訊之外, 也存 放了個人資訊和分析過後的數據, 包括揮桿軌跡、 速度等等 。 儲存的目的在於備份 、 資料累積 ,更實際的是這樣的設計讓系統得以提供使用者檢視歷史資料的窗口。 3.1.3 使用者介面 如同所有分析與資料儲存的工作交給雲端服務處理 ,大部分的使用者介面也都實作在做為體感 測網路收集端的行動裝置上,提供個人帳號 、 體感測網路連線設定 ,以及資料收集等介面,並 附加一些輕量的資料前置處理功能 。 另外亦有資料檢視介面,本論文在實作上擇了Web-based 介面,結合 html5與社群網站 API 等技術,提供使用者檢視揮桿成果的畫面 。

(21)

3.2

系統功能與貢獻

系統的最終目標之一為良好的教學效果, 並在現在可提供一個完整的系統雛形給正著手於類似 運動感測系統開發人員做為參考,而目前開發的成果與模組功能以條件呈現: • 資料收集 :體感測網路的資料收集與傳輸 。 • 資料上傳 :將原始揮桿數據和處理過後的參數上傳到資料庫以供後期調閱 。 • 揮桿軌跡計算 :重建該次揮桿軌跡並以圖形化方式呈現在使用者介面上。 • 動作分解: 辨認揮桿過程的起始點 、 上桿中點 、 下桿中點 、 上桿頂點 、 擊球點等關鍵點 , 作為分段動作學習之依據 ,讓學員得以分段學習,更加順利地連貫而成正確的揮桿姿勢 。 • 特稱值萃取: 計算該次揮桿節奏 、 擊球點速度等高爾夫學習過程會考慮之特徵值資訊供 球友參考 。 • 提供揮桿建議 :將從動作切割和特徵值擷取過程中取得的數據配合正常的揮桿流程,提 供相應的揮桿建議 。 • 分享揮桿成果 :除了觀看當下的揮桿成果外,另可查閱自己過去甚至是其他人的揮桿紀 錄,了解自己的學習狀況 。 對於上述部分成果中的演算法,本論文皆利用拍攝影片與人工觀察原始數據等方式進行驗證 。 而我們也已與雙溪高爾夫球場陳彥吉教練相約合作一段時間,收集相關揮桿資訊並進行分析與 驗證,並得到許多利於本研究之高爾夫專業知識 (在此感謝陳教練的不吝指教) ,之後也會持續 與教練合作,以期提高本系統之完整性與可用性 。 技術性的貢獻如揮桿軌跡重建 、 動作分解 、 特徵值擷取等, 皆會陸續在第57章進行介紹 ,另在第8章介紹基於提出的系統架構與已有技術的實作成果

(22)

四 、 慣性感測元件

讀值

慣性感測元件 (Inertial Measurement Units ,簡稱 IMUs ,下略稱為感測器) 是一種普遍用

於收集或偵測物件的動態變化狀況(如速度 、 方向)的電子元件,常用的感測器包括加速度計 、 磁力計及陀螺儀等等 。 顧名思義,加速度計可以測得重力和物體的加速度量 、 磁力計可以測得 當地磁場的方向和強度 、 陀螺儀可以測量物體運動的角速度量,這三種感測器亦為本論文在實 作中所倚重之感測元件:在本論文中,將藉由附著於球桿桿頭及人體上的三維感測器讀值分析 高爾夫學習者的揮桿資訊 。

4.1

感測器座標系統

感測器上的讀值是定義於其本身擁有的座標系統上的,在這裡稱之為感測器座標系統 (Sensor frame ,簡稱 s-frame) ,通常這個座標系統的資訊都可以從感測器廠商的規格文件中看到,或 是為方便使用者確認 ,以本論文中使用之3DM-GX3感測元件為例,其感測器座標也直接被標 示在感測器裝置上 。 如圖 2 。 圖 2: 標示在裝置上的3DM-GX3-25感測器座標系統

4.2

感測器資料解讀

在本論文中,矩陣將以粗體大寫英文字母表示, e.g., T, Y, P, R, · · · ;向量將以粗體小寫字母 表示, e.g. , u, v, w, · · · ;另外預設採取行向量的規則 。 加速度計的讀值表示為g =  g g g T

(23)

,為物體本身產生的加速度和反向重力加速度的加總 ,參數之間的關係可概括地顯示為 g = a − G (1) 其中a為物體的加速度值G為重力加速度的向量 ,這也顯示在感測器在靜止狀態或是等速度 運動時,加速度計的讀值和−G相等 。磁力計的讀值表示為m =  mx my mz T ,為當地 磁場的強度資訊 。 地表大部分地區的地球磁場皆是指向北方,因此磁力計通常用於電子羅盤產 品以定位當下方位 。 假設磁力計測得之向量包含磁傾角之資訊指向北方,那麼外積m×g和g× (m × g)分別為一個指向東方的水平向量和一個指向北方的水平向量 。 陀螺儀的讀值表示為ω =  ωx ωy ωz T ,偵測到的角速度值。 若∆t是兩筆陀螺儀資訊之間的時間區間,那麼ψ = ωz∆t、θ = ωy∆t和φ = ωx∆t就是相對應的尤拉角;我們也將在下一個章節對尤拉角與其計算 進行進一步的介紹。 圖 3 為我們將感測器置於高爾夫球桿上之實際示意圖 ,感測器放置的位置接近桿頭, 其感 測器座標系統的 x 軸貼齊桿身,並指往桿柄方向 ;座標系統的 y-z 平面約略與球桿桿面平行, 而z 軸指往桿面推出的方向 。 圖 3: 附著著感測器的高爾夫球桿 圖4 (a)和圖4 (b)分別呈現了兩個揮桿過程中於桿頭測得之加速度與角速度值分別於三軸

(24)

的波型圖,取樣頻率皆為200Hz ; 上方的波型為加速度計讀值 、 下方的波型為陀螺儀讀值 。 圖 中的 x 軸為取樣的筆數, y 軸則為測得之感測,加速度的單位為g 、 角速度的單位為rad/s - 1 5 - 1 0 - 5 0 5 1 0 1 5 2 0 2 5 1 5 1 1 0 1 1 5 1 2 0 1 2 5 1 3 0 1 3 5 1 4 0 1 4 5 1 5 0 1 數 列 1 數 列 2 數 列 3 -2 0 -1 5 -1 0 - 5 0 5 1 0 1 5 1 5 1 1 0 1 1 5 1 2 0 1 2 5 1 3 0 1 3 5 1 4 0 1 4 5 1 5 0 1 數 列 1 數 列 2 數 列 3 - 1 5 - 1 0 - 5 0 5 1 0 1 5 2 0 2 5 1 5 1 1 0 1 1 5 1 2 0 1 2 5 1 3 0 1 3 5 1 4 0 1 4 5 1 5 0 1 數 列 1 數 列 2 數 列 3 - 2 0 -1 5 - 1 0 - 5 0 5 1 0 1 5 1 5 1 1 0 1 1 5 1 2 0 1 2 5 1 3 0 1 3 5 1 4 0 1 4 5 1 5 0 1 數 列 1 數 列 2 數 列 3 Time ( 0.005 s )

(a) Measured by an IMU with small sensing range (b) Measured by an IMU with large sensing range

xyz gx gy gzxyz gx gy gz Time ( 0.005 s ) Time ( 0.005 s ) Acce lerat ion ( ) Angular Ra te ( )

Starting frame Impact frameTop of the swing

Accel erat ion ( ) Angular Ra te ( )

Midpoint of the backswing Midpoint of the downswing

Starting frame Impact frame Top of swing Accel erat ion ( ) Angular Ra te ( ) gx gy gzxyz Time ( 0.005 s ) Time ( 0.005 s ) 圖4: 兩種揮桿波型

在圖中,圖 4 (a) 是加速度計感測範圍 (sensing range) 在±5g之間 、 陀螺儀感測範圍在

±5.24rad/s(300◦/ sec) 之間的波型 ; Fig. 4 (b) 則是加速度計感測範圍在±16g之間 、 陀螺儀

感測範圍在±20.94rad/s(1200◦/ sec)之間的波型 。 在圖 4 (a) , 我們可以看到g

x的波型在 第301筆資料附近開始產生了值約在7.4g的一個平坦的區間 , ωxωyωz的波型也在讀值約在 9.6rad/s時有同樣的現象 。 這代表著揮桿過程產生的加速度和角速度都超過了感測器的感測範 圍, 尤在擊球前後碰撞產生的加速度更是該波型的極值,這樣的現象更容易出現, 這也代表著 在超出感測範圍之外的讀值都是無法做為參考的,在這樣的狀況下無法保證感測器讀值的精準 度 。 在發現這個問題後,我們將感測範圍過小的感測器送回美國原廠修改規格,圖 4 (b) 正是 感測範圍上調之後測得讀值之揮桿波型 ,可以看到前述產生平坦波型的現象也改善了 。 在圖 4 ,

(25)

舊有超出感測範圍之虞,這樣的數值也已經幾乎是在相關研究中選擇適當感測範圍的基準

波型除了讓人注意到感測範圍的重要性外, 也包含了重要的資訊在內 ;配合揮桿過程中的

物理特性,揮桿的動作分段也可藉由觀察波型達成 。

作為分析高爾夫揮桿學習者動作不可或缺的資訊之一 ,本論文在揮桿分解技術上提出五個

揮桿關鍵點做為切割動作的依據 ,同 圖 5 所呈現 ,包括起始點 (Starting frame)、 上桿中點

(Midpoint of the backswing)、 上桿頂點 (Top of the swing)、 下桿中點 (Midpoint of the

downswing) 和擊球點 (Impact frame) ,五個關鍵點在和揮桿影片進行比對後得以辨識 ,並相

對應地依序以紅色虛線表示該時間點呈現在圖 4 (b) 中,而每在兩個鄰近的關鍵點之間 ,又各

自定義了四段動作,包括上桿前期 (Early part of backswing)、 上桿後期 (Late part of

back-swing)、 下桿前期 (Early part of downswing) 、 下桿後期 (Late part of backswing)。 在這

裡僅強調揮桿感測器讀值的波型蘊含著重要資訊的重要性, 本研究目的也在於期許不靠影片輔

助 、 單藉觀察波型便能辨認出各關鍵點,關於動作分段的部分, 本論文會另外獨立在第 6章詳

細介紹。

(a) Starting frame (b) Midpoint of the backswing (c) Top of swing (d) Midpoint of the downswing (e) Impact frame (f) Finishing frame

(a) Starting frame

(a) (b) (c) (d) (e) (f)

(b) Midpoint of the backswing (c) Top of swing (d) Midpoint of the downswing (e) Impact frame

圖5: 五個高爾夫揮桿過程中的關鍵點

五 、 軌跡運算

對一般學習者來說,觀察揮桿軌跡是確認學習進度最直覺的方式 ,說揮桿軌跡是最為容易意會

(26)

沒有擊中球心 ,影響擊球表顯;上下桿的軌跡過於分散也是初學者常犯的錯誤之一 。 因此,本 系統在這裡利用尤拉角和座標轉換矩陣的概念實作了重建軌跡的功能 ,經過重建的軌跡將會顯 示在三維座標的圖形介面上供學習者參考

5.1

尤拉角與座標轉換

在進入軌跡重建的正題之前,先在此介紹尤拉角及三維空間座標轉換矩陣的概念 。 從線性代數 的基本運算講起 ,在這裡令B = {x, y, z}為一個基底 ,並且v = αx + βy + rz ,則向量[v] B =  α β γ T 即為向量v基於基底 B的座標 。 若B1 = {x1, y1, z1}B2 = {x2, y2, z2}分別為 兩個基底,則從B2轉換至B1之座標轉換矩陣TB2→B1表示為 TB2→B1 =  [x2]B1 [y2]B1 [z2]B1  , (2) 因此對於每一個向量v ,我們可以得到[v] B1 = TB2→B1[v]B2 。 更進一步 , TB2→B1TB1→B2 = TB1→B2TB2→B1 = I ;意即從座標系基底B1轉換到B2 、 再從B2轉換到B1 ,其最終依舊是回到 原座標系B1的,等同於做了一個單位矩陣I的轉換,反之亦然 。 尤拉角常被用於描述物體在三維空間的方向變化,在航空工程相關領域更是代表著飛機在

空中的姿態的資訊 。 尤拉角包括了 Yaw(ψ) 、Pitch(θ)、 Roll(φ) 等三種角度,分別代表著一

個物體在三維座標系中繞著 z 軸 、 y 軸與 x 軸的旋轉量;而這些旋轉量也包含著旋轉方向的 資訊;在本論文提及技術所定義的座標系統遵守著右手定則 ,因此對於三種尤拉角更明確的定 義分別為: Roll 為繞著正 x 軸方向逆時針 (從正 y 軸朝正 z 軸方向旋轉) 的旋轉量 、Pitch 為繞著正 Y 軸方向逆時針 (從正 z 軸方向朝正 x 軸方向旋轉) 的旋轉量 、 Yaw 為繞著正 Z 軸方向逆時針旋轉 (從正 x 軸方向朝正 y 軸方向旋轉) 的旋轉量 。 配合座標轉換矩陣的概念, 令B1 = {x1, y1, z1}和B2 = {x2, y2, z2}分別為定義了一個座標系統在旋轉前與旋轉後的標準

基底,則示意圖 6 (a)(b)(c) 分別描述著該座標系各自進行了 Yaw、Pitch、 Roll 等三種方向

(27)

x1 x2 y1 y2 z1 = z2 x1=x2 y1 y2 z2 z1  y1=y2 z2 z1  x1 x2 (a) (b) (c)  x2 x1 y2 y1 z1 = z2 x1=x2 y1 y2 z2 z1  (a) (b) (c) y1=y2 z2 z1 x1 x2  x1 x2 y1=y2 z2 z1  x2 x1 y2 y1 z1 = z2 x1 = x2 y1 y2 z2 z1 

(a) Rotate by a yaw angle (b) Rotate by a pitch angle (c) Rotate by a roll angle

x1 x2 y1 = y2 z2 z1   圖6: 尤拉角 以Yaw 角的旋轉為例 ,即圖 6 (a) 所示,可得

x2 = cos ψx1+ sin ψy1 = 

cos ψ sin ψ 0 T

B1

,

y2 = − sin ψx1+ cos ψy1 =  − sin ψ cos ψ 0 T B1 , z2 = z1 =  0 0 1 T B1 . 在Yaw 角旋轉下的座標轉換矩陣TB2→B1 一般習慣表示為Yψ , Yψ =         cos ψ − sin ψ 0 sin ψ cos ψ 0 0 0 1         . (3) 這麼一來,我們對於每一個向量v ,都可以得到一個[v] B1 = Yψ[v]B2 。 相似的概念可以應用在

Pitch圖6 (b)與Roll的旋轉上圖6 (c)其在Pitch旋轉與Roll選轉的座標轉換矩陣TB2→B1分

別表示為PψRφ,各為 Pθ =         cos θ 0 sin θ 0 1 0 − sin θ 0 cos θ         (4)

(28)

與 Rφ=         1 0 0 0 cos φ − sin φ 0 sin φ cos φ         . (5) 一個物體在三維空間中方向上的變化行為可以用一連串尤拉角的旋轉動作來描述,當然單靠一 個軸的旋轉矩陣是不夠的,因此會用到上述三個分別代表三軸旋轉資訊的轉換矩陣,藉由連續 處理三個不同方向的旋轉,進行矩陣的相乘運算,我們能夠將繞著該座標軸旋轉後同一絕對位 置的新座標讀數轉換到舊座標 。 但矩陣乘法運算具有不可交換的性質,三種矩陣相乘的順序也 會影響到運算後的結果,三種矩陣根據相乘順序不同 ,會有12種可能的表達三維空間旋轉的呈 現方式,而本論文採用了一般慣用的 YRP ,也就是 Yaw-Pitch-Roll(ψ, θ, φ)的旋轉順序, 是先對 x 軸旋轉後再對 y 軸旋轉,最後對 z 軸旋轉 ,以將新座標系的座標值轉換回原座標系 的座標。 根據這樣的前提進行矩陣相乘,我們最後可以得到的座標轉換矩陣為 YψPθRφ =         cψcθ −sψcφ + cψsθsφ sψsφ + cψsθcφ sψcθ cψcφ + sψsθsφ −cψsφ + sψsθcφ −sθ cθsφ cθcφ         (6) 在這裡將c定為cos的簡寫 、 s定義為sin的簡寫 。 這是一個三維空間 、 包含三個座標軸方向的座標轉換矩陣。 如果一個感測器經過了一組尤 拉角(ψ, θ, φ)的旋轉 ,那麼其從新座標系轉換為舊座標系的座標轉換矩陣即為YψPθRφ,值得 一再強調的是, 基於矩陣相乘不可交換定律,以及對應此性質我們作為前提所採用的 Yaw-Pitch-Roll 旋轉方針, 這樣的相乘順序是不可以改變的

5.2

軌跡運算演算法

介紹過座標旋轉矩陣的概念後,我們可以配合牛頓運動定律 ,從高爾夫球桿桿頭的加速度計讀 。 本論文中將地球座標系統

(29)

座標系統 ,令gm為感測器在靜止狀態時加速度計與磁力計的讀值,而TS→E為將感測器座標 (s-frame) 上的讀值轉換到地球座標上的讀值計算上所用的座標轉換矩陣 ,換言之 ,對於一個 向量v , [v]S為v在感測器座標系中的座標、[v]E為v在地球座標系中的座標值 ,那麼會有一 個旋轉矩陣TS→E滿足 [v]E = TS→E[v]S (7) 地球座標系一般定義上以北極方向為 x 軸,東邊為y 軸,重力方向為 z軸;在這裡的重力 方向為指向地心之方向,藉由右手定則及外積定義座標系的概念,可得 I = TS→E  g×(m×g) kg×(m×g)k m×g km×gk − g kgk  , (8) 繼續推演下去可得從感測器座標系轉換至地球座標系之轉換矩陣TS→E為 TS→E =  g×(m×g) kg×(m×g)k m×g km×gk − g kgk −1 =  g×(m×g) kg×(m×g)k m×g km×gk − g kgk T . (9) 在得到這個關鍵的轉換矩陣後,便可以將感測器座標的讀值轉換到地球座標系之讀值 ,並進一 步對已經轉換到地球座標系的資訊進行運算 。 在揮桿的過程中,高爾夫球桿會一直改變它的姿態,也就是其相對於地球座標系的感測器 座標系會不停地旋轉變化,所以我們在計算中必須持續追蹤每一次變化對應的轉換矩陣, 將每 筆取樣的讀值都轉換回地球座標系 。 令Si為取樣過程中持續變化,在第i筆時間點的感測器座標 系 、ωi = 

ωx,i ωy,i ωz,i T

為第i筆時間點之陀螺儀讀值 。 則

TSi+1→Si = Yωz,i∆tPωy,i∆tRωx,i∆t (10)

即是將第i+1筆的讀值轉換為第i筆的感測座標系上的值,依照座標轉換矩陣的概念, 要再將轉

換後的座標值繼續轉換到地球座標系上的話 ,必須再乘上座標轉換矩陣TS→E

(30)

這麼一來便能將每一筆感測器的讀值轉換到同一個地球座標系上並進行運算。 不過在座標轉換 之後 、運算處理之前, 必須再對加速度讀值進行處理,因為加速度讀值本身包含地球重力的資 訊, 但運算對象應是對運動過程產生之淨加速度 ,所以還要再減去地球重力加速度的值, 而此 重力向量亦是從感測器座標上進行轉換而得 [G]E = TS0→E[G]S0 (12) 經過座標轉換矩陣運算於地球座標系上之加速度值[gi+1]E 與對此結果減去地球重力後得到之 淨加速度資訊[ai+1]E如下(公式13)

[gi+1]E = TSi+1→E[gi+1]Si+1且

[ai+1]E = [gi+1]E − [G]E. (13) 得到了在地球座標系上的淨加速度資訊後, 在這裡將配合牛頓運動定律 ,進行桿頭軌跡之 運算 。 設球桿最初的位置為p0 =  0 0 0 T E ,以及其初速為v 0 =  0 0 0 T E 根據運動 方程式 , vi和pi皆可依序運算得出 [vi+1]E = [vi]E+ [ai+1]E∆t及 (14) [pi+1]E = [pi]E + [vi]E∆t + 1 2[ai+1]E(∆t) 2 . (15) vi為地球座標系上揮桿過程中每一個取樣點的速度, pi則是每一個取樣點的位移, 正也是揮桿 軌跡資訊 。 另外, Si的尤拉角資訊可以以下列公式呈現 ψi = arctan( [TSi→E]2,1 [TSi→E]1,1 ), θi = − arcsin([TSi→E]3,1), 及 φi = arctan( [TSi→E]3,2 [TSi→E]3,3 ). (16) 除了軌跡重建的基本運算,在初始化階段的處理也是必要的 。 在開始揮桿之前 ,我們要求 ,

(31)

Calculate and by Eq. (5), (6) E si T [a ]i E n p p p1, 2,..., n v v v1, 2,..., 1  i i Read gi,i Initialization 0 0 0 , 0 005 . 0 , 0 , 0 G i t p v     

Rendering 3D swing trajectory G g0 Calculate and by Eq. (7), (8) E i v ] [ [p ]iE E si T Extrapolation by Eq. (12) by Eq. (14) by Eq. (15) n p p p1, 2,..., n v v v1, 2,..., Read gi,i Initialization by Eq. (9) by Eq. (13) 0 , 005 . 0 0 ] [ , 0 ] [ 0 0      i t p v E E

Rendering 3D swing trajectory

G g0 t a v vi]E[i]E[ i]E [ 1  2 2 1 1] [ ] [ ] [ ] [piEpiEviEtaiEt Extrapolation E Si T  End of swing? Yes Transformation by Eq. (10), (11) No E G] [ t t t S Si i Yzi Pyi Rxi T1  , , , E i E S E i T g G a i ) [ ] ( ] [    Extrapolation by Eq. (12) by Eq. (14) by Eq. (15) E i a ] [ E i v ] [ 1 E i p ] [ 1 Transformation by Eq. (10), (11)Tsi1E i i E i i E S S S S s T T T1   1 1  i i Extrapolation Read gi,i Initialization by Eq. (9) by Eq. (13) 0 , 005 . 0 0 ] [ , 0 ] [ 0 0      i t p v E E

Rendering 3D swing trajectory

t a v vi]E[i]E[ i]E [ 1  2 2 1 1] [ ] [ ] [ ] [piEpiEviEtaiEt E Si T  End of swing? Yes Rotation No E G] [ t t t S Si i Yzi Pyi Rxi T1  , , , [ai]E(TSiEgi)[G]E i i E i i E S S S S s T T T1   1 1  i i7: 揮桿軌跡重建之演算法流程圖 加速度G0和最初的座標轉換矩陣TS0→E ,在這個時間點我們同樣也假設初速v 0 = 0及初始位 置p0 = 0。 綜合上述前置處理, 本論文提出之軌跡運算演算法如圖. 7 所示 。

六 、 動作分段

高爾夫揮桿的動作是連續且複雜的 ,並非一朝一夕可上手 ,教練在進行教學時甚至也會提醒學 員要從較小的動作開始 ,如將揮桿動作縮小到僅揮四分之一圓的半桿,而從教學的觀點來看 , 最合適的學習方法便是將動作分為好幾個區段 ,針對各分段動作進行練習,改進不足之處,分 別做到最,最後再嘗試將這幾段動作組合起來,形成一個完整的揮桿動作 。 標準姿勢和協調 性在高爾夫球運動中都是很重要的, 而適當的動作分段正可以幫助學員逐步學習 。 回顧第4章有粗略提到,在一個高爾夫的揮桿中,我們可以從球桿桿頭測得之加速度計與陀 螺儀的波型資訊找到五個關鍵點,而這五個關鍵點又可以將揮桿過程分解為幾個分段的揮桿子 動作,在本章節中,將對各關鍵點與其所分割出之子分段動作進行定義 ,並提出藉由桿頭感測

(32)

值資訊辨識它們的方法,以達理想的動作分段效果 。

6.1

揮桿關鍵點之定義

我們提出五個得以切割出分段動作的關鍵點,依序分別是起始點 、 上桿中點 、 上桿頂點 、 下桿 中點和擊球點, 其代表的意義是在揮桿過程中對某些特殊動做為切割依據的時間點。 在這裡配 合揮桿過程的敘述, 分別定義這五個關鍵點的時機 。 起始點是指球員即將開始揮桿動作 ,也就是開始將桿頭後拉的啟動時間點;上桿中點是開 始揮桿後, 上桿過程中,高爾夫球桿懸至桿身與地表平行的時間點;上桿頂點為上桿動作到最 後, 球桿舉在空中,桿頭達到一個最高處的時間點 ,此時球員會停止手腕的旋轉,將接下來的 肢體重點擺在腰部的旋轉上,準備往下揮 ,進行下桿動作, 這微小的肢體動作會使球桿在瞬間 是沒有動作變化的;下桿中點的定義與上桿中點相仿, 是下桿過程中,高爾夫球桿下揮揮至桿 身與地表平行的時間點;擊球點顧名思義便是下桿到最後桿頭最終擊中球 ,並產生強烈碰撞的 時間點 。

6.2

揮桿關鍵點與分段動作

經過專業教練的提點,專注於特定的關鍵點進行訓練是初學歷程中重要的一環 ,在本論文中 , 一個完整的高爾夫揮桿被分解為四個分段動作,依序分別是上桿前期 、 上桿後期 、 下桿前期 、 下桿後期, 每段分段動作各有其學習的方針,就像學習過程中一個個檢視成效的關卡 ,而將揮 桿過程切割成這四個分段動作的依據便是其相對應的關鍵點。 在一般認知中 ,上桿指的是高爾 夫球桿從原點(即球的所在位置)往後拉,直到達到一個最高點的過程,下桿指的則是在達到 該最高點後,從最高點往下揮擊直到擊中球的過程,而在此提出的關鍵點不僅僅區隔上桿和下 桿而已,更可分別對上桿和下桿的動作再細分為前期和後期 。 在圖 8 中以紅色虛線圓框標示出揮桿過程中的五個關鍵點,其中較淡的黃色曲線為上桿軌 跡而較深的橘色曲線為下桿軌跡 ,白線則用於輔助表達,在上桿中點與下桿中點時桿身將是平

(33)

行於地面的狀態 。 在每兩個連續的關鍵點之間都進而切割出一個分段動作 ,更明確地敘述 ,上桿前期是介於 起始點和上桿中點之間的動作 、 上桿後期是介於上桿中點和上桿頂點之間的動作、 下桿前期是 介於上桿頂點和下桿中點之間的動作、 下桿後其是藉於下桿中點和擊球點之間的動作 。 Midpoint of the backswing Midpoint of the downswing Top of swing Impact frame Starting frame 圖8: 揮桿過程中其關鍵點所對應之位置

6.3

揮桿動作分段

本論文整理過專業教練的建議與指導, 將教練對各關鍵點的解釋從物理特性的角度重新詮釋 , 並對應在量化的加速度與角速度數據上 。 只要可以辨認各關鍵點 ,那麼依定義由關鍵點切割產 生的分段動作便可以很快地取得,這麼一來就達成動作分段的目標了 。 圖 9 為在足夠感測範圍下的一筆高爾夫揮桿中測得加速度計與陀螺儀讀值之波型,這也是 本論文提到之動作分段方法的基本輸入資訊,在圖中也標示了這些關鍵點可能在的時間點 ,圖9

(34)

(a)˜(e)依序分別標記了起始點 、 上桿中點 、 上桿頂點 、 下桿中點和擊球點 。 - 1 5 - 1 0 - 5 0 5 1 0 1 5 2 0 2 5 1 5 1 1 0 1 1 5 1 2 0 1 2 5 1 3 0 1 3 5 1 4 0 1 4 5 1 5 0 1 數 列 1 數 列 2 數 列 3 - 2 0 -1 5 - 1 0 - 5 0 5 1 0 1 5 1 5 1 1 0 1 1 5 1 2 0 1 2 5 1 3 0 1 3 5 1 4 0 1 4 5 1 5 0 1 數 列 1 數 列 2 數 列 3 Time ( 0.005 s )

x

y

z gx gy gz

x

y

z gx gy gz Time ( 0.005 s ) Time ( 0.005 s ) Acce lerat ion ( ) Angular Ra te ( ) Accel erat ion ( ) Angular Ra te ( )

Starting frame Impact frame Top of swing (a) (b) (c) (d)(e) 1 2 3 4 5 6 圖9: 高爾夫球揮桿的動作分解 根據實際揮桿學習的經驗與物理特性,接下來將詳述揮桿過程中每一個關鍵點的辨別方法 。 • 起始點: 學員的揮桿是從他們做好初始姿勢的準備動作開始的,此時的球桿也是被穩定地握住 ,沒 有擺動 ,這樣的動作直到起始點之前都不會變化, 起始點代表的便是學員開始轉動桿頭 的瞬間 ,而對於其時間點,可以由陀螺儀讀值出現較明顯變化的瞬間判斷得出。 如圖 9-1的紅色虛線圓框標記 。 至於為何採用陀螺儀讀值而非加速度計讀值之變化,是因為一般 在起桿時 ,需要先倚靠手腕的力量稍微往後旋轉, 之後才會加速往上拉,因此最先產 生明顯變化的其實是陀螺儀讀值,從波型圖中也可觀察出最明顯的是ωz的變化 ,由本論 文中感測器置於球桿上之示意圖 (圖 3 ) 可看到感測器 z 軸是垂直於揮桿平面的, 與配 合手腕旋轉將桿頭往後拉抬的敘述吻合。 • 上桿中點:

(35)

在起始點後,啟動的桿頭帶動手腕的旋轉 ,在上桿過程中達到上桿中點,此時 ,為了持續 拉升球桿 ,球員會進一步於旋轉中的手腕發力 ,使桿頭產生一個更明顯的轉動量,根據 這個現象, 上桿中點以角速度的讀值為判斷標準,尤是垂直於揮桿平面的 z 軸的角速度 最為關鍵; ωz 會在這個瞬間達到一個區域極大值。 另外原本和擊球方向平行 、 不受重力 作用的感測器座標的 y 軸會在逐漸達到上桿中點的過程中,漸漸與地表垂直,加上球員 持續對-y 軸方向的施力,使 gy 在上桿中點達到一個不明顯的區域極小值,而gy 在該點 之後會增加 ,僅是因為 y 軸又和重力方向產生夾角,逐漸不受重力影響之故 。 上述兩個 判斷依據分別標記在圖9-2與圖9-3的圓框處,也代表著桿頭已經準備繼續往上拉抬 、 桿 身平行於地面的瞬間的揮桿動作物理性質 。 而在演算法方面 ,為了防止判斷錯誤,本論 文將搜尋極大值與極小值的動作限制在起始點與上桿頂點兩個時間點之間。 • 上桿頂點: 經過上桿中點後 ,球員持續將桿頭往上帶,並開始旋轉腰部,讓高爾夫球桿到達最高點 , 正是所謂的上桿頂點 。 為了儲備擊球時所需的力量,此時的身體腰部旋轉也到極限 ,且 上半身呈現略為緊繃的狀態。 由於在上桿頂點是一個力量轉換的關鍵點,加上身體逐漸 延展 ,在接近上桿頂點的過程中桿頭上的速度會放慢並有短暫的停頓,因此感測器陀螺 儀三軸的讀值也會收斂到接近0 ,如圖 9-4的圓框標記所示 。 • 下桿中點: 在從上桿頂點開始進行的下桿過程中 ,和上桿反方向,學員將球桿往下揮動, 並在此時 轉動在達到上桿頂點之際已經旋轉繃緊的腰身,藉此加強桿頭的速度 ,並達到下桿中點 , 與上桿中點不同的是,在下桿中點之際, 腰部帶動的旋轉向量大小是相當強勁的, 在下桿時 ,學員是以類似帶切的方式將下拉桿面轉正,這部分的的轉動向量在短時間內 完成 ,對 y 軸產生的影響最大,在下桿中點時,桿頭已幾乎轉正, 因此下桿過程中對 y 軸的轉動都集中在下桿中點之前,在下桿中點之後便會收斂 。 如圖 9-5的標記所示,此

(36)

時的 ωy 會是一個區域極大值,也是下桿中點所在 。 • 擊球點: 學員在下桿過程持續加速,並開始將身體的重心轉移向擊球方向 ,並在最後擊中球,擊 球動作的瞬間會因與球的碰撞而在桿頭產生強烈的加速度, 強烈的撞擊皆反應在感測器 加速度計的三軸上,這樣的現象也決定了擊球點的瞬間 。 如圖 9-6的標記所示 ,在這裡 標記的是與擊球方向平行的 y 軸上的最大,不過更精確地說,本論文在這裡以加速度 的長度最大值(即三軸加速度的平方總和開根號) 判斷擊球點的位置,由波型可看到此時 在無論gxgygz ,產生的讀值都是之前揮桿和之後收桿動作都不會有的巨大數值

七 、 特徵值擷取

本論文已分別在第 5章和第 6章介紹了高爾夫揮桿軌跡的重建和揮桿動作的分解, 在這些研究 中我們皆著重於分析感測器資訊, 並嘗試將之轉換為有意義的資訊 ,而在這個章節,我們進一 步靠以上介紹過的方法萃取出揮桿的特徵值,做為更多供學習者參考的有用資訊 。 許多特徵值 如桿面角度 、 揮桿速度 、 揮桿長度 、 揮桿節奏等,都是揮桿過程中特別的資訊,這些資訊若能 大量並適當地統計與分析,甚至能夠做為該次揮桿與擊球狀態是否理想的評斷依據,正好切合 高爾夫學習系統在功能上的需求 。 在現今, 專業教練口頭上的指導其實也包含著特徵值的資訊 ,也讓所謂的特徵值資訊在學 習成效的評判上有一定的依據,例如要求學員不要揮得這麼急 、 腰不要轉太快,都隱含著揮桿 速度 、 感測器讀值啟動點判斷等含意。 但特徵值的範圍很廣泛;若特徵值能影響學員的揮桿成 果, 就代表它們是一種變因,而在揮桿過程中 ,除了感測器的讀值 ,舉凡事前準備動作的雙腳 站位 、 桿面擺放 、 桿身握法 、 使用桿號,甚至是當日天氣 、 風向,都是影響擊球結果的因素 。 在這麼多的因素裡,本研究選擇簡化變因,單從目前可從感測器取得之資訊進行特徵值的萃取 ,取得一些較典型且對於我們在未來的研究上有幫助的資訊

(37)

7.1

揮桿節奏

在高爾夫球學習中,揮桿節奏(Tempo)是一個常用來判斷上下桿速度是否合適的特徵值,它是 一個比值,定義為上桿花費時間:下桿花費時間 。 國際暢銷的高爾夫學習教學手冊 《Tour Tempo》 的作者John Novosel 是最早提出 ,許多表現亮眼的職業選手的揮桿節奏都接近3 : 1說法的人 之一,也就是上桿花費時間理想應為下桿時間的三倍之多,這是讓身體能夠最為順暢地進行揮 桿的比例 。 基於這個球界知識,我們使用動作分段技術取得分別象徵上桿起點 、 上下桿分水嶺 、 下桿 終點的起始點 、 上桿頂點 、 擊球點資訊,則可得 揮桿節奏 = 上桿頂點−起始點 擊球點−上桿頂點. (17) 從訓練肢體協調性的角度切入上, 這個資訊對於學員的幫助在於讓他們得以認知自己是否 在上下桿的速度上過快或過慢 ,在本論文的實作展示中 ,將會計算該次揮桿的揮桿節奏資訊, 若揮桿節奏與理想值偏差太多,系統會基於原本的揮桿資訊 ,提供一組合適的上下揮桿速度給 學員參考 。

7.2

揮桿速度

在第2章以牛頓運動定律為概念運算的軌跡重建演算法過程中,除了軌跡之外 ,在計算過程中 亦可得到桿頭感測器的速度;業餘選手使用七號鐵桿的揮桿速度約為 33˜35m/s 。 本研究在這裡利用可在一秒內捕捉300影格的高速攝影機(GC-PX10)實際拍攝學員的揮桿 過程,進行影片驗證其揮桿速度 ,我們藉由影片的影格數與取樣頻率資訊來計算影片中實際經 過的時間 。 如圖10所示,在高爾夫練習球座上裝置硬紙板 ,於擊球點 (懸球所在位置)前後畫 上刻度, 各取了0.2m的距離做為抓取影格的參考點 ,實際進行揮擊,由從左側揮到右側0.4m 的距離中攝影機共抓取的影格張數計算擊球點的速度 。

(38)

10: 以影像方式計算擊球速度之設置 在測試下, 圖10中從左側到右側的距離內總共抓到了12個影格 ,經過計算 擊球點速度 = 0.4m 12f rame ∗ 1 sec 300f rame = 10m/s. (18) 得到學員於擊球點揮桿的平均速度為10m/s ,而在軌跡計算的演算法中算得 10.09m/s ,兩者 看起來相當接近, 不過實際上後者的速度還混入了擊中球當下產生的加速度資訊 ,只是因為擊 球僅在一瞬間,並未產生過大的影響 。

7.3

桿頭旋轉角度

在第5提到的公式 (16) 可算出物體的尤拉角資訊,在這裡配合動作分段演算法找出上桿頂點 與擊球點等關鍵點後 ,便能夠找到各關鍵點的桿頭旋轉資訊 。 我們取數筆揮桿資訊,計算出來 的上桿頂點與擊球點的尤拉角如圖11 ,在這裡不看單筆數據, 轉而觀察多筆數據的趨勢 ,從動 作穩定性的觀點審視的話,這些角度資訊並不失是檢視學習成果的根據之一;多筆揮桿在各關 鍵點的角度資訊密集度描述著學員的動作是否持續而穩定,例如 ,上桿頂點的角度資訊越是密

(39)

集, 越能代表學員在上桿部分動作的穩健且不易失誤,才能將角度控制在一定的範圍內 。 甚至 圖 11: 上桿頂點與擊球點的尤拉角資訊三維分布 ,如果桿面角度的運算足夠準確的話, 在擊球點 Roll 方向的角度更是俯視的桿面角度資訊, 該角度為正則其桿面在擊球時是封閉桿面, 在擊球中有可能打出大右曲球(Slice) ;若該角度為 負則其桿面在擊球時是開放桿面,在擊球中有可能打出大左曲球 (Hook) 。 如果學員以擊出某 種球種為目標,開放或封閉桿面絕對是不可或缺的資訊之一 。

7.4

揮桿路徑

在高爾夫揮桿中,上桿或下桿都會被區分為由內向外的 (Inside-out) 和由外向內的 (Outside-in) 兩種軌跡類型, 從後視圖的角度觀察, 「 內 (Inside) 」 指的是離球員較近 、 較內側靠近身 體的位置, 「 外(Outside) 」 則是離球員較遠 、 較外側遠離身體的位置。 而揮桿路徑也學員學 習成效的觀察重點之一,以初學者而言,先求上下桿較路徑重合會是比較好的起步,這樣的資 訊可以從第X 章節的軌跡計算得到 ;系統會將軌跡資訊以圖形介面呈現,提供學員參考 。 另外, 除了上一個小節7.3提及之桿面旋轉角度以外, 下桿路徑也會影響擊球結果球種,經 由計算 xz 平面下桿中點到擊球點之間座標連線的斜率可得到下桿的趨勢 ,圖 12 中整理了目 前數筆大左曲球與大右曲球的下桿路徑數據,可以明顯觀察出這兩種球種的下桿路徑在 xz 平

(40)

面上的斜率 。 實際上 ,這樣的資訊與前述之桿面角度結合,尚可進行更多球種的分類 ,甚至達 到對於特定球種的學習 。 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 1 2 3 4 5 6 7 8 9 10 11 12 大左曲球 (hook) 大右曲球 (slice) 揮桿筆數 下桿斜率 ( ) z x p p   / 圖12: 大左曲球與大右曲球在下桿路徑斜率上的比較

八 、 實作

8.1

設備介紹

這裏我們將介紹本次實作所使用的硬體設備與環境。 8.1.1 藍芽裝置 (a) (b) (a) 藍芽與電源模組 (b) 感測器裝置 圖13: HL-MD08P-C2型號藍芽模組實物 本論文使用 Hotlife公司開發之HL-MD08P-C2型號模組(見圖18) ,配合Windows 環境 ,

(41)

責作為中介腳色的藍芽接收器我們則選擇了 Planex Holding Inc. 開發的 BT-MicroEDR2X 型號接收器 (圖4)(見圖 14) ,在具有USB 埠的設備上使用,便可建構出無線藍芽傳輸環境 。 (a) (b) (a) 藍芽與電源模組 (b) 感測器裝置 圖14: 藍芽接收器 8.1.2 感測器裝置 研究中使用的感測元件為MicroStrain 公司生產的3DM-GX3 , 它是一個高效能的微型慣性感 測器,內建有三軸加速度計 、 三軸陀螺儀、 三軸磁力計感應元件, 並有內嵌的微處理器執行特 殊的演算法提供穩定的方位以及慣性感測資訊,除此之外 ,它的體積更是便於攜帶 (見圖 15) , 在感測裝置盡量不要影響揮桿手感的考量上,是一個極佳的選擇 。 (a) (b) (a) 藍芽與電源模組 (b) 感測器裝置 圖15: 3DM-GX3的規格輕便可攜 圖16為我們的藍芽裝置與感測器結合之模組,一個或多個這樣的模組將會裝備於身上,並 使用圖 17 的球桿,進行展示; 上半部 (圖 16 (a)) 為藍芽傳輸器 (長條狀 ,閃爍著藍光的裝 置)及整個模組的供電裝置,下半部(16 (b))則為感測器裝置, 兩者之間透過有線傳輸,以 RS232介面將感測資訊送至藍芽傳輸器內部的緩衝區,同時藍芽傳輸器與資料收集端溝通,將 緩衝區的感測資料傳送到資料收集端;在本論文的實作中採用筆記型電腦做為呈現畫面

數據

圖 5: 五個高爾夫揮桿過程中的關鍵點
圖 10: 以影 像方式計算擊球速度之設置 在測試下 , 圖 10 中從左 側到右側的距離內總共抓到了 12 個影格 , 經過計算 擊球點速度 = 0.4m 12f rame ∗ 1 sec 300f rame = 10m/s
圖 18 為本系統之系統關係圖 (System Context Diagram) ; 使用者提供揮桿資料給系統 , 即
圖 18: iGolf 系統之系統關係圖
+5

參考文獻

相關文件

不 過他也確有提出一個統一出發點的具體想法, 就是利用學校數學研習組 (School Math- ematics Study Group:SMSG) 的公設系統。 這亦體現於他有份主導的 1999 年加州內容框架 (California

本刊“98 年第 3 季(7~9 月)就業服務統計資訊"主要資料來源為「行政院

本刊“99年第3季(7~9月)就業服務統計資訊"主要資料來源為「行政院勞

了解電腦網路的原理,學習使用 個人網誌及簡易的網頁設計,具 備電子商務的觀念、網路安全以 及網路犯罪與相關法規.

protocol Morbidity and Mortality Event 條件,同日 2011 年 6 月 3 日即通知 sponsor 並等候病人進入試驗案開 放性治療的核准。2011 年 6 月 3 日先採集了 End of Treatment

課程利用雲端學習平台 OpenEdu 從最基礎開始說明 Python 的語 法與應用,配合 Quiz in Video

然則,智顗之學說體系在其各主要著作中雖見端倪,猶乏全面之統整。本文之

最後特別提出說明,本研究用戶端作業系統為 Win 2000 Professional,伺服 器端作業系統為 Windows 2000 Server 並啟動 Active Directory