公開日: 最終更新日:

Ubuntu18.10にopenposeをインストール(環境構築)

Ubuntu18.10にOpenPoseをインストールするのになんかいろいろ手こずったためメモとして残しておく。

環境

CPU: Intel Core i7-8700
 メモリ: 32GB
 グラボ: RTX2080
 OS: Ubuntu18.10 desktop

ちなみにグラボからの映像出力は行っていない。

グラボ関係のツールとかを入れる

グラボのドライバ, CUDA-toolkit, cuDNNを入れておく。

グラボドライバのインストール

https://www.nvidia.co.jp/object/unix-jp.html

こちらから”NVIDIA-Linux-x86_64-418.56.run”をダウンロードした。記事執筆時での最新版であるのでそこは適宜変えていただきたい。

インストールは実行権限を与えてから。

きちんとインストールされたかを確認。

きちんとインストールされたことがわかる。

CUDA-toolkitのインストール

次はCUDA-toolkitのインストール。ここから自分の環境(Ubuntu18.10)のrunファイルを落としてくる。debでもいいと思うけど。今回は10.1の最新版をダウンロード。

また同じように実行権限を与えて実行。

PATH通せって出てきたので通してあげる。

参考: ubuntu16.04でopenpose環境構築

cuDNNのインストール

以下のURLからダウンロードするが、登録が必要である。

https://developer.nvidia.com/rdp/cudnn-download

ちなみにネットの古い記事を見ていると少し古いバージョンのCUDAをインストールしたりとかしているが、今回の環境、とりわけこのRTX2080などのRTXシリーズは最新版CUDA+Ubuntu(Linux)でないと正常に動作しないらしい。というかWindowsでは動作しなかった。もうこの際だしとWindowsを消し飛ばした。さよなら。

こんな画面(2019/04/24)になると思う。これの

cuDNN Runtime Library for Ubuntu18.04 (Deb)

cuDNN Developer Library for Ubuntu18.04 (Deb)

cuDNN Code Samples and User Guide for Ubuntu18.04 (Deb)

をダウンロードした。

依存関係があるらしく、libcudnn7_7.5.0.56-1+cuda10.1_amd64.debを最初にインストールしてやらないといけなかった。

OpenCVも入れておく

公式ドキュメントにOpenCVも入れておけとか書かれていたので

https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation.md

だるくてaptなんかでインストールしてしまったけど全然最新版でもなんでもないのであまりおすすめしない。

参考: Ubuntu16.04へのOpenCV 3.3.0インストールメモ

このへん読めばできると思う。

OpenPoseのインストール

cmakeが古いとインストールに失敗する

ここからが本題となる。

公式ドキュメントの通りにやったがうまくいかず、吐くエラーをググってもダメ。

結局失敗の一番大きな要因だったと思うのはcmakeのバージョンである。

aptでインストールしていた少し古いバージョンのcmakeを使っていたのだが、それがまずかったっぽい。Githubのissueにもそんなことが書いてあって「まさかな」って思って最新版のソースをダウンロードしてきてビルドしたらうまくいったっていう……。そこらへんのインストールはググって。

実際にインストール

実際にインストール手順は以下のURLを参考にした。

参考: Jetson Nano に Openpose 入れてみる

これでうまくいった。

確認はデモ動かした。

映像が出てきてやってくれる。OKOK、疲れた。

ちなみにRTX2080で、実行中にnvidia-smiを見てやると、

結構重たいことがわかる。RTX2080Tiにしておけばよかったか……?

とりあえずUbuntuでOpenposeのデモは動いた。そこから先はまだ執筆時では未検証であるので今後変更するかもしれない。

関係ないけど春休みに大学生協覗いたらこの本があってOpenCV4出てたのかってなった。学部生の頃にいじろうとしてたころは2だの3だのって感じだったのに……

OpenPose関連記事

OpenPose for Unity で人の動きを二次元に落とし込む
 OpenPoseのJSON形式をCSVに変換する

3件のコメント

  1. ピンバック:OpenPose for Unity で人の動きを二次元に落とし込む - Kim Biology & Informatics

  2. ピンバック:【Python】GPyでガウス過程回帰と予測をやってみる - Kim Biology & Informatics

  3. ピンバック:OpenPoseのJson形式をCSVに変換する - Kim Biology & Informatics

コメントを残す

メールアドレスが公開されることはありません。