import cv2 as cv
import mediapipe as mp
cam=cv.VideoCapture(0)
mpHands= mp.solutions.hands
hand=mpHands.Hands()
mpDraw=mp.solutions.drawing_utils
while True:
ass,frame=cam.read()
frame = cv.flip(frame, 1)
frame = cv.cvtColor(frame,cv.COLOR_BGR2RGB)
hlms=hand.process(frame)
height, widht, channel=frame.shape
if hlms.multi_hand_landmarks:
for handlandmarks in hlms.multi_hand_landmarks:
mpDraw.draw_landmarks(frame,handlandmarks,mpHands.HAND_CONNECTIONS)
for landmarkNum,landmark in enumerate(handlandmarks.landmark):
positionX,positionY=int(landmark.x*widht),int(landmark.y*height)
cv.putText(frame,str(landmarkNum),(positionX,positionY),cv.FONT_HERSHEY_SIMPLEX,1,(255,0,0),1)
a=(landmarkNum==8 and landmark.y> handlandmarks.landmark[5].y)
b=(landmarkNum==12 and landmark.y> handlandmarks.landmark[9].y)
if a==True :
print("iki.1 numara çalışıyor")
if a==True :
if b==True:
print("iki.2 numara çalışıyor")
cv.imshow("kamera", frame)
if cv.waitKey(1) & 0xFF == ord("q"):
break
cam.release()
cv.destroyAllWindows()
if a==True :
print("iki.1 numara çalışıyor")
if a==True :
if b==True:
print("iki.2 numara çalışıyor")
arkadaşlar tek if yapılı ifadeyi çalıştırmama rağmen iki if yapılı ifadeyi çalıştıramıyorum ama ve hem a değişkeni hem b değişkeninin değeri true olarak dönüyor ama iki if yapılı olan ifade çalışmıyor bunun nedeni ne olabilir.