1. 程式人生 > >【OpenPose-Windows】中斷問題及影象不同解析度對幀率的影響

【OpenPose-Windows】中斷問題及影象不同解析度對幀率的影響

【我的筆記本配置】
Operating system: Windows10
CUDA version :8.0
cuDNN version:5.1
GPU model :Nvidia GeForce 950M (2GB)
Caffe version: Default from OpenPose.
OpenCV version: Default from OpenPose (Windows).

【問題描述】
獨立執行Pose模式的OpenPoseDemo可以正常執行,但是修改face 或者 hand 選項為 true,執行OpenPoseDemo專案,報出如下問題
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
【問題解析】
最初筆者以為是程式出現了bug,便到github上向OpenPose的提供者發出了問題
Win10-VS2015 running OpenPoseDemo(pose-hand or pose-face) have some questions #156
地址:

https://github.com/CMU-Perceptual-Computing-Lab/openpose/issues/156
經過幾次討論和嘗試,筆者鎖定了installation.md文件中的FAQ,
Github連結:https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation.md#quick-start
發現是自己的電腦GPU配置太差,無法執行起來預設狀態的pose+hand/face,以上報出的錯誤也是指出記憶體溢位。
解決方案
按照FAQ所回覆的內容,筆者調整了網路的解析度,其調整如下:

引數 0預設 1次調整 2次調整 3次調整
net_resolution 656x368 320x176 320x176 256x176
face_net_resolution 368x368 368x368 320x320 256x256
hand_net_resolution 368x368 368x368 320x320 256x256

備註:全部網路的解析度必須為16的倍數。

【實驗結果】

—————–0預設:

專案 Pose Pose+face Pose+hand Pose+face+hand
Bug否 無報錯 報錯,記憶體溢位 報錯,記憶體溢位 報錯,記憶體溢位
幀率 幀率較低,平均1.8fps - - -
細節還原度 樣本:examples\media*.jpg 骨骼還原存在誤差,1人識別為2人 - - -

Pose配圖
這裡寫圖片描述
其他配圖
這裡寫圖片描述

—————–1次調整:

專案 Pose Pose+face Pose+hand Pose+face+hand
Bug否 無報錯 無報錯 無報錯 報錯,記憶體溢位
幀率 平均5.4fps 幀率較低,平均1.6fps 幀率較低,平均0.9fps -
細節還原度 樣本:examples\media*.jpg 骨骼正常還原 面目正常還原 手型正常還原 -

Pose配圖
這裡寫圖片描述
Pose+face配圖
這裡寫圖片描述
Pose+hand配圖
這裡寫圖片描述
Pose+hand+face配圖
這裡寫圖片描述

—————–2次調整:(Github官方FAQ推薦)

專案 Pose Pose+face Pose+hand Pose+face+hand
Bug否 無報錯 無報錯 無報錯 報錯,記憶體溢位
幀率 平均5.4fps 幀率較低,平均2.6fps 幀率較低,平均1.1fps -
細節還原度 樣本:examples\media*.jpg 骨骼還原度不變 面目還原度下降 手型還原度下降 -

Pose配圖
這裡寫圖片描述
Pose+face配圖
這裡寫圖片描述
Pose+hand配圖
這裡寫圖片描述
Pose+hand+face配圖
這裡寫圖片描述

—————–3次調整:

專案 Pose Pose+face Pose+hand Pose+face+hand
Bug否 無報錯 無報錯 無報錯 報錯,記憶體溢位
幀率 平均5.7fps 幀率較低,平均2.6fps 幀率較低,平均1.6fps -
細節還原度 樣本:examples\media*.jpg 骨骼還原度不變 面目還原度下降 例圖無法還原手型 -

Pose配圖
這裡寫圖片描述
Pose+face配圖
這裡寫圖片描述
Pose+hand配圖
這裡寫圖片描述
Pose+hand+face配圖
這裡寫圖片描述