Help us understand the problem. What is going on with this article?

TensorFlowでOpenPose(macでできるモーションキャプチャ)

More than 1 year has passed since last update.

OpenPoseのチュートリアルやってみたまとめです。
https://github.com/ildoonet/tf-pose-estimation
スクリーンショット 2018-03-27 10.08.32.png
人物の骨格などを、モーションキャプチャなしで簡単に表示できるツールです。内蔵カメラがあれば、リアルタイム動画描写もできます。

OpenPose
※本家本元は、https://github.com/CMU-Perceptual-Computing-Lab/openpose ですが、
 今回はそれをTensorで動くようカスタマイズされたものを使用します。
※Chainerで試したい方は こちら です。
 尚、Chainerは、手の描写に特化したものも入っており幅が広いですが、Tensorよりも動画のモーキャプが遅くCPUではカクカクでした。

動作環境は、macOS Sierraです。

1.仮想環境を作る

homebrewでpython3をインストールしたあと、
virtualenvでopenposeの仮想環境作り、その中に入って作業します。
不要な方はスキップしてください。

- 仮想環境作り

homebrewのインストール
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
homebrewでpython3のインストール
brew install python3
virtualenvのインストール
pip install --upgrade virtualenv
virtualenvで仮想環境を作る hogeは任意の名前でよい
virtualenv --system-site-packages -p python3 hoge

- 仮想環境に入る

source hoge/bin/activate
で、ターミナル左に(hoge)が出てればOK

2.必要なものをインストールする

openposeのパックをダウンロード
git clone https://github.com/ildoonet/tf-pose-estimation

cd tf-openposeで、ダウンロードされたファイルに移動して

必要なモジュールのインストール
pip3 install -r requirements.txt
tensorflowのダウンロード
pip3 install tensorflow
matplotlibのインストール
pip3 install matplotlib

cd models/graph/cmu でさらにcmuという階層に移動して

重みなどなど?インストール
bash download.sh

3.実行する

1行ずつ実行

tf-openpose/srcの階層に移動
cd ../../..
cd tf-openpose/src

- 静止画の検証

python3 run.py --model=mobilenet_thin --resolution=432x368 --image=(検証したい画像のPATH)

Figure_1.png

いい感じです。

- 内臓カメラでの検証

python3 run_webcam.py --model=mobilenet_thin --resolution=432x368 --camera=0

カメラが自動で起動され、リアルタイムで動き始めます。
ウィンドウを閉じても終了しないので、
ターミナルをcontrol+Cで抜けてください。

4. さいごに

■エラー処理
matplotlibがvirtualenvで動かないエラーが結構でます。
https://qiita.com/Kodaira_/items/1a3b801c7a5a41c9ce49
ご参考までに。

■他の環境で実装したい方はこちらみるといいかも、C++とか。
https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away