一開始對這個專題的想法,其實很單純:
希望透過攝影機,幫助使用者知道自己在家做復健時,動作到底有沒有做對。
最初想到的方式,就是利用 MediaPipe Pose Landmarker 取得人體關鍵點,再透過關節角度判斷動作。
但隨著每天慢慢深入研究,才發現這件事情並沒有一開始想得那麼簡單。
從最基本的 33 個人體關鍵點,到 x、y、z 座標、關節角度,再到正確動作的判斷標準,每一個部分其實都還有很多需要思考的細節。
其中讓我印象比較深刻的,就是:動作完成,不代表動作正確。
這也是後來決定先以蚌殼式作為實作動作的重要原因。
蚌殼式看起來只是把膝蓋打開,但如果使用者為了讓膝蓋抬得更高,整個骨盆也跟著往後旋轉,就可能失去原本希望達到的訓練目的。
因此,系統不能只判斷膝蓋有沒有打開,還需要觀察骨盆與軀幹的位置變化。
也因為這個動作,開始遇到更多實際的技術問題。
例如側躺時左右髖部可能互相重疊,單純使用 x、y 座標不一定能清楚觀察骨盆旋轉,而 z 軸深度資訊也存在估測誤差。
這些問題讓我發現:
不是有了人體骨架,就代表電腦真的能看懂人體動作。
除了姿態估測之外,這段時間也陸續整理了動作階段、自動計次、即時回饋、訓練紀錄,以及整套系統的使用流程。
從一開始只是希望判斷:「這個動作有沒有做對?」
慢慢變成思考:「使用者要怎麼開始使用?」
「系統怎麼知道一次動作完成?」
「發現姿勢問題時,應該怎麼提醒?」
「訓練結束後,哪些資訊值得留下來?」
到現在,整套系統的架構與功能方向也逐漸清楚。
當然,規劃出完整流程,不代表每個功能都已經真正完成。
接下來仍然需要將目前整理的判斷方式實際寫進程式,測試蚌殼式的姿態辨識結果,並確認骨盆旋轉與其他姿勢變化能不能被穩定偵測。
尤其是目前設計的角度範圍與姿勢判斷規則,還需要透過實際資料與專業參考進一步驗證。
這些都是後續必須面對的挑戰。
但我覺得這 29 天最大的收穫,是開始學會把一個原本很抽象的想法,慢慢拆成可以研究、實作與測試的小問題。
從「我想做一套居家復健輔助系統」,到逐漸知道這套系統需要哪些功能、每個功能可能遇到哪些困難,以及接下來應該從哪裡開始。