人間の姿勢評価技術の開発と実装

人間の姿勢評価技術の開発と実装

[51CTO.com クイック翻訳]関連調査レポートによると、デジタルフィットネス市場の規模は2022年までに274億米ドルに達すると予想されています。フィットネス トレーナーに代わるテクノロジーがあると誰かが言ったら、それは 3D Human Pose Estimation テクノロジーを指しているに違いありません。デジタルフィットネスにおける比較的新しいが急速に成長している技術として、ユーザーが入力した身体運動ビデオを使用して、さまざまなスポーツパラメータ指標を自動的に分析できます。以下では、私自身の実装経験に基づいて、AI フィットネス分野向けの 3D 人間ポーズ推定アプリケーションを開発および実装する方法について説明します。

人間の姿勢推定とは何ですか?

コンピュータビジョンをベースとした技術である人間の姿勢推定は、人体モデリングを通じてさまざまな人間の動きや姿勢を検出し、分析することができます。このタイプのテクノロジーには通常、次の 3 つの人間モデルが含まれます。

  • スケルトンベースのモデル - 足首、膝、肩、肘、手首、手足のポーズなどの関節 (キーポイント) のセットで構成されます。これらが人体の骨格構造を構成します。このようなモデルは柔軟性があるため、2D と 3D の両方の人間の姿勢推定技術で使用できます。
  • シルエットベースのモデル - 人間の胴体と手足の大まかな幅で構成され、体の部分はアウトラインの境界と長方形としてレンダリングされます。
  • ボリュームベースのモデル - 3D の人間の形状とポーズで構成されます。これらのポーズは、幾何学的なメッシュと形状を持つボリューム モデルを使用して 3D スキャンによってキャプチャされます。

出典 – https://arxiv.org/pdf/2006.01423.pdf

以下では、主に 2D または 3D の視点から検出されたスケルトンベースのモデルについて説明します。そのうち、2D 姿勢推定の検出と分析は、RGB 画像内の人体の関節の X、Y 座標に基づいて行われ、3D 姿勢推定では、X、Y、Z 座標を検出して分析します。通常、フィットネス アプリケーションでは、スポーツ中の人間の姿勢をより正確に分析するために 3D 推定を使用するのが最適です。したがって、AI フィットネス コーチ アプリの基本的なプロセスは次のようになります。

1. 練習中のユーザーの動きをキャプチャする

2. スポーツパフォーマンスの正確性を分析する

3. ユーザーインターフェースにエラーを表示する

次に、3D 人間姿勢推定技術が人体の重要なポイントをどのように検出するかについて説明します。

上図に示すように、このプロセスではまず人体の関節を抽出し、次にディープラーニングアルゴリズムを通じて人体の姿勢を分析します。人間の姿勢推定システムがビデオ録画をデータ ソースとして使用する場合、より高い精度を実現するために、単一の安定した姿勢画像ではなく、実際の動きの一連のフレームからキー ポイント (つまり、関節の位置) を検出する必要があります。

3D 人間の姿勢推定システムを開発する方法は多数ありますが、最も一般的な方法は、特定の画像/フレームから 3D または 2D のキーポイントを抽出するためにディープラーニング モデルをトレーニングすることです。次のビデオを、時空間畳み込みを備えた畳み込みニューラル ネットワーク (CNN) を使用して分析します。

ソース – https://github.com/facebookresearch/VideoPose3D/blob/master/images/convolutions_anim.gif

既存のモデルを分析した結果、VideoPose3D がフィットネス アプリケーションに適した選択肢であることがわかりました。入力から事前トレーニング済みの 2D 検出器として COCO 2017 データセットを使用して、2D キーポイントのセットを検出できます。同時に、特定の関節の位置を正確に予測するために、異なる期間に撮影された複数のフレームからの視覚データを処理します。

AIフィットネスコーチアプリで人間の姿勢評価を使用する方法

私たちの目標は、システムが特定の入力ビデオを検査して、一般的なモーションエラーがあるかどうかを検出できるようにすることだとします。つまり、アプリは入力ビデオを、同じ動きを披露するプロのアスリートの参照ビデオと比較する必要があります。次に、具体的な処理フローについて説明します。

1. アクションの開始と終了に合わせて入力ビデオをカットする

開始点と終了点の注釈については、任意のしきい値を使用して、ボディ制御点の位置を自動的に検出できます。たとえば、スクワットのときに、腕の角度と手の高さの位置を検出し、任意のしきい値を使用して、キャプチャされた運動の開始点と終了点を比較できます (下の図を参照)。

ビデオソース – https://www.youtube.com/watch?v=M-qAx0yGK9w

もちろん、別のアプローチを使用することもできます。つまり、ユーザーにアクションの開始と終了を意図的に示すように依頼することです。

2. ユーザーの体の2Dおよび3Dのキーポイントを検出する

上記で検出された開始点と終了点に基づいて、アルゴリズムはそれらを 2D および 3D キー ポイントに自動的に変換します。

3. 練習段階の分解

キーポイント(関節)の位置を抽出する際には、参照ビデオの位置と比較する必要があります。ユーザーの実際の移動速度は、参考動画のプロアスリートの移動速度とは異なるため、直接比較することはできません。

これらの違いに対処するには、演習を段階的に分割します。下の図に示すように、スクワット運動は、しゃがむ段階と立ち上がる段階の 2 つの主要な段階に分けられます。

出典 – stronglifts.c​​om

次に、入力ビデオから検出されたキーポイントをフレームごとに分析し、モーション基準を使用して参照ビデオのキーポイントと 1 つずつ比較して、分解を完了します。

4. よくあるエラーを検索する

3D キーポイントの検出と練習フェーズの分解が完了すると、入力ビデオ内の練習動作における一般的なミスを検出できます。下の図に示すように、ユーザーがしゃがむと、脚がまっすぐに伸びるのではなく、外側に曲がっていることが検出されます。また、膝は足よりも胴体に近くなる必要があります。

ビデオソース – https://www.youtube.com/watch?v=W73Mc0Gil9A&t=244s

5. 入力ビデオと参照ビデオをフレームごとに比較する

ユーザーの動きをより正確に修正するには、次の手順に従って、入力ビデオと参照ビデオをフレームごとに比較する必要があります。

1) 入力ビデオの進行に合わせて参照ビデオの速度を遅くしたり早送りしたりします。

2) ユーザーとプロアスリートの骨格モデルの回転角度が基準点と一致するように位置合わせします。

3) 参照ビデオと入力ビデオは異なる距離から撮影されている可能性があるため、2 セットのスケルトンを結合または正規化する必要があります。

4) フレームごとに重要なポイントを比較して、動きの不一致を検出します。

5) 上記のプロセスをさまざまな関節(足、膝、手、肘など)に対して繰り返します。

6. 結果を表示し、ユーザーへの提案を生成する

分析サイクル全体が完了すると、ユーザーはさまざまな形式で表示される結果を取得する必要があります。たとえば、出力結果には、エラー メッセージを含むさまざまなインタラクティブな 3D 再構築が含まれるため、ユーザーは特定のアクションの詳細を拡大、縮小、巻き戻し、早送り、一時停止することができます。もちろん、出力結果には、繰り返し回数、単一サイクルの平均速度、期間など、特定のアクションに関する統計情報を収集して表示することもできます。

次の図は、ビデオベースの 3D 人間姿勢推定システムの出力の例です。

出典: stronglifts.c​​om のメンズヘルスチャンネル

学んだ教訓

まとめると、AI フィットネス コーチ アプリ開発の観点から、3D 人間姿勢推定システムの基本的な動作原理と操作手順について説明しました。もちろん、実際のプロジェクトの具体的な特性に応じて、ビジネス ニーズの変化に応じてプロセスが追加、削除、削減、または変更される可能性があります。私の経験の要約をいくつか紹介します。

  • 3D 人間姿勢推定は、フィットネス運動における動作エラーの検出に使用できます。
  • 高品質の 3D キーポイントを取得するには、適切な 2D キーポイント検出器を選択することが重要です。
  • 関節の動きが速いと、2D モデル内のキーポイントを検出してエラーを見つけるのが難しくなります。
  • 事前にトレーニングされたモデルは、通常とは異なる動きや姿勢にはうまく対応できない場合があります。この時点で、特定のプロパティを持つデータを使用してモデルを最適化するために、微調整または再トレーニングが必要になる場合があります。

注: この記事は https://mobidev.biz から引用したものです。 MobiDev は、技術研究とソフトウェア開発サービスの体験を提供する Web サイトです。

原題: 人間の姿勢推定技術 2021 ガイド、著者: Maksym Tatariants

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください]

<<:  音声認識市場は2025年までに267億9000万ドルに達する見込み

>>:  顔認証でお金を引き出すのは安全ですか?

ブログ    
ブログ    
ブログ    

推薦する

傲慢か偏見か?AIはあなたの美的観念に影響を与えていますか?

数日前、TikTokで、ある親がTikTokの特殊効果を使って子供の年齢と容姿を計測する動画を見まし...

...

AIOps 初心者ガイド

【51CTO.com クイック翻訳】ビジネスリーダーとして、企業がコンピューターベースの業務をますま...

...

...

速報、AI専門家のJing Kun氏がBaiduを退社! CIOの李英がXiaoduのCEOに就任

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

あなたは統計学者になれますか?トランスフォーマーの強力な学習メカニズム「自動アルゴリズム選択」

ChatGPT などの大規模な Transformer ベースの言語モデルには、非常に強力なコンテ...

人工知能が医薬品開発を加速させる

業界における人工知能(AI)の応用シナリオは増え続けており(日常的なスマート製品から大規模なイノベー...

DeepMindの強化学習法はAIと人間のより良いコラボレーションを約束する

[[437442]] [51CTO.com クイック翻訳]囲碁からスタークラフト、Dotaまで、多く...

データを盗むために設計された8つの偽ChatGPTマルウェアアプリ

翻訳者 |陳俊レビュー | Chonglou現在、人々は、回答の検索、グラフィック コンテンツの生成...

...

必要なのはソースコードだけです! 7Bコードの小型モデルは同サイズでは無敵で、その性能はChatGPTやGoogle Geminiに匹敵する

「GitHub Copilot のようなコード補完ツールは、100 万人以上の開発者に使用されており...

画像認証コードで人工バカになる

[[416826]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI...

グーグル、規制当局の措置を受けてEUでのチャットボット「バード」のリリースを一時停止

グーグルは6月14日、欧州連合(EU)の主要データ規制当局がプライバシーに関する懸念を表明したため、...