🐡

Windows で OpenPose をビルドする

に公開

概要

Windows 上で OpenPose を使う Python プログラムを実装するにあたって、OpenPose の Python モジュールを利用するには、いちからビルドしなければならない。しかし、そのビルドに手間取ったので、その手順を説明する。

環境

  • Windows 11 x64
  • Python 3.7.9(Python のインストール手順は省略)
  • Git 2.42.0.windows.2(Git のインストール手順は省略)
  • CUDA 13.0(CUDA を使用して、GPU による処理を行う)
  • cuDNN 9.14.0
  • CMake 3.31.9
  • Visual Studio Community 2022
  • MSVC v142 - VS 2019 C++
  • PyBind 3.0.1

事前準備

0. Python および Git のインストール

省略

1. CMake のインストール

ビルドには、v3.5 よりも低いバージョンの CMake が必要になる。Google で「CMake Download」と検索して、Older Releases に移動するか、このリンクを使用して、古い CMake のダウンロードページに移動。GitHub からのダウンロードであれば、Assets を展開して、cmake-3.xx.x-windows-x86_64.msi を選択してダウンロード。ダウンロードしたファイルを実行して、インストール。設定はデフォルトで良い。

CMake とはなにか

ソフトウェアのビルドプロセスを管理するための強力かつ包括的なソリューション。具体的には、C++などのソフトウェアをコンパイルするためのビルドシステムを自動生成するツール。クロスプラットフォーム開発を容易にするためのもので、OS や IDE に依存しない設定ファイル(CMakeLists.txt)から、各環境用のビルドスクリプト(Makefile、Xcode プロジェクトファイルなど)を自動生成する。

2. Visual Studio と必要なワークロードのインストール

このリンクを使用して、Visual Studio Community 2022 をダウンロード。ワークロード選択画面で、「C++によるデスクトップ開発」にチェック。また、「個別のコンポーネント」タブで、「v142」と検索して、「v142 ビルドツール用 C++ v14.29(16.11) ATL (x86 および x64)」、「v142 ビルドツール用 C++ v14.29(16.11) MFC (x86 および x64)」、「MSVC v142 - VS 2019 C++ x64/x86 ビルドツール (v14.29-16.11)」の 3 つにチェックを入れてインストール。

3. CUDA のインストール

このリンクを使用して、ダウンロードページに移動。適切なプラットフォームを選択して、CUDA Toolkit Installer を取得する。インストーラを起動したら、インストールオプション「高速」を選択して、CUDA の最新バージョンをインストール。

4. cuDNN のインストール

このリンクを使用して、ダウンロードページに移動。適切なプラットフォームを選択して Base Installer を取得する。インストーラを起動したら、インストールオプション「高速」を選択して、cuDNN の最新バージョンをインストール。インストールが完了したら、念のために PC を再起動。

4. プロジェクトのクローン

以下のコマンドを使用して OpenPose のソースコードをクローン

git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git

openpose ディレクトリに移動して、サブモジュールをインストール

cd openpose
git submodule update --init --recursive --remote

5. PyBind のインストール

Google で「PyBind」と検索するか、このリンクを使用して、ダウンロードページに移動。Source code (zip) をクリックしてダウンロード。ダウンロードしたファイルを展開して、内容物(README が入った階層のファイルおよびフォルダ)をすべてopenpose/3rdparty/pybind11にコピー。

6. Caffe モデルのインストール

Caffe モデルは有志によってウェブ上にアップロードされている。このページから、モデルをダウンロードする。Zip でのダウンロードには、Kaggle への会員登録が必要。ダウンロードした Zip を解凍して、中のファイルをプロジェクトにコピーする。

ファイル名 コピー先
pose_iter_584000.caffemodel openpose/models/pose/body_25
pose_iter_440000.caffemodel opepose/models/pose/coco
pose_iter_160000.caffemodel opepose/models/pose/mpi
pose_iter_116000.caffemodel openpose/models/face
pose_iter_102000.caffemodel openpose/models/hand

Configure および Generation

openpose ディレクトリ直下に build ディレクトリを作成し、移動し、CMake GUI を起動

mkdir ./build
cd ./build
cmake-gui

CMake GUI にて、Where is the source code に openpose ディレクトリを設定

Add entry を押して、BUILD_PYTHON の Boolean にチェックを入れる

Configure を押し、Visual Studio 16 2019、x64を設定して、Finish を押す

途中で止まったりしたら、stop を押して、Configure をやり直す
完了したら、Generate を押す。

ビルド

CMake GUI の Open Project を押す。

参考

https://qiita.com/TrashBoxx/items/2e884998cd1193f73e2f
https://black-kitten092.hatenablog.com/entry/2020/08/04/173615
https://miyashinblog.com/openpose/

Discussion