赞
踩
地址:https://google.github.io/mediapipe/solutions/hands.html
代码:
- import cv2
- import mediapipe as mp
- mp_drawing = mp.solutions.drawing_utils
- mp_hands = mp.solutions.hands
- drawing_styles = mp.solutions.drawing_styles
-
-
- # For webcam input:
- cap = cv2.VideoCapture(0)
- with mp_hands.Hands(
- min_detection_confidence=0.5,
- min_tracking_confidence=0.5) as hands:
- while cap.isOpened():
- success, image = cap.read()
- if not success:
- print("Ignoring empty camera frame.")
- # If loading a video, use 'break' instead of 'continue'.
- continue
-
- # Flip the image horizontally for a later selfie-view display, and convert
- # the BGR image to RGB.
- image = cv2.cvtColor(cv2.flip(image, 1), cv2.COLOR_BGR2RGB)
- # To improve performance, optionally mark the image as not writeable to
- # pass by reference.
- image.flags.writeable = False
- results = hands.process(image)
-
- # Draw the hand annotations on the image.
- image.flags.writeable = True
- image = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)
- if results.multi_hand_landmarks:
- for hand_landmarks in results.multi_hand_landmarks:
- mp_drawing.draw_landmarks(
- image, hand_landmarks, mp_hands.HAND_CONNECTIONS,
- drawing_styles.get_default_hand_landmark_style(),
- drawing_styles.get_default_hand_connection_style())
- cv2.imshow('MediaPipe Hands', image)
- if cv2.waitKey(1) & 0xFF == 27:
- cv2.destroyAllWindows()
- cap.release()
- break

代码测试结果:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。