Open Poseとは

OpenPoseは、ディープラーニングに基づく人物姿勢推定システムの一つであり、画像や動画内の複数の人物に対して、顔、手、身体のキーポイント(関節)を高精度かつリアルタイムで検出・トラッキングすることを可能にしたフレームワークのことです。

OpenPoseの概要と革新性

OpenPoseは、カーネギーメロン大学の研究者らによって開発され、2017年に公開されました。これは、複雑な人物姿勢推定(Human Pose Estimation)タスクを実用的なレベルに引き上げた画期的なモデルとして広く認知されています。

従来の姿勢推定モデルは、画像内に一人の人物しかいない場合や、キーポイント(関節)の検出のみに焦点を当てていました。しかし、OpenPoseは、画像内の人物の数に関係なく、身体(body)、手(hand)、顔(face)の合計で最大135点ものキーポイントを正確に検出する能力を持ち、さらにそれらのキーポイントがどの人物に属するかという関連付け(Part Association)も同時に解決します。

主な目的は、画像内のすべての人物に対して、身体のすべてのパーツをピクセル単位で正確に特定し、それらの接続関係(姿勢)を安定して推定することです。

OpenPoseの主要な仕組み:ボトムアップ・アプローチ

OpenPoseは、「ボトムアップ(Bottom-up)」と呼ばれるアプローチを採用しています。これは、まず個々のパーツ(キーポイント)を検出し、その後にそれらのパーツを組み合わせて人物の骨格を構築する手法です。これに対し、「トップダウン(Top-down)」アプローチは、まず人物の位置を特定してから、その人物の領域内でパーツを検出します。

OpenPoseのパイプラインは、以下の2種類の出力を生成するマルチステージのCNN(畳み込みニューラルネットワーク)で構成されています。

1. 身体パーツの信頼度マップ(Confidence Maps)

  • 概要: 身体の各キーポイント(例:鼻、首、肘など)が、画像のどの位置に存在するかを示すヒートマップです。
  • 動作: 各マップは、特定のキーポイントが存在する確率の分布を表し、キーポイントの位置を正確に特定します。

2. パーツ親和場(Parts Affinity Fields, PAFs)

  • 概要: 身体の各パーツ間の繋がり(例:首から肩、肘から手首)を表現するベクトル場です。
  • 動作: PAFsは、ある繋がりを構成するべき2つのパーツ(pj​とpk​)を結ぶ方向を示すベクトルを、画像上の各ピクセルに割り当てます。このベクトル情報を用いることで、検出されたパーツ候補の中から、どのパーツ同士が実際に接続しているかを正確に推論できます。

3. パーツの結合(Part Association)

  • 動作: 検出されたすべてのキーポイントとPAFsの情報を統合し、個々のパーツ候補を特定の人物に割り当て、完全な骨格(スケルトン)を構築します。PAFのベクトルとパーツ候補間の方向ベクトルとの内積を計算することで、接続の確からしさを評価します。

OpenPoseの優位性と応用

OpenPoseのボトムアップ・アプローチとPAFの組み合わせは、特に以下の点で優れています。

  • 多人数への対応: 人物検出(トップダウンの最初のステップ)に失敗してもパーツ検出は行われるため、画像内の人物の数や重なりに強いロバスト性を持ちます。
  • 速度と精度: 単一のCNNパスで済むため、多くの人物が存在する場合でも、トップダウンモデルよりも効率的かつ高速に処理できます。

OpenPoseは、その高い実用性から、ヒューマン・コンピュータ・インタラクション(HCI)、スポーツ解析、セキュリティ監視、エンターテイメントなど、幅広い分野で利用されています。

関連用語

フレームワーク | 今更聞けないIT用語集
ビルドパイプライン | 今更聞けないIT用語集
AIソリューション

お問い合わせ

システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。

APPSWINGBYの

ソリューション

APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。

システム開発

既存事業のDXによる新規開発、既存業務システムの引継ぎ・機能追加、表計算ソフトによる管理からの卒業等々、様々なWebシステムの開発を行っています。

iOS/Androidアプリ開発

既存事業のDXによるアプリの新規開発から既存アプリの改修・機能追加まで様々なアプリ開発における様々な課題・問題を解決しています。


リファクタリング

他のベンダーが開発したウェブサービスやアプリの不具合改修やソースコードの最適化、また、クラウド移行によってランニングコストが大幅にあがってしまったシステムのリアーキテクチャなどの行っています。