Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
28
Help us understand the problem. What is going on with this article?
@karaage0703

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カメラに対応するソフトを作成しました。

 JetPackのバージョンによってコマンドが変わりますので注意してください。JetPackのそれぞれのバージョンのダウンロード先は、以下ページ参照下さい。

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

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

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

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

 JetPack4.4の場合は、以下コマンドを実行することでセットアップできます。

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

 「jetson-nano-sd-r32.1.1-2019-05-31.zip」の場合は、以下コマンドを実行することでセットアップできます。

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

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

 ラズパイカメラが繋がっている場合は、以下コマンドとなります。

$ 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(ついでにMac)で骨格検出をする方法をまとめました。骨格検出を使って、身体を楽器にするアプリを作ったりしています。興味ありましたらこちらもごらんになってみてください。

Jetson Nanoとディープラーニングを使って身体を楽器にする「Skeleton Sequencer」に関して趣味TECHオンラインに寄稿しました

関連ページ

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

変更履歴

  • 2020/05/31 JetPack4.4に関して追記
28
Help us understand the problem. What is going on with this article?
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
karaage0703
最近はZennに移行気味です。 https://zenn.dev/karaage0703 闇のエンジニア/変なデジカメ開発中/ディープラーニング芸人/Raspberry Piとからあげ大好き/はてなブログ書いてます

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
28
Help us understand the problem. What is going on with this article?