PaddleHub檢測肢體和手部關鍵點(2.0版本)
技術標籤:PaddlePaddlePaddleHub深度學習
目錄
PaddleHub檢測肢體和手部關鍵點
openpose_hands_estimation
openpose_hands_estimation是基於 ‘Hand Keypoint Detection in Single Images using Multiview Bootstrapping’ 構建的用於手部關鍵點檢測的模型,該模型需要與openpose_body_estimation模型聯合使用檢測肢體和手部關鍵點,因此使用該模型前,請先安裝openpose_body_estimation。
openpose_hands_estimation
模型連結:https://www.paddlepaddle.org.cn/hubdetail?name=openpose_hands_estimation&en_category=KeyPointDetection
openpose_body_estimation
openpose_body_estimation是基於’Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields’構建的用於肢體關鍵點檢測的模型,該模型可以與openpose_hands_estimation模型聯合使用檢測肢體和手部關鍵點。
NOTE: 如果您在本地執行該專案示例,需要首先安裝PaddleHub。如果您線上執行,需要首先fork該專案示例。之後按照該示例操作即可。
openpose_body_estimation
模型連結:https://www.paddlepaddle.org.cn/hubdetail?name=openpose_body_estimation&en_category=KeyPointDetection
環境:PaddlePaddle2.0.0rc PaddleHub2.0.0b1 lopenpose_hands_estimati 1.0.0(最新版) openpose_body_estimation 1.0.0(最新版)
一、安裝新版Hub
!pip install paddlehub==2.0.0b1 -i https://pypi.tuna.tsinghua.edu.cn/simple
二、定義待預測照片並安裝模型
以本示例中資料夾下shou.jpg為待預測圖片
image = "shou.jpg"
!hub install openpose_hands_estimation
!hub install openpose_body_estimation
三、API預測
識別輸入圖片中的所有人手部關鍵點。
引數
- img (numpy.ndarray|str): 圖片資料,使用圖片路徑或者輸入numpy.ndarray,BGR格式;
- save_path (str): 圖片儲存路徑, 預設為’openpose_hand’;
- scale (list): 搜尋關鍵點時使用圖片的不同尺度;
- visualization (bool): 是否將識別結果儲存為圖片檔案;
返回
- res (dict): 識別結果的列表,列表元素為 dict, 有以下兩個欄位:
- data : 視覺化圖片內容(numpy.ndarray,BGR格式);
- all_hand_peaks: 圖片中手部關鍵點座標
import paddlehub as hub
model = hub.Module(name='openpose_hands_estimation')
result = model.predict(image,visualization=True)
print(result)
四、命令列預測
!hub run openpose_hands_estimation --input_path "shou.jpg"
五、實現效果