Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
架空のコンペ_スクワットフォーム判別コンペの解法
Search
cpptake
March 02, 2024
Programming
0
1.1k
架空のコンペ_スクワットフォーム判別コンペの解法
2024年関西Kaggler会冬でのLT発表資料
cpptake
March 02, 2024
Tweet
Share
More Decks by cpptake
See All by cpptake
BEST BODY JAPAN参戦記
cpptake
0
44
Other Decks in Programming
See All in Programming
AIと一緒にレガシーに向き合ってみた
nyafunta9858
0
250
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
1k
Oxlint JS plugins
kazupon
1
1k
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
210
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
180
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
Smart Handoff/Pickup ガイド - Claude Code セッション管理
yukiigarashi
0
150
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
230
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
740
CSC307 Lecture 05
javiergs
PRO
0
500
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
1.7k
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
50
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Why Our Code Smells
bkeepers
PRO
340
58k
Evolving SEO for Evolving Search Engines
ryanjones
0
130
It's Worth the Effort
3n
188
29k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
A Tale of Four Properties
chriscoyier
162
24k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
440
The Limits of Empathy - UXLibs8
cassininazir
1
220
Transcript
自己紹介 名前 :しぃたけ(@cpp_take) 専攻 :機械工学修士(歩行解析 → 画像処理) 仕事 :生産技術 →
データサイエンティスト 趣味 :筋トレ Kaggle(1年半やってない) その他:半年前子供生まれました
発表内容 背景 無限さんからのDM 実現しようと思って真面目に考えた が下記の理由で断念 ・データ少ない ・採点基準が曖昧 ・年度によってレベルが違う でも何かしたい
架空のコンペ スクワットフォーム判別コンペ 解法共有
スクワットのフォーム判別コンペ バーベルを用いたスクワットは、しゃがみ込みが甘いとと ジムにいる厳しいマッチョ(通称 可動域警察)に攻撃さ れてしまう事で広く知られている。スクワットのフォーム を定量的に把握する手法を作りたい。 コンペ期間:2024年2月18日〜2024年2月23日 参加者 :しぃたけ 主催者
:しぃたけ コンペ概要
データ内容・評価指標 下記の3種のスクワット動画を入力とする(被験者:しぃたけ n数:各1件) ハーフスクワット 浅いスクワット ジムでこれをする と知らないマッチ ョに怒られる フルスクワット 深いスクワット
膝の角度が地面と 水平以下になるの が特徴 脚トレの神、トム・ プラッツ流スクワット 大腿四頭筋にめちゃ効くとん でもスクワット 「俺がジムについた時、既に スクワットは終了してい る。」の名言はあまりにも有 名 評価指標:分析結果がそれっぽくなっていること (データ数少なくて分類問題にできなかったため)
データ取得方法 ・アップ (60kg × 10) ・フルスクワット (100kg×8) ・ハーフスクワット (90kg×8) ・トムプラッツスクワット
(80kg×7) データ取得条件 近所の体育館でスクワットの様 子を横からカメラで撮影 撮り直し ・フルスクワット (シャフトのみ×7) ・ハーフスクワット (シャフトのみ×7) ・トムプラッツスクワット (シャフト のみ×7) →分析対象データ シャフトのみでデータ再取得
解法:姿勢推定 Yolo v8 pose 横向きでもおおむね正確 に姿勢推定ができている
解法:特徴量抽出(大腿角度、膝角度) 大腿角度 膝角度 膝角度時系列推移 大腿角度[deg] 膝角度[deg] 大腿角度時系列推移 下半身の角度定義 大腿角度、膝角度 ・上限値
・下限値 を抽出
解法:大腿角度、膝角度の分析結果 大腿角度の上限下限値 膝角度の上限下限値 大腿角度[deg] 膝角度[deg] •:上限値 :下限値 ・膝、大腿角度を特徴量化するだけでそれなりの結果が得られそう→分類できそう ・トムプラッツ流が最も膝の屈伸が深く、大腿四頭筋への刺激が強そう トムプラッツ流が最も
膝角度の下限値が小さい =最も屈伸が深い 膝、大腿角度共に下 限値が大きい Full Half TomPlatz Full Half TomPlatz
やりたかったけど失敗したこと
筋骨格モデル的なものが作りたかった 筋骨格モデルとは? ヒトの骨格を直線などで単純 化して表現した仮想人体モデ ルのこと。(OpenSIMなどが 有名) 普通は3Dトラッキングデータ に対して使うが、2Dデータに 対してもたまに適用できる ◆できること
・骨格の動きから筋肉の長さ、 張力の推定 ・筋肉のトルクから骨格の位 置を推定 :Yoloの Keypoint 代表的な筋肉につ いて、筋骨格モデ ル的なものを作れ ば、筋肉の伸縮を 可視化できない か? 大腿四頭筋 大腿二頭筋 腓腹筋 やりたいこと
大腿直筋(大腿四頭筋)長さ推定モデルの構築 膝蓋骨 (膝のお皿) 停止部 脛骨粗面 (脛の上の方) 起始部 下前腸骨棘 (股関節の上) 起始部停止部っぽいところを推定
キーポイントの位置から 起始停止部分(筋肉が付 いている所)を推定し それらをつなげた 赤線の長さ=筋肉長さ と仮定する。 大腿直筋
筋長さ推定モデル適用結果 大 腿 直 筋 推 定 長 さ 膝
角 度 大腿直筋長さと膝角度の時系列推移 膝角度による筋肉長さの理論値 ◆屈曲時 ・膝角度 ・・・最小 ・筋肉長さ・・・最大 ◆伸展時 ・膝角度 ・・・最大 ・筋肉長さ・・・最小 理論的には逆位相になるはず ピークの位置が一致しており、同位相になっている :大腿直筋長さ :膝角度 大腿直筋
原因分析 伸展時の姿勢推定 屈曲時の姿勢推定 屈曲時(ガニ股にな った時)に大腿部に 角度ができて、太も もの長さが短くなっ ている 大腿部の長さで正規化する、大腿部角度を補正するなど、試行錯誤したが直らなかった やはり筋骨格の推定には3Dデータが必要
まとめ • 一人でデータを取って、一人でコンペ開催して、一人で参戦した。途中で 強烈な虚しさに駆られたのでオススメできません。Kaggleでもこの手のコ ンペして欲しい。 • Yoloの姿勢推定で関節角度を利用したスクワットのフォーム判別はできそ うな結果は得られた。自作の筋長さ推定モデルは2次元データでは限界があ りそう。 •
Tom Platzは偉大。
None