2017年5月27日土曜日

CPU版の OpenPoseのビルドに失敗した。



準備されているサンプル画像 examples/media

はじめに

順序がGPU版と逆になるが、最初はOpenPoseをCPUのみの環境で動作させようと試みた。

OpenPoseのビルド手順を見ていたら、独自にCaffeが使用でき、なおかつMakefile.configのオプションに

# CPU-only switch (uncomment to build without GPU support).
# CPU_ONLY := 1

などと期待をもたせる記述があった。

結果

残念ながら試みは失敗に終わった。OpenPoseは、Caffe上に独自のライブラリを構築しており、そこで明示的にCUDAの機能を利用している。
上記のオプションは機能してないようだ。

ソース(openpose-master/src/openpose/pose/poseExtractorCaffe.cpp)を見ると

error("ResizeAndMergeCaffe CPU version not implemented yet.", __LINE__, __FUNCTION__, __FILE__);

error("NmsCaffe CPU version not implemented yet.", __LINE__, __FUNCTION__, __FILE__);


などの記載があるので、今後様子を見てみる。

参考 GPU版

以下は、GPU版でのビルド中のメッセージである。

NVCC src/openpose/pose/bodyPartConnectorBase.cu
NVCC src/openpose/pose/poseRenderGpu.cu
NVCC src/openpose/experimental/face/faceRenderGpu.cu
NVCC src/openpose/experimental/hand/handRenderGpu.cu
NVCC src/openpose/core/nmsBase.cu
NVCC src/openpose/core/resizeAndMergeBase.cu

明示的にCUDAの機能を利用していることが確認できる。

0 件のコメント:

コメントを投稿