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

Jetson Nanoに骨格検出を実現するソフト「tf-pose-estimation」をセットアップする方法

openpose.gif

Jetson NanoでPose Estimation

 Jetson Nanoで骨格検出の技術を動かしてみます。「tf-pose-estimation」というソフトを使うと単眼カメラで人間の骨格検出をすることができます。詳しくは以下ブログ記事を参照下さい。

単眼カメラでKinectのように骨格検出する技術「Realtime Multi-Person Pose Estimation」を試してみた

Jetson Nanoで「tf-pose-estimation」のセットアップ

 ほとんど以下の記事を参考にさせていただきました。おかげで詰まることなくセットアップできたので、本当に感謝です。

Jetson Nano に TensorFlow版のOpenpose入れてみる

 そのままだと付加価値がないので、上記のセットアップをコマンド一発で実行できるようにスクリプトにした上で、Raspberry Piカメラに対応するソフトを作成しました。

 Jetson NanoのSDイメージは、「jetson-nano-sd-r32.1.1-2019-05-31.zip」前提です。ダウンロード先は、以下ページ参照下さい。

Jetson Nanoで使えるSDカードのイメージファイルまとめとイメージ書き込み方法

 最新のJetPackだとOpenCVが4系になり、そのままでは動きませんので注意して下さい。

 以下4行のコマンドを実行するだけ「tf-pose-estimation」のセットアップができます。

$ git clone https://github.com/karaage0703/jetson-nano-tools
$ cd jetson-nano-tools
$ ./install-tensorflow.sh
$ ./install-pose-estimation.sh

 install-tensorflow.shで「tf-pose-estimation」に必要なTensorFlowをセットアップして、install-open-pose.shで「tf-pose-estimation」のセットアップ(関連ライブラリのインストール等含む)を行っています。

Jetson Nanoでの「tf-pose-estimation」の実行方法

 ラズパイカメラ v2を繋いで以下コマンドを実行します。

$ cd ~/tf-pose-estimation
$ python3 run_jetson_nano.py --model=mobilenet_v2_small --resize=320x176

 私の環境だと7〜8fpsの速度でした。

 ラズパイカメラではなくて、Webカメラで動かす場合は、以下コマンド実行すればOKです。

$ python3 run_webcam.py --model=mobilenet_v2_small --resize=320x176 --camera=1

tf-pose-estimationのMacでの動かし方

 補足(個人的メモ)です。基本的にはJetson Nanoと同じです。

 Pythonのセットアップは以下参照下さい。

Pythonで機械学習をするための環境を雑にセットアップする方法(Jupyter notebook環境、ディープラーニング環境含む)on Mac/Linux

 TensorFlow、OpenCVあたりをインストールしておけば良いと思います。

 swigに関しては、Homebrewで以下コマンドでインストールしました。

$ brew install swig

 テストは以下のコマンドでOKです。

$ python run_webcam.py --model=mobilenet_v2_small --resize=320x176

関連ページ

Jetson Nano関係のTIPSまとめ
Jetson Nano関係の情報は、上記ページにまとめていますのでよければ参照下さい。

karaage0703
闇のエンジニア/変なデジカメ開発中/ディープラーニング芸人/Raspberry Piとからあげ大好き/はてなブログ書いてます
https://karaage.hatenadiary.jp
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
No 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
ユーザーは見つかりませんでした