import cv2 import mediapipe as mp import time cap = cv2.VideoCapture(0) mpHands = mp.solutions.hands hands = mpHands.Hands(False) mpDraw = mp.solutions.drawing_utils pTime = 0 cTime = 0 while True: _, img = cap.read() img = cv2.flip(img, 1) imgRGB = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) results = hands.process(imgRGB) if results.multi_hand_landmarks: for handLms in results.multi_hand_landmarks: for id, lm in enumerate(handLms.landmark): h, w, c = img.shape cx, cy = int(lm.x*w), int(lm.y*h) if id == 4: cv2.circle(img,(cx, cy), 15, (255,0,255), cv2.FILLED) if id == 8: cv2.circle(img,(cx, cy), 15, (255,0,255), cv2.FILLED) mpDraw.draw_landmarks(img, handLms, mpHands.HAND_CONNECTIONS) cTime = time.time() fps = 1/(cTime - pTime) pTime = cTime cv2.putText(img, str(int(fps)), (10,78), cv2.FONT_HERSHEY_PLAIN, 3, (255,255,0), 3) cv2.imshow("Image",img) cv2.waitKey(1)