• 沒有找到結果。

即時性人體姿勢與動作辨識系統之研究及應用

N/A
N/A
Protected

Academic year: 2021

Share "即時性人體姿勢與動作辨識系統之研究及應用"

Copied!
12
0
0

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

全文

(1)

即時性人體姿勢與動作辨識系統之研究及應用

黃文增 李一民 洪超男 段裘慶 明新科技大學資工系 台北科技大學電通所 台北科技大學電通所 台北科技大學電通所 [email protected] [email protected] [email protected] [email protected]

摘要 摘要摘要 摘要―非視覺型姿勢與動作辨識研究常應用在身體非視覺型姿勢與動作辨識研究常應用在身體非視覺型姿勢與動作辨識研究常應用在身體非視覺型姿勢與動作辨識研究常應用在身體 復健 復健復健 復健、、、運動、運動運動訓練運動訓練訓練、訓練、影音等領域、、影音等領域影音等領域影音等領域;;;;而這些應用將考量即時性而這些應用將考量即時性而這些應用將考量即時性而這些應用將考量即時性 與可穿戴性需求 與可穿戴性需求與可穿戴性需求 與可穿戴性需求。。。。本本本本文提出一套具即時性人體姿勢及動作文提出一套具即時性人體姿勢及動作文提出一套具即時性人體姿勢及動作文提出一套具即時性人體姿勢及動作 辨識功能的系統 辨識功能的系統辨識功能的系統 辨識功能的系統,,,,強調可穿戴系統需具備之圖形介面功能強調可穿戴系統需具備之圖形介面功能強調可穿戴系統需具備之圖形介面功能強調可穿戴系統需具備之圖形介面功能 與人性化設計 與人性化設計與人性化設計 與人性化設計,,,作為一種運動訓練的輔具,作為一種運動訓練的輔具作為一種運動訓練的輔具作為一種運動訓練的輔具。。。。系統具以下特系統具以下特系統具以下特系統具以下特 點 點點 點::::(1)可穿戴性可穿戴性可穿戴性可穿戴性:使用彎曲感測器使用彎曲感測器使用彎曲感測器與三軸加速度計兩種感使用彎曲感測器與三軸加速度計兩種感與三軸加速度計兩種感與三軸加速度計兩種感 測器 測器測器 測器,,,因,因因因具有輕薄具有輕薄柔軟與體積小的特性具有輕薄具有輕薄柔軟與體積小的特性柔軟與體積小的特性,柔軟與體積小的特性,,,使用者穿戴時將使用者穿戴時將使用者穿戴時將使用者穿戴時將 感覺舒適與輕巧 感覺舒適與輕巧感覺舒適與輕巧 感覺舒適與輕巧。。。。透過透過透過透過 ZigBee 無線感測網路無線感測網路無線感測網路無線感測網路能即時支援能即時支援能即時支援能即時支援 達 達達 達 5 人同時使用以及遠距離人同時使用以及遠距離人同時使用以及遠距離人同時使用以及遠距離操作操作操作。操作。(2)即時辨識。。 即時辨識即時辨識:藉由即時辨識藉由藉由藉由兩種兩種兩種兩種 感測器狀態 感測器狀態感測器狀態 感測器狀態,,,,能即時辨識出手部能即時辨識出手部能即時辨識出手部能即時辨識出手部 28 種姿勢種姿勢、種姿勢種姿勢、、腳部、腳部腳部腳部 14 種靜種靜種靜種靜 態姿勢 態姿勢態姿勢 態姿勢。。。。並進一步並進一步並進一步並進一步完成動作辨識完成動作辨識完成動作辨識,完成動作辨識,,,如走路如走路、如走路如走路、、抬腿、抬腿抬腿抬腿、、舉手等、、舉手等舉手等舉手等。。。。 (3) 輔 助運 動輔助運動輔助運動輔助運動: 將辨識結果將辨識結果將辨識結果應用在即時運動訓練進度記將辨識結果應用在即時運動訓練進度記應用在即時運動訓練進度記應用在即時運動訓練進度記 錄 錄錄 錄、、、遠端監控以及互動遊戲等領域、遠端監控以及互動遊戲等領域遠端監控以及互動遊戲等領域遠端監控以及互動遊戲等領域。。。 關鍵詞 關鍵詞關鍵詞 關鍵詞―姿勢姿勢姿勢、姿勢、、、動作動作動作、動作、、可穿戴、可穿戴、可穿戴可穿戴、、、即時即時即時即時、、、、無線感測網路無線感測網路無線感測網路 無線感測網路

一、

、簡介

簡介

簡介

簡介

探討如何使用各種不同的感測器來捕捉及 辨識人類身體的姿勢或動作始終是一項熱門的 研究議題,其研究成果也廣泛的應用在日常生 活領域以及其它特定用途。日常生活領域中包 含了電視遊樂設備、居家安全、身體運動訓練、 復健治療等健康照護範圍;而特殊用途包含了 電影特效及卡通 3D 動畫製作等。根據不同的 應用環境及需求,使用者須選擇合適的感測方 式來進行姿勢及動作的捕捉;目前常見的人體 姿 勢 及 動 作 捕 捉 方 式 可 分 為 視 覺 類 型 (Vision based) 與 非 視 覺 類 型 (Non-Vision based) 方 式 [8]。 視覺型的捕捉方式主要是透過架設單一或 多台照相機以及攝影機先將連續的姿勢或動作 影像拍攝下來,之後在利用影像處理方法萃取 出人體的姿勢及動作;而非視覺型的方式主要 是將各種不同類型的感測元件穿戴於人身體感 測身體的姿勢及動作變化,經常被使用到的感 測裝置如加速度計、陀螺儀等慣性感測器以及 磁力計、超音波感測裝置等。 目前針對非視覺類型的相關研究及應用, 如文獻[2]中提出了人體感測網路下穿戴雙軸加 速度計以及超音波感測裝置用來辨識人體手臂 在 執 行 重 量 訓 練 或 有 氧 運動 時 的 各 種 訓 練動 作,並在之後將這些運動訓練項目的結果回報 並記錄。文獻[3][7]中同樣將加速度計裝置於人 體各部位,並應用在記錄老年人日常生活中站 立、坐下、躺下以及移動等行為資訊。除了全 身性的應用外,局部性的身體姿勢及動作感測 也是同樣被研究著;例如在兩手臂裝置加速度 計用來分析當手臂在健康或是受傷的狀況下, 患者使用手臂方式的差異之處[4]。在文獻[12] 中開發了外型如同人們平時穿戴之手套般的手 套型感測系統,用於手掌關節的復健活動。手 套 型 的 感 測 系 統 同 時 也 被應 用 在 手 語 的 辨識 上,如文獻[10]中作者開發以加速度計為基礎 的手套感測系統用來辨識美式手語中的 26 個 英文字母;而文獻[15]中則是將這項概念延伸 到越南手語的部分。在其它感測器的使用上。 文 獻[6]則使用水銀裝置以及光學感測器裝置 於身體偵測人類不同的跌倒行為模式。 以上可知目前非視覺類型的應用情境大多 需要長時間的穿戴感測器,此外各種感測到的 身 體 資 訊 通 常 將 須 要 被 即時 觀 察 到 。 舉 例來 說,即時取得老人身體姿態才能確保其在發生 如跌倒或臥病不起等意外時能給予迅速援助。 而作為一套穿戴型的系統,文獻[2]中為了辨識 人體上肢的活動使用大量的無線節點,加上電 池等供電裝置在實際穿戴上可能會因體積或重 量過大增加使用者活動時的負擔。當系統應用 情境是以人穿戴為出發點時須考量許多外在因 素,文獻[14]中有對於一套可穿戴型系統應該

(2)

具備的條件做完整的說明與介紹。 本文中我們基於非視覺型方式發展出一套 具即時性人體姿勢及動作辨系統,並以人穿戴 時具備的舒適性、使用性以及圖形使用介面功 能等需求來設計硬體將其應用於從事運動活動 時的輔助工具。我們混合使用彎曲感測器以及 三軸加速度計;目前所見之三軸加速度計在重 量或體積上都已非常小,能夠隱密的裝置在人 身上;而彎曲感測器的材質如紙片般柔軟能與 衣服緊密的結合。所有感測器的資訊只需透過 單一無線節點蒐集後送出,因在穿戴時不會有 硬體平台體積或重量部分的負擔。透過無線感 測器網路概念,除了能滿足同時多人使用之外 也能讓使用者在不同場景下使用。在應用情境 上,我們透過圖形使用者介面能將如重量訓練 或伸展體操等肢體活動辨識出來,而這些辨識 結果將被應用於個人的運動訓練進度記錄、狀 態監控,或者是結合互動遊戲等多樣化的服務 來增進運動時的樂趣及品質。

二、

、系統架構

系統架構

系統架構

系統架構

系統依功能可分成資訊感測端與資訊接收 端兩部分,並透過 ZigBee 無線網路協定下之星 狀拓樸網路進行資訊傳輸。 (一) 資訊感測端 A. 無線感測節點 圖 1. 無線感測節點架構圖 主要包含了微控制器、無線模組、電源裝置 以及三軸加速度計、彎曲感測器等感測元件。本 系 統 所 使 用 的 微 控 制 器 為 美 國 德 州 儀 器 的 MSP430F1611,無線射頻通訊部分則使用 UBEC 所製造的 UZ2400 無線模組作為 ZigBee 無線收 發器。此平台可以作為 ZigBee 協定中網路協調 者、路由器、終端設備等功能節點。 B. 三軸加速度計 三軸加速度計主要用途是被用來偵測三維 方向 X 軸、Y 軸和 Z 軸的加速度值,在本系統 中所使用的加速度計為 Analog Device 公司生產 的 ADXL330。三軸之加速度值會以輸出電壓的 方式,經類比/數位轉換器轉換後在 0 到 255 之間 的數值範圍內呈現;然而,加速度計同時也可以 當作量測角度的工具。以 X 軸的角度為例,在加 速度計為只受重力影響的情況下,當加速度計 X 軸方向與重力相同時,會輸出約 150 左右的數值 代表加速度與重力相等;當 X 軸方向與重力相反 時,會輸出約 100 左右的數值代表加速度與負重 力相等;而當 X 軸方向與重力垂直時,會輸出約 125 左右的數值代表無加速度。 因此,當加速度計在不受到重力以外的力量 所影響時,輸出值與擺放的角度會有相對應的關 係。當加速度計輸出值在 100 到 150 之間的範圍 時我們能將其轉換成 0 度到 180 度之間的角度 θ 的形式。令 Raw 為目前加速度計的輸出值,G 為 加 速 度 計 擺 放 方 向 與 重 力 方 向 相 同 時 的 輸出 值,以及 O 為加速度計擺放方向與重力方向垂直 時的輸出值,如公式(1)所示。 -1 Raw - O θ = G O -1 Raw - O θ = G O -1 Raw - O θ = G O X X X cos X - X Y Y Y cos Y - Y Z Z Z cos Z - Z (1) 透過公式(1)計算加速度計 X 軸輸出值 XRaw 與其角度 Xθ,當 X 軸輸出值為 143 時表示與重 力方向有 45 度的差距;X 軸輸出值為 150 時也 就是 0 度的差距;輸出值為 125 時表示 90 度的 差距;X 軸輸出值為 100 時表示有 180 度的差 距,如圖 2 所示。

(3)

圖 2. 三軸加速度計角度變化 C. 彎曲感測器 使用普特企業有限公司所生產製造的彎曲 感測器,其外型如一張長條型的紙片,能透過彎 曲過程改變本身的電阻值,當彎曲的角度越大則 感測器的電阻值也會提升,相對的藉由電阻值的 改變同時會改變輸入電壓的大小,因此將 ADC 與彎曲感測器連結能從讀取到的電壓值中得知 彎曲感測器的彎曲程度。 在本系統中,所有感測器與 MSP430 所需 之電源皆由同一組電池所提供。考量人類在活 動時身體姿勢變化與動作的頻率,系統設定感測 資料的取樣頻率為 20 Hz。所以當每 50 ms 微控 制器將透過 ADC 取得三軸加速度計以及彎曲感 測器的資訊,並在整合成一個資訊封包後透過無 線模組發送出去。在感測器位置的分配上,三軸 加速度計將裝置於人的上臂與大腿。 而彎曲感測器則裝置於手肘、膝蓋與肩膀之 位置。兩種感測器將以有線傳輸的方式與無線節 點連接,無線感測節點將會每 50 ms 將兩種感測 的資料蒐集後透過 ZigBee 無線傳輸協定送出, 如圖 3 所示。 圖 3. 無線感測節點配置情形 (二) 資訊接收端 透過圖形使用者介面將人體動作與姿勢的 辨識結果即時呈現,並與簡單的互動遊戲結合提 供運動訓練時具有趣味性的服務。透過網際網 路,使用者的姿勢及動作相關資訊能被即時傳送 給遠端管理者如運動訓練指導員以及資料庫伺 服器,並透過網頁伺服器提供即時遠距離監控以 及訓練進度的歷史資料查詢等進階服務,完整的 系統架構與應用情境如圖 4 所示。 圖 4. 辨識系統與應用情境架構圖

(4)

三、

、辨識方法

辨識方法

辨識方法

辨識方法

(一) 感測資訊接收 A. 即時系統定義 我們透過三軸加速度計以及彎曲感測器提 供的資訊來進行人體的姿勢及動作辨識,無線感 測節點會以每 50 ms 週期性的將感測器所感測到 的資訊整合並發送給接收端電腦。本文中,為了 能即時的取得使用者的姿勢與動作,我們定義系 統即時條件為接收端電腦端必須在每 1 秒內,完 全的接收到網路中所有無線感測節點分別傳來 的 20 筆資訊封包,換句話說每 50 ms 電腦必須 完全的接收到網路中所有無線感測節點分別傳 來的一筆資訊封包。假如上述條件無法達成,則 為系統非即時的狀況。 B. 解封包與前處理 當資訊感測端發送的資訊被接收端所接收 後,接收端系統便會將資訊封包解開並開始執行 辨識的工作。封包格式的識別欄位表示使用者的 識別號碼,不同的使用者將由不同的識別碼號來 區隔。四肢的封包欄位表示該使用者四肢的三軸 加速度資訊以及彎曲感測器的彎曲狀態;而軀幹 加速度計欄位主要是存放軀幹部位加速度計的 資訊用來確認身體的傾斜程度。由於本系統目前 是針對於使用者在站立或坐下時的姿勢及動作 辨識,所以當使用者身體有嚴重傾斜的狀況時系 統透過讀取軀幹加速度計資訊會通知使用者;避 免 身 體 在 嚴 重 傾 斜 的 狀 況 下 導 致 辨 識 結 果錯 誤。當系統收到使用者的封包時會先將軀幹欄位 解開,在確認軀幹狀態後將會依照右手、左手、 右腳到左腳的順序分別進行姿勢以及動作的辨 識工作。 當人體在較劇烈活動時,裝置於身上的加速 度計因外力會輸出過大(超過 100 到 150 的範圍) 且頻率較高的加速度值以至於無法正確的轉換 成角度的形式。為了能將加速度計的輸出值正確 平穩的轉為角度的形式,當身體各部位的加速度 資訊被資訊接收端接收後,我們透過低通濾波器 的方式來去除因身體較劇烈活動時外力所造成 的過大或高頻的加速度資訊,並取出有用的角度 資訊,接著才會進行姿勢與動作辨識程序。在濾 波器的設計上我們使用 FIR 濾波器,截止頻率定 為 3 Hz。 (二) 姿勢與動作辨識方法 A. 姿勢與動作捕捉 為了確保身體軀幹保持在直立的狀態下,我 們在胸口部位將會裝置一個加速度計並讓其 X 軸與重力方向平行,透過讀取 X 軸的輸出值的方 式來確認軀幹的傾斜程度。在身體四肢的姿勢與 動作捕捉部分,彎曲感測器將裝置於手肘、膝蓋 與肩膀部位。藉由無線感測節點平台,我們能透 過 ADC 讀取到不同彎曲程度的電壓值。由於上 述這身體些部位的彎曲範圍大約在 0 度到 135 度,因此本系統中,我們將身體各部位的彎曲程 度分成 2 種狀態,分別是彎曲程度大於等於 70 度或是彎曲程度小於 70 度。當膝蓋、手肘彎曲 以 及 手 臂 向 前 方 伸 展 時 會 使 得 彎 曲 感 測 器彎 曲,而當彎曲程度大於等於 70 度時,系統將判 定手肘、膝蓋與肩膀等部位有彎曲並會輸出 1 狀 態;反之則是沒有彎曲輸出 0 狀態,如圖 5 所示。 圖 5. 彎曲狀態與手腳狀態關係 三軸加速度計分別固定裝置在上臂與大腿 兩側,當上臂與大腿在不同的位置時,會連帶改 變加速度計三軸與重力方向的角度值,藉由事先 定義各種角度值組合,我們便可在事後透過比對 方式得知使用者上臂與大腿的所在位置。在圖 6 中 人 型 身 體 上 裝 的 紅 色 方 塊 代 表 三 軸 加 速度 計,而其跟重力之間所對應的角度關係由旁邊的 放大圖來表示(淡紅色方塊表示為加速度計裝置 在反面的透視情況) 。

(5)

圖 6. 加速度計角度與手腳位置關係 舉例來說明,當手臂處於向下垂放的狀態 時,我們能從上臂加速度計得到三軸角度(90, 180,90),其分別代表 X 軸與重力方向差 90 度、 Y 軸與重力差 180 度以及 Z 軸與重力差 90 度, 而當手臂往上高舉時上臂之加速度計會得到三 軸角度(90,0,90)。本系統中,我們定義當手部 位在 12 種不同位置時的角度對應關係,以及腳 部位在 7 種不同位置時的角度對應關係,如圖 6 所示。 B. 姿勢辨識 我們結合三軸加速度計以及彎曲感測器兩 種感測器,並讀取其值可以取得身體四肢的姿 勢。透過查表的方式,在手的部分總共可以辨識 28 種姿勢;而腳的部分可以辨識 14 種姿勢,被 查詢表格的形式與內容如表 1 所示。 表 1 為建立在系統中並對應左手以的姿勢表 (Posture table),其中欄位 3-Axis Angle 表示的是 我 們 事 先 定 義 好 各 種 對 應 肢 體 位 置 之 三 軸角 度,而欄位 S1、S2 則分別代表手肘、肩膀部位 的彎曲狀態。首先,系統先將軀幹加速度計的欄 位資訊解開,取得身體軀幹的狀態,之後依序從 右手、左手、右腳以及左腳等各部位欄位的資訊 解開,並個別比對系統中對應該部位的姿勢表。 在本系統中將有四組姿勢表分別對應身體的四 肢部位,我們利用查表的方式從系統姿勢表中找 出當前系統內與使用者最接近的一組姿勢。 查表的過程分為 3 個步驟,舉左手當作例 子。第 1 步驟,系統將從封包中讀取對應左手 表 1. 左手姿勢表 加 速 度 欄 位 的 角 度 值 以 及 彎 曲 感 測 器 狀 態,第 2 步驟將會把輸入資料的三軸角度值依序 跟左手姿勢表內的每一組三軸角度樣本比對,並 計算樣本與輸入資料在三軸角度上各軸角度差 的總和,其中角度差總和最小的便是與使用者左 上臂真實位置最接近的一組位置樣本。第 3 步 驟,在系統確定左上臂的位置後,會根據所選的 左上臂位置進一步比對彎曲感測器的狀態;透過 上 述 的 方 式 便 能 得 知 使 用 者 左 手 所 呈 現 的姿 勢。舉例來說,當解開的左手封包中三軸輸出值 分別為(90,45,50),彎曲狀態分別為手肘 0 肩 膀 1,則在姿勢表中能得到第 2 組三軸角度樣本 最接近使用者真實的上臂位置,接著進一步比對 2 個 彎 曲 感 測 器 的 狀 態 最 後 會 得 到 姿 勢 代號 (Posture code)為 B。最後系統會將姿勢代號存入

(6)

緩衝器並輸出對應該代號的動畫圖形,利用圖形 使用者介面顯示出來。圖 7 中分別為左手以及右 腳的精簡版本動畫,每格圖片右下方的英文字母 代表姿勢代號。 圖 7. 左手與右腳姿勢動畫 C. 動作辨識 正如卡通影片是由許多張的靜態圖片連續 快速播放所形成,基於這樣的概念我們可將人體 的動作看作是由許多連續靜態姿勢的變化。在本 系統中,我們藉由四肢連續的姿勢變化過程來進 行動作辨識。由於取樣頻率 20 Hz 的關係,系統 每秒會執行 20 次姿勢辨識過程,足夠完整的捕 捉身體四肢的動作。舉例來說,當手臂在一秒鐘 的時間內由高舉到放下時,對照圖 7 在系統下可 以得到類似「AAAABBBBCCCCDDDDEEEE」 的姿勢代號變化,因此我們可以把「手由高舉到 放下」的過程看成是上列字串。而圖形使用者介 面能透過姿勢代號不停的輸出使用者的即時姿 勢,在視覺上就能得到一個連續動作畫面。 (三) 動作相似度檢定 A. 訓練與回想 本系統中,透過訓練以及回想可以檢定兩個 動作在反覆執行時彼此的相似度。首先,我們建 立了一個 Buffer 用來依序存放所有經辨識過程 所得到的姿勢代號,而每一個被存放的姿勢代號 之時間間隔為 50 ms,因此越多的姿勢代號累積 將代表著更長的一段時間。緩衝器長度(Buffer length)代表緩衝器所能容納的姿勢代號數量,當 緩衝器的長度越長就能容納越多的姿勢代號,因 此能夠檢定需較長時間執行的連續動作。當整個 緩衝器中裝的姿勢代號完全相同時,我們稱緩衝 器中的資訊為靜態的形式;反之則為動態資訊。 我們能透過檢定兩個動作在反覆執行時彼 此的相似度關係,進而得知兩個動作是否為相同 動作。在訓練階段,使用者必須先連續執行欲檢 定的動作直到姿勢代號裝滿緩衝器,這些動作資 訊將以字串序列的形式被記錄在緩衝器內,之後 會 從 緩 衝 器 中 被 取 出 當 作 動 作 樣 本 (Motion pattern),並放入動作表(Motion table)。緩衝器的 長度必須至少包含能執行一次以上的完整動作 長度(Motion length),動作長度表示執行一個動 作所需的姿勢代號數量,換句話說也能代表執行 動作所花的時間。因此,我們可以知道緩衝器的 長度取決於執行動作所花的時間;當系統有多個 執行時間不同的動作須要被檢定時,緩衝器的長 度將取決於這些動作中最花時間的,如此才能確 保之後的檢定結果無誤。在回想階段,假設使用 者正執行某動作,系統同樣依序將辨識出的姿勢 代號丟進緩衝器,直到緩衝器被裝滿後會先判斷 緩衝器中的資訊是否為動態。假如為靜態資訊, 系統會不進行動作相似度檢定而透過使用者介 面直接輸出「靜止」的文字訊息;反之在確定是 動態資訊的同時,便會將緩衝器內的輸入動作與 動作表的每一個動作樣本透過最長共同子序列 演算法(Longest Common Subsequence, LCS)進行 動作相似度檢定,並在檢定完成後清空緩衝器。 只有當緩衝器被裝滿時才會執行動作相似度檢 定,如圖 8 所示。

(7)

圖 8 系統執行動作相似度檢定 B. 最長共同子序列演算法 為了能比對如序列形式的動作樣本,本文中 我們利用 LCS 演算法[13]來進行動作相似度檢 定的比對工作。最 LCS 是著重於順序性比對的 演算法,常應用於生物資訊 DNA、音樂製作或 是語言文字相似度比對等領域[9][11]。由於 LCS 演算法具有順序與連續性的比對能力加上演算 過程簡單,相當適合用於即時性的連續動作相似 度檢定[5]。LCS 遞迴式如公式(2)所示。 , 0 if 0 or 0, [ ] [ 1, 1] 1 if , 0 and max( [ , 1], [ 1, ]) if , 0 and . i j i j i j c i,j c i j i j X Y c i j c i j i j X Y = =   = − − + > =  > ≠  (2) 我們藉由動態程序表方式將公式(2)寫成虛 擬程序碼 LCS-LENGTH,如圖 9 所示。 LCS-LENGTH(X,Y) 1 m ← length[X] 2 n length[Y] 3 for i ← 1 to m 4 do c[i,0] ← 0 5 for j ← 0 to n 6 do c[0,j] ← 0 7 for i ← 1 to m 8 do for j ← 1 to n 9 do if xi = yj

10 then c[i,j] ← c[i - 1,j - 1] + 1 11 else if c[i - 1,j] ≥ c[i,j - 1] 12 then c[i,j] ← c[i - 1,j] 13 else c[i,j] ← c[i,j - 1] 14 return c[m,n] 圖 9. 程序 LCS-LENGTH 虛擬碼 令 X= <x1,x2,…,xm>與 Y= <y1,y2,…, yn>為輸入參數,以列為主的順序進行記錄與計 算。在程序最後會傳回 c 表格,而在 c[m,n]中 將會包含 X 與 Y 兩序列的 LCS 長度。 C. 計算相似度與門檻值 首先我們透過數學的方式來計算緩衝器輸 入 動 作 與 動 作 表 內 動 作 的 相 似 度 (Similarity rate),相似度越高表示這兩個動作越有可能是同 一個動作。如公式(3),在 LCS-LENGTH 中令參 數 X 為緩衝器中的輸入動作序列,而參數 Y 為動 作表中的動作樣本序列,兩序列的長度皆為 N。 LCS-LENGTH(X , Y) Similarity Rate = 100% N × (3) 在本文中,我們訂定了門檻值(Threshold)作 為兩個動作是否為相同動作的依據。當兩個動作 的相似度計算結果高於門檻值的時候,系統會認 定這兩個動作是相同的,同時會將動作表中該動 作的文字描述透過使用者介面顯示出來。當動作 表同時有多個不同動作的樣本時,系統會將緩衝 器的輸入動作與動作表中的每一個動作依序進 行比對,並分別計算其相似度。我們會先選出其 中相似度最高的一組,之後再透過門檻值評估這 兩個動作是否相同;假如動作表中的所有樣本在 檢定後都無法滿足系統條件時,系統便會判定動 作表中沒有任何動作符合使用者當下所執行的 動作,並透過圖形使用者介面輸出「無法辨識」 等文字。門檻值的制定由經驗法則統計求得將會 在下一章探討,此外對於緩衝器的長度與樣本檢 定結果的關係以及對系統效能的影響也會一並 討論。本文中系統將對四肢個別執行姿勢、動作 辨識與動作相似度檢定等工作,而在辨識完成後 所有的辨識結果會由圖形使用者介面即時呈現 並儲存於資料庫中供給各項服務使用。

四、

、系統實驗

系統實驗

系統實驗

系統實驗

(一) 系統硬體實作 在系統實作上,資訊感測端包含了自行開發 的無線感測節點以及感測裝置。在圖 10 中依字 母順序由 a 開始分別為穿戴感測系統的全身正面 圖、無線節點平台、三軸加速度計以及彎曲感測

(8)

器的實體圖。而在資訊接收端部分則由網路協調 者以及電腦所組成,無線感測節點將用來接收感 測器輸入的資料並將其傳送給網路協調者;網路 協調者則是透過 RS-232 介面與電腦進行連接。 圖 11 則為資訊接收端實際的架設情形。資訊接 收端的圖形使用者介面使用微軟公司的 Visual Basic 6.0 以及即時 3D 互動軟體 EON 來開發;而 包含了資料庫以及網頁等後端伺服器部分則透 過使用 MySQL、Apache 與 PHP 來設計。 圖 10. 無線感測節點及感測器穿戴實體圖 圖 11. 資訊接收端實際架設情形 本系統之圖形使用者介面如圖 12 所示,依 據功能的不同可以劃分成 3 個區塊。區塊 a 的部 分會負責將使用者身體四肢以及軀幹的即時姿 勢與動作相似度檢定結果以文字的方式顯示出 來,而區塊 b 則是透過 3D 動畫即時呈現使用者 真實的姿勢及動作,最後在區塊 c 則是提供使用 者在運動訓練時的各項輔助功能,如增進運動樂 趣的互動遊戲、能監督以及指導使用者正確運動 訓練的遠端監控功能以及提供使用者運動訓練 過程的進度與歷史資料查詢等服務。 圖 12. 圖形使用者介面 (二) 姿勢辨識實驗 為確保身體軀幹保持在直立的狀態下。當系 統讀取軀幹加速度計欄位資訊並得知使用者身 體傾斜超過 20 度時,透過圖形使用者介面,在 正常情況下狀態方塊會顯示為紅色;反之在超過 設定傾斜角的情況下則為黑色,如圖 13 所示。 圖 13. 軀幹傾斜確認 針對系統在姿勢辨識能力的部分,圖 14 中 我們執行了 9 種不同姿勢讓系統來辨識,透過電 腦的圖形使用者介面來呈現,如圖 15 所示。

(9)

圖 14. 辨識 9 種不同姿勢 圖 15. 辨識結果透過 3D 介面呈現 (三) 動作相似度實驗 為確認 LCS 演算法以及本文所提相似度計 算公式能作為動作相似度檢定的方法,本實驗訓 練了運動保健書籍中與健身有關的簡易活動。我 們訓練了 6 種常見且須反覆執行的簡易動作並將 其存入動作表,如表 2 所示。而在回想階段,使 用者將再次分別執行上述相同的動作並讓系統 透過 LCS 演算法個別檢定 20 次後記錄各動作相 似度的計算結果;同時我們也會考量到不同緩衝 器長度之設計對於每一個動作在相似度上所造 成的影響。 表 2. 動作文字描述與代稱 M-1 bicep curl - extend M-2 front arm raise - put down M-3 side arm raise - put down M-4 standing calf raise -put down M-5 front leg raise - put down M-6 walk 我們實驗了緩衝器長度分別能容納一個動 作反覆執行 2 次、4 次、8 次以及 16 次等 4 種情 況。在圖 16 中縱軸表示對每一個動作執行 20 次 後取平均的平均相似度,而橫軸表示緩衝器長度 與動作長度之比值。我們可以看到執行 6 個動作 之相似度變化情形與緩衝器長度之關係。在緩衝 器長度為動作長度之 2 倍時相似度大約落在 60 %到 70 %的區間,而當緩衝器長度為動作長度之 4 倍與 8 倍時相似度大約落在 70 %到 80 %的區 間,而最後在緩衝器長度為動作長度之 16 倍時 相似度大約落在 90 %到 95 %之間。從圖 16 中我 們可以知道當緩衝器長度從 2 倍增加到 4 倍時, 相似度有較大幅度的提升;而在 4 倍以上時,相 似度的上升幅度便逐漸趨緩。 50 60 70 80 90 2 4 8 16

Buffer Length / Motion Length

A v er ag e S im il ar it y R at e (% ) M-1 M-2 M-3 M-4 M-5 M-6 圖 16. 不同容納倍數與平均相似度變化 由上述的實驗結果可以知道,當緩衝器的長 度設計的越長時,也同樣使得須要比對的樣本長

(10)

度增加,然而在檢定反覆動作的情況下樣本越長 能在比對的時候提供更多的資訊;因此我們可以 知道緩衝器的長度設計的越大將能得到更好的 檢定結果。然而越大的緩衝器意味著系統必須花 更久的時間等待緩衝器裝滿後才能進行樣本比 對,這將會造成比對時樣本的字串長度過於冗長 不利於 LCS 演算法的執行。 除了上述比對資料量過大的問題之外,每一 次動作相似度檢定結果也因為要等待緩衝器裝 滿才能執行,造成當使用者在執行動作時,無法 立即取得該動作檢定結果的狀況。在門檻值的制 定上,如果門檻值訂定較低會使得過快或慢以及 位置錯誤等不正確的動作被輕易接受;而訂定的 過高反而會使正確的動作因過高的門檻值而無 法被檢定出來。 為了能兼顧系統運算量、即時性以及檢定結 果正確性,在本系統中,我們考量緩衝器長度與 相似度的關係,建議使用緩衝器能容納 4 次動作 這個方案且將門檻值定為 70 %為系統的預定參 數。每當兩個比對動作的檢定結果相似度高於 70 %時,系統將會判斷這兩個動作是相同的;反之 低於 70 %時系統將會判斷這兩個動作是不相同 的。 (四) 無線網路效能 A. 無線傳輸距離 我們於無障礙物的長型走廊進行最大有效 傳輸距離實驗,我們使用了兩個無線節點分別 執行封包發送以及接收的工作,且每次封包的 發送量為 1000 個。實驗中我們以 1 m 距離為單 位持續增加兩個節點之間的傳輸距離,並檢查 接收節點封包資料的正確率。結果得到傳送節 點與接收節點距離在 18 m 內的封包接收正確率 平均能達到 99.34 %;而當距離超過 18 m 時封包 接收的正確率便會慢慢下降。 B. 無線使用人數 在文獻[1]中提出了計算在 ZigBee 協定標準 規範下之星狀拓樸網路在非信標致能模式下,單 一無線感測節點傳送一筆資訊封包平均所需的

時間Ttotal如公式(4)。TCSMA/CA為執行 CSMA/CA

機制所需之時間,aTurnaroundTime為節點在傳

輸與接收模式切換時所需的時間,TACK 為回傳

一個 ACK 所需的時間。Ttransfer為封包本身大小

不同所需的傳輸時間。

total CSMA/CA transfer ACK

T =T +T +aTurnaroundTime+T (4) 本文中,由於系統無線網路的建構模式與文 獻[1]設定相同,因此我們引用文獻公式(4)並修 改得到公式(5),計算出本系統在滿足即時條件下 的最大無線使用人數為 5 人。其中Tmultiple為多 人平均傳輸時間定為 50 ms, n 為使用者數。 multiple total TT ×n (5)

五、

、應用情境

應用情境

應用情境

應用情境

(一) 運動進度記錄 藉由動作相似度檢定,我們設計了動作記錄 的功能。使用者所執行過的每一項正確動作及其 次數都能被系統完整的記錄下來,並上傳到資料 庫伺服器保存;例如走路的步伐數或者是舉啞鈴 的次數等。使用者能透過電腦端取得目前使用系 統的運動紀錄或以瀏覽網頁的方式取得個人長 期的歷史紀錄;透過提供歷史資訊的服務能讓使 用者能隨時清楚瞭解自己的運動進度以及運動 習慣,避免在不知情的情況下運動過量造成身體 的傷害。電腦端的記錄介面如圖 17 所示。 圖 17. 電腦記錄四肢不同的動作及其次數

(11)

(二) 遠端即時監控

透過 Microsoft Windows Socket 元件,資訊 能即時的透過網際網路傳遞,因此本文中另外開 發了「管理者介面」。協助人員或教練能透過網 際網路來監控每一個使用者在使用本系統從事 運動訓練活動時即時的姿勢或動作,並給予建 議。管理者透過切換使用者的功能可觀看到每一 個不同使用者的即時資訊,並可透過發送訊息的 功能將欲提供的運動相關建議傳送給每一個使 用者。 (三) 互動遊戲 我們利用系統姿勢辨識的功能設計了互動 式的遊戲,讓使用者在遊戲的同時也能從事運動 活動,例如「姿勢模仿遊戲」。透過電腦螢幕由 電腦控制的 3D 人偶會擺出各種不同的姿勢,而 使用者則須要透過不停的改變自身的姿勢使得 自己與 3D 人偶具有相同的姿勢。系統會記錄使 用者完成整套遊戲所花的時間;為了縮短過關時 間,使用者必須更快速完成各種姿勢的模仿。藉 由此遊戲能充分的運動到身體四肢部位的肌肉 及關節。

六、

、結論

結論

結論

結論

我們提出一套具即時性人體姿勢及動作辨 識功能的系統作為運動時的輔助工具,並強調可 穿戴性系統設計提供使用者輕鬆、便利的運動平 台。我們使用的感測器具體積小、輕薄柔軟、彈 性等特性,能如衣服般在穿戴時不會有壓迫感; 且能輕易的隱藏不會影響身體活動,在穿戴舒適 度上能達到一定程度的要求。在資訊傳輸部分, 我們透過 ZigBee 無線網路方式傳輸,經實驗在 不遺失封包的前提下本系統能達最遠 18 m 的傳 輸距離。此外我們也計算出即時性需求下本系統 能支援多達 5 人。因此,本系統能滿足即時多人 使用以及改善因線路、使用場地或周遭地形造成 的使用問題。 姿勢與動作辨識部分,系統透過查表方式比 對三軸加速度計與彎曲感測器狀態總共能即時 辨識出手部 28 種姿勢以及腳部 14 種姿勢和姿勢 範圍內的動作如走路、抬腿、舉手等。經實驗, 系統能確實的辨識出我們所執行的各種姿勢及 動作。而在兩個動作之間的相似度檢定部分,使 用 LCS 作為相似度檢定之比對演算法,並以運 動教學書籍中 6 個動作當作實驗的比對樣本。經 實驗得知在訓練完成後透過 LCS 演算法,分別 在 考 量 以 及 不 考 量 縮 短 比 對 所 需 時 間 的 情況 下,執行這 6 個動作均可以達到平均相似度 70 % 以及 90 %以上的檢定結果,證明 LCS 演算法確 實能作為動作相似度檢定的方法;除此之外,透 過 LCS 進行比對將不需要大量重複的樣本作為 訓練資訊,每一個動作只須要經過一次訓練便能 有良好的檢定結果,有效提升使用系統時的便利 性。 在應用情境設計上,將系統的辨識結果與自 行設計的互動遊戲結合,並藉由 3D 圖形使用者 介面呈現,讓使用者能以遊戲者的心態來從事各 種運動活動。透過網際網路功能,訓練協助人員 能及時取得受訓者的活動狀態並給予意見;此外 在運動訓練過程中如訓練次數、時間等資訊同樣 透過網際網路儲存記錄於網頁伺服器,使用者能 透過網頁直接瀏覽作為日後進度的參考。由以上 內容可知,本文達到了穿戴性系統之便利性、舒 適性需求,再搭配我們針對系統特性所設計之應 用情境在實際用途上相當適合作為日常居家生 活 中 家 人 之 間 從 事 休 閒 活 動 的 運 動 兼 娛 樂設 備。除此之外,本系統也適用在如體適能、健身 房等多人使用的環境作為記錄與監督學員活動 進度的平台。

誌謝

誌謝

誌謝

誌謝

在此致上最高的謝意要感謝國科會補助編 號 : (NSC 97-3114-E-002-003-) 和 (NSC 97-3114-E-320-001-),使本研究能夠完成。

參考文獻

參考文獻

參考文獻

參考文獻

[1] 許碩仁,建構高速無線感測網路平台用於遠 距醫療照顧系統,碩士論文,國立交通大學 電機與控制工程系所,新竹,2008。

[2] B. de Silva, A. Natarajan, M. Motani, and K. C. Chua, “A real-time exercise feedback utility with body sensor networks”, Proceedings of the 5th International Workshop on Wearable and Implantable Body Sensor Networks, The

(12)

Chinese University of Hong Kong, pp.49-52, 2008.

[3] B. Najafi, K. Aminian, A. Paraschiv-Ionescu, F. Loew, and C.J. Büla, “Ambulatory system for human motion analysis using a kinematic sensor: monitoring daily physical activity in the elderly”, IEEE Transactions on Biomedical Engineering, Vol. 50, no. 6, pp.711-723, 2003.

[4] B. Coley, B. M. Jolles, A. Farron, C. Pichonnaz, J. P. Bassin, and K. Aminian, “Estimating the upper-limb dominant segment during daily activity”, Gait & Posture, Vol. 27, pp.368-375, 2008.

[5] C. Sun, Human Behavioural Skills Modelling and Recognition, Master Thesis, University of Wollongong,Wollongong, Australia, 2007.

[6] C. S. Lin, H. C. Hsu, Y. L. Lay, C. C. Chiu, and C. S. Chao, “Wearable device for real-time monitoring of human falls”, Measurement, Vol. 4, no. 1 , pp.831-840, 2007.

[7] G. M. Lyons, K. M. Culhane, D. Hilton, P. A. Grace, and D. Lyons, “A description of an accelerometer-based mobility monitoring technique”, Medical Engineering & Physics, Vol. 27, no. 6, pp.497-504, 2005.

[8] H. Zhou and H. Hu, “Human motion tracking for rehabilitation - a survey”, Biomedical Signal Processing and Control, Vol. 3, no. 1, pp.1-18, 2008.

[9] I.S.H. Suyoto, A.L. Uitdenbogerd, and F. Scholer, “Searching musical audio using symbolic queries”, IEEE Transactions on Audio, Speech, and Language Processing, Vol. 16, no. 2, pp.372-381, 2008.

[10] J. L. Hernandez-Rebollar, R.W. Lindeman, and N. Kyriakopoulos, “A multi-class pattern recognition system for practical finger spelling translation”, Proceedings of the Fourth IEEE International Conference on Multimodal Interfaces, pp.185-190, 2002.

[11] K.W. Li and R. Law, “A novel English/Chinese information retrieval approach in hotel website searching”, Tourism Management, vol. 28, no. 3, pp.777-787, 2007.

[12] L. K Simone and D. G Kamper, “Design

considerations for a wearable monitor to measure finger posture”, Journal of Neuroengineering and Rehabilitation, Vol. 2, 2005.

[13] L. Bergroth, H. Hakonen, and T. Raita, “A survey of longest common subsequence algorithms”, Proceedings of Seventh International Symposium on String Processing and Information Retrieval, pp.39-48, 2000.

[14] S. Park and S. J. Jayaraman, “Enhancing the quality of life through wearable technology”, IEEE Engineering in Medicine and Biology Magazine, pp. 41-48, 2003.

[15] T. D. Bui and L.T. Nguyen, “Recognizing postures in Vietnamese sign language with MEMS accelerometers”, IEEE Sensors Journal, Vol. 7, no. 5, pp.707-712, 2007.

數據

圖 2.  三軸加速度計角度變化  C.  彎曲感測器  使用普特企業有限公司所生產製造的彎曲 感測器,其外型如一張長條型的紙片,能透過彎 曲過程改變本身的電阻值,當彎曲的角度越大則 感測器的電阻值也會提升,相對的藉由電阻值的 改變同時會改變輸入電壓的大小,因此將 ADC 與彎曲感測器連結能從讀取到的電壓值中得知 彎曲感測器的彎曲程度。  在本系統中,所有感測器與 MSP430 所需 之電源皆由同一組電池所提供。考量人類在活 動時身體姿勢變化與動作的頻率,系統設定感測 資料的取樣頻率為 20  Hz。所以當
圖 6.  加速度計角度與手腳位置關係  舉例來說明,當手臂處於向下垂放的狀態 時,我們能從上臂加速度計得到三軸角度(90, 180,90),其分別代表 X 軸與重力方向差 90 度、 Y 軸與重力差 180 度以及 Z 軸與重力差 90 度, 而當手臂往上高舉時上臂之加速度計會得到三 軸角度(90,0,90)。本系統中,我們定義當手部 位在 12 種不同位置時的角度對應關係,以及腳 部位在 7 種不同位置時的角度對應關係,如圖 6 所示。  B
圖 8  系統執行動作相似度檢定  B.   最長共同子序列演算法  為了能比對如序列形式的動作樣本,本文中 我們利用 LCS 演算法[13]來進行動作相似度檢 定的比對工作。最 LCS 是著重於順序性比對的 演算法,常應用於生物資訊 DNA、音樂製作或 是語言文字相似度比對等領域[9][11]。由於 LCS 演算法具有順序與連續性的比對能力加上演算 過程簡單,相當適合用於即時性的連續動作相似 度檢定[5]。LCS 遞迴式如公式(2)所示。  ,0if0 or0,[ ][1,1] 1if ,0 and ma
圖 14.  辨識 9 種不同姿勢  圖 15.  辨識結果透過 3D 介面呈現  (三)  動作相似度實驗  為確認 LCS 演算法以及本文所提相似度計 算公式能作為動作相似度檢定的方法,本實驗訓 練了運動保健書籍中與健身有關的簡易活動。我 們訓練了 6 種常見且須反覆執行的簡易動作並將 其存入動作表,如表 2 所示。而在回想階段,使 用者將再次分別執行上述相同的動作並讓系統 透過 LCS 演算法個別檢定 20 次後記錄各動作相 似度的計算結果;同時我們也會考量到不同緩衝 器長度之設計對於每一個動作在相似

參考文獻

相關文件

Soille, “Watershed in Digital Spaces: An Efficient Algorithm Based on Immersion Simulations,” IEEE Transactions on Pattern Analysis and Machine Intelligence,

在軟體的使用方面,使用 Simulink 來進行。Simulink 是一種分析與模擬動態

F., “A neural network structure for vector quantizers”, IEEE International Sympoisum, Vol. et al., “Error surfaces for multi-layer perceptrons”, IEEE Transactions on

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications

D.Wilcox, “A hidden Markov model framework for video segmentation using audio and image features,” in Proceedings of the 1998 IEEE Internation Conference on Acoustics, Speech,

• 主張環境倫理學應包括三大要素,即「倫理體系」 (the Ethical System) 、「尊重自 然的態度」 (the Attitude of Respect for Nature) 以及「生命中心的自然觀」 (the Bioc entric Outlook

Many kinds of sensors like sound sensor, light sensor, temperature/humidity sensor and infrared sensor are used in the hardware system to imitate the sense organs of

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks”, the 16th IEEE International Conference on Computer Communications