基于MediaPipe的手部特征点识别
MediaPipe简介
MediaPipe Solutions 提供了一套库和工具,可以在安卓或者windows应用中快速应用人工智能 (AI) 和机器学习 (ML) 技术。
MediaPipe 手部地标任务可检测图片中手部的特征点。识别效果如下
环境配置
python -m pip install mediapipe
运行代码
import mediapipe as mp
from mediapipe.tasks import python
BaseOptions = mp.tasks.BaseOptions
HandLandmarker = mp.tasks.vision.HandLandmarker
HandLandmarkerOptions = mp.tasks.vision.HandLandmarkerOptions
VisionRunningMode = mp.tasks.vision.RunningMode
# 加载模型
options = HandLandmarkerOptions(
base_options=BaseOptions(model_asset_path='model/hand_landmarker.task'),
running_mode=VisionRunningMode.IMAGE)
with HandLandmarker.create_from_options(options) as landmarker:
mp_image = mp.Image.create_from_file('./image/a.jpg')
# 检测图片
hand_landmarker_result = landmarker.detect(mp_image)
# 输出手的关键点
print(hand_landmarker_result)
输出结果
HandLandmarkerResult(handedness=[[Category(index=1, score=0.9459662437438965, display_name='Left', category_name='Left')]], hand_landmarks=[[NormalizedLandmark(x=0.5290346741676331, y=