2

我正在開發一個人必須模仿預定姿勢的項目。照片是由模仿此預定義姿勢的人制作的。 然後,從這個圖像中提取人的人體姿勢,並與預定義的姿勢進行比較。最後一個得分機制決定兩個姿勢的匹配程度,或者它們完全匹配。智能手機上的人體姿勢估計/匹配

我想爲智能手機開發,因此理想情況下,所有內容都嵌入智能手機本身。這意味着,該實現能夠在CPU或智能手機GPU上運行(例如Moto G5 Plus,板載Adreno 506 GPU - 支持OpenGL)。 工作嵌入式不是必須的,我認爲也可以將估算/匹配算法外包給包含體面GPU的中央服務器。嵌入式或外包式這種特殊選擇是一個涉及許多參數(性能/計算能力,服務器成本,準確性,移動電池使用率,延遲服務器通信,多平臺,可擴展性,移動數據使用量 - 無重要 - ,...)

我知道有一些框架可用於人體姿態估計,如Openpose和更深切。但是,由於他們都使用深度學習,他們需要一個下降GPU。目前,大多數新智能手機都配備了GPU,但它們是否能夠運行這些框架? 爲了適應這種情況,(多人)關鍵點檢測不需要是實時的,因爲只有1個圖片(沒有實時視頻),並且延遲時間爲2到5秒是可以接受的。

由於我還處於研究階段,我不知道該走什麼方向。 它甚至有可能將這些框架移植到智能手機平臺上嗎?就像Openpose一樣,它使用Caffe和OpenCV。假設我想將Openpose移植到Android;我知道有一個庫CNNdroid能夠將使用Caffe製作的CNN模型轉換爲CNNdroid格式。進一步的OpenCV也不應該是一個大問題,因爲有一個Android版本可用。所以,從理論上講似乎是可能的,但在實踐中......

我的問題是:是否有人在智能手機上使用人體姿勢檢測/匹配的經驗?智能手機上現有的GPU可用嗎?我知道這是一個很寬泛的問題,但一些方向/建議/經驗可以真正幫助

UPDATE: 我正在考慮移植的選項Openpose(使用來自Caffe爲ML框架)來TensorFlow。 TensorFlow支持的Android &的iOS

回答

1

您可能會感興趣的看着由Krafka等人所使用的技術。他們的Eye Tracking for Everyone項目中,他們將一個較大的網絡壓縮到一個較小的網絡上,以便將注視座標估計爲可在智能手機上運行的較小網絡。這是使用Geoff Hinton開發的一個概念,他稱之爲Dark Knowledge。凝視檢測是姿態估計的一個特例,所以原則上看起來這些技巧會有所幫助。但是,我不知道它們是否會爲您的目的提供足夠的有效性(我認爲這在很大程度上取決於您的準確性限制)。

1

Openpose是一個智能手機應用太重。您需要重新設計軟件架構以適應電話系統。關於到CNN這是性能的瓶頸,使用mobilenet狀結構和暗知識(如Mozglubov提到)教更薄網絡是兩個有前途的方法。任何地方,都有很多工程師在前面工作。祝你好運!