はじめに
人体推定のライブラリとして、openposeを前回紹介した。
しかしopenposeは商用利用にはお金がかかったり、商用利用でもスポーツの分野へは利用できなかったりと制約が厳しい。 他のツールとして、PoseNetというツールが存在する。こちらはライセンスもApache License2.0であり、ほとんど自由に無料で利用が可能である。
今回は公式のリポジトリに含まれているデモを動かすことを目標にする。 主な手順も上記リポジトリのdemo/README.mdに記載されているので、これをもとに実行していく。
github clone
$ git clone git@github.com:tensorflow/tfjs-models.git
yarnが必要になるので、yarnをインストールする。
まずGPGキーをインポートして、aptを更新、それからインストールする流れになる。
$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - $ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list $ sudo apt update $ sudo apt install yarn
これでyarnが使えるようになった。
$ yarn --version 1.22.4
実行!
$ cd ~/work/tfjs-models/posenet/demos $ yarn $ yarn watch
上記の手順でコマンドを実行するとブラウザが立ち上がり、デモが動く。
コマンドラインにBuilt in .sと表示されていてもブラウザが立ち上がらない場合は、デフォルトではhttp://localhost:1234にアクセスするとでもページになる。
こんな感じで人体が推定できる。そして、なんと言ってもすごいのが見えない部分も推定してくれることである。 試しにウェブカメラでも推定できのでそれで自分の耳を隠してみてもちゃんと場所を推測してくれた。
ちなみに今回の実機はGPUを積んでおらず、CPUで実行した。めちゃくちゃCPUが高負荷になっていて、ホカホカに なったが、動作は非常に快適だった。
まとめ
OpenPoseと比較したら精度は下がっていそうな気がするが、それでも実行速度が断然に違った。
またライセンスもフリーなのは、色々応用できそうで素晴らしかった。
今後、何かのソフトを実装してみようと思
う。