勉強しないとな~blog

ちゃんと勉強せねば…な電気設計エンジニアです。

姿勢推定アルゴリズム調べ

姿勢推定に今までOpenPose、MediaPipe、YOLOv8を使ってきたが、他にも色々あるようなので整理してみる。
2024年2月現在調べたところで。
まだ調べ切れていないかも。

フリーで使えるもの(とは言えライセンスの制約あり)と、商用のものに分けてみる。
個人で使いたいので、後者はあんまり関心ないが、一応リストしておく。

フリーのもの

OpenPose

GitHub - CMU-Perceptual-Computing-Lab/openpose: OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation

OpenPose has represented the first real-time multi-person system to jointly detect human body, hand, facial, and foot keypoints (in total 135 keypoints) on single images.

使ってみたもの。

一番有名か?
ただ、2020年でGitHubの更新は止まっている。

exeと学習済みモデルが用意されているので、お試ししやすい。
試したところでは、処理が結構重かった。システムとして使えるようにするには課題あり。

AlphaPose

GitHub - MVIG-SJTU/AlphaPose: Real-Time and Accurate Full-Body Multi-Person Pose Estimation&Tracking System

AlphaPose is an accurate multi-person pose estimator, which is the first open-source system that achieves 70+ mAP (75 mAP) on COCO dataset and 80+ mAP (82.1 mAP) on MPII dataset.

上海交通大学のもの。
GitHubからすぐ使えるか。
学習済みモデル、推論用のスクリプトもあるよう。

去年までは更新されているので、まだアクティブと言ってもいいのか。
論文も2022年に出ているよう。

HRNet

HRNet · GitHub

HRNetの中でも、物体検出、顔特徴点検出などあるが、その中の一つとして姿勢推定があるよう。

GitHub - HRNet/HRNet-Human-Pose-Estimation: This repo is copied from https://github.com/leoxiaobin/deep-high-resolution-net.pytorch

In this work, we are interested in the human pose estimation problem with a focus on learning reliable high-resolution representations.

高解像度画像を使えるとかな感じ?

学習済みモデルもあるよう。

最終更新は5年前で、2019年6月、OpenPoseより古い…

GitHub - HRNet/HRNet-Bottom-Up-Pose-Estimation: This is an official pytorch implementation of “Bottom-Up Human Pose Estimation by Ranking Heatmap-Guided Adaptive Keypoint Estimates” (https://arxiv.org/abs/2006.15480).

In this work, We present several schemes that are rarely or unthoroughly studied before for improving keypoint detection and grouping (keypoint regression) performance.

こっちは最終更新2021年4月。

GitHub - HRNet/Lite-HRNet: This is an official pytorch implementation of Lite-HRNet: A Lightweight High-Resolution Network.

In this work, we present an efficient high-resolution network, Lite-HRNet, for human pose estimation.

これは軽め?実用に使えそう?
最終更新は上と同じく2021年4月。

YOLO

GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite

とりあえず、現状YOLOv5とYOLOv8で姿勢推定できるのは確認している。
一番使いやすいと思う。

参考。

YOLOv8で姿勢推定する

nokixa.hatenablog.com

MediaPipe

MediaPipe  |  Google for Developers

Googleさんが整備してるから使いやすい。
コード書かなくても、ブラウザからお試しできるし。

ただ、スマホのインカメとか、Webカメラに特化してる気がするので、今の目当てにどこまで使えるか?

商用

VisionPose

姿勢推定AIエンジン「VisionPose(ビジョンポーズ)」| AIシステム開発の株式会社ネクストシステム

VisionPoseは、マーカーや深度センサなどを使わずにカメラ画像を使用して複数人の骨格を検出する高精度のAI姿勢推定エンジンです。
人体30キーポイントを最大60FPSでリアルタイムに検出可能※PCスペックで変動
2台のカメラで3D推論(Standard)と、1台のカメラで3D推論(Single3D)に対応

色々な企業で採用されているらしい。

AsillaPose

アジラ、施設向けAI警備システムに重要な姿勢推定AIで世界トップクラスの「AsillaPose®」シリーズ、最新版をリリース | 株式会社アジラのプレスリリース

株式会社アジラ(本社:東京都町田市、代表取締役:木村 大介、以下アジラ)は、自社プロダクト「施設向けAI警備システム」のコア技術である、姿勢推定AI「AsillaPose®」シリーズの最新版(Ver5.0)をリリースいたしました。

警備システムをやってる会社のものらしい。
怪しい行動の検出に特化してるとか?

「世界最高レベルの高い精度と速度を両立」と書いてあったりもした。

骨格検知アルゴリズム「AsillaPose」とは

Pose Proposal Network (PPN)

コニカミノルタ、複数人の2Dポーズをリアルタイムに高速検出する「Pose Proposal Networks(PPN)」を発表 | Seamless

コニカミノルタ株式会社の研究者は、複数人の2Dポーズをリアルタイムに検出する「Pose Proposal Networks(PPN)」を発表しました。

5分でわかる姿勢推定モデルと応用事例 - AI事業 - マクニカ

コニカミノルタのもの。2018年発表なので古め?
中でYOLO、OpenPoseを使ってるらしい。
論文がリンク切れになってる。

Actlyzer

行動分析技術 Actlyzer(アクトライザー) : 富士通

行動分析の技術だが、姿勢推定も含むのか?もしかしてそれは別?

以上

色々あるので、ピアノの手の動きをうまくとらえられるのはどれか?という観点で選んで試してみたい。