win10+vs2019+cuda10.1+cudnn+OpenPose1.5.1配置教程

下載網址:https://github.com/CMU-Perceptual-Computing-Lab/openpose/releases

安裝環境:vs2019,cuda10.1,cudnn

 

官方安裝教程

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

官方問題處理

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

 

注意,直接使用cmake配置,網絡太慢,一些第三方庫下載不下來,會報錯,按照下面步驟執行即可。

1、安裝CUDA10.1

下載網址:https://developer.nvidia.com/cuda-toolkit-archive

按照如下選擇:

CUDA下載完成後,點擊執行.exe文件,接下來一直選擇下一步即可。【可自定義安裝路徑】

安裝完成後打開cmd,輸入nvcc -V

2、安裝cudnn

下載網址:https://developer.nvidia.com/rdp/cudnn-download【注意需要登陸】

下載完成後,解壓即可。

3 、在vs中測試cuda與cudann

1)打開一個新的vs工程,“創建新項目”,搜索cuda,選中“CUDA 10.1 Runtime”,點擊“下一步”。

2)選擇位置,填寫名字,創建新的工程。

打開屬性管理器,添加新的屬性文件,然後雙擊打開屬性文件進行配置。

3)配置頭文件與庫文件

在VC++目錄中加入變量:

包含目錄爲:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include

C:\software\cudnn10.1\cuda\include

 

庫目錄爲:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64

C:\software\cudnn10.1\cuda\lib\x64

 

配置屬性–>鏈接器–>輸入–>附加依賴中添加庫文件:

cublas.lib

cuda.lib

cudadevrt.lib

cudart.lib

OpenCL.lib

cudnn.lib

 

4)右鍵選擇“CUDA C/C++”中的Device將第一個修改爲:是

5)生成解決方案,進行調試。

編譯通過,調試有輸出,則安裝完成。

 

測試cudnn的正確性:

複製下面代碼,替換kernel.cu中的內容

#include <iostream>

#include <cuda_runtime.h>

#include <cudnn.h>

using namespace std;

void main()

{

         cudnnHandle_t handle;

         cudnnStatus_t t = cudnnCreate(&handle);

         cout << cudnnGetErrorString(t);

         getchar();

}

 

4、下載第三方庫

openpose-1.5.1\3rdparty\windows文件夾中,

打開下面bat文件,找到網址單獨下載下面幾個庫。

下載完時候解壓到該文件夾,

在CMakeLists.txt中將下載第三方庫的語句註釋掉:

5、cmake安裝程序

點擊“Configure”:

點擊“Generate”,報出以下warning:

WARNING: Target "openpose" requests linking to directory "D:/work/BehaviorDetection/code/c++/openpose-1.5.1/3rdparty/windows/opencv". Targets may link only to libraries. CMake is dropping the item.

注意,把OpenCV_LIBS路徑設置爲:D:/work/BehaviorDetection/code/c++/openpose-1.5.1/3rdparty/windows/opencv/x64/vc15/lib/opencv_world401.lib

然後重新“Configure”->“Generate”即可。

 

6 、項目測試

1)打開build中的.sln,打開工程。

2)打開解決方案,選擇ALL_BUILD,右鍵點擊生成。

3)選擇Examples文件夾下的其中一個例子,右鍵設爲啓動項後點擊使用F5運行。

報錯:

原因:pose_iter_584000.caffemodel文件找不到,或不能正確讀取(沒下載完整)

解決:重新下載,大小約99M。

【下載網址如下:

http://posefs1.perception.cs.cmu.edu/OpenPose/models/pose/body_25/pose_iter_584000.caffemodel

http://posefs1.perception.cs.cmu.edu/OpenPose/models/hand/pose_iter_102000.caffemodel

http://posefs1.perception.cs.cmu.edu/OpenPose/models/face/pose_iter_116000.caffemodel

 

將OpenPoseDemo設置爲啓動項,右鍵屬性,在命令參數中輸入:

--image_dir examples\media\【運行圖像】

--video examples\media\video.avi【運行視頻】

運行圖像:

(1)Body:

build\x64\Release\OpenPoseDemo.exe --image_dir examples\media\

(2)face and hands

build\x64\Release\OpenPoseDemo.exe --image_dir examples\media\ --face --hand

 

運行視頻:

(1)Body:

build\x64\Release\OpenPoseDemo.exe --video examples\media\video.avi

(2)face and hands

build\x64\Release\OpenPoseDemo.exe --video examples\media\video.avi --face --hand

 

 

Maximum Accuracy Configuration:

(1)Body:

build\x64\Release\OpenPoseDemo.exe --net_resolution "1312x736" --scale_number 4 --scale_gap 0.25

(2)Body + Hand + Face:

build\x64\Release\OpenPoseDemo.exe --net_resolution "1312x736" --scale_number 4 --scale_gap 0.25 --hand --hand_scale_number 6 --hand_scale_range 0.4 --face

性能說明:這個版本由於需要巨大的內存,不能在CPU上工作。如果一定要使用純CPU版本,則需要手動裁剪適應openpose的整個圖像面積的人。

在GPU上運行,需要10.5 GB的GPU memory (6.7 GB for COCO model),在Titan X幀率約2 FPS body-foot model (1 FPS for COCO)。注意以下兩點:

(1)增加--net_resolution將大大降低幀速率並增加延遲,同時可能會提高準確性。但是,這種準確性的提高並不是在所有場景中都能保證的,需要對每個特定場景進行更詳細的分析。例如,對於小人物的照片來說效果會更好,但對於人佔很大比例的圖來說效果通常會更差。因此,我們建議遵循下面的規則,以便在大多數情況下,無論大小尺度的人都能獲得最大的準確度。

(2)請勿將此配置用於MPII model,此多尺度設置可能會損害其精度。此配置僅適用於COCO和COCO擴展(例如,默認的BODY_25)模型。

 

BODY_25 vs. COCO vs. MPI Models之間的差異:

BODY_25 model (--model_pose BODY_25)包括身體和腳的關鍵點【基於論文:OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields】

COCO and MPI models更慢,精度更差點,不包括腳部的關鍵點【基於論文:Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields】

推薦使用BODY_25 model。

 

有一個例外,對於CPU版本,COCO和MPI models更快一些,但依然是BODY_25 model精度好一些。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章