repository to manage all files for 1_2_oder_3 interaction game for Inf2/2 Interaktionen SoSe23 from Engert, Caliskan and Bachiri
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Track.py 1.3KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import numpy as np
  2. import cv2
  3. cap = cv2.VideoCapture(0)
  4. def nothing(x):
  5. pass
  6. cv2.namedWindow("Trackbars")
  7. cv2.createTrackbar("L - H", "Trackbars", 0, 255, nothing)
  8. cv2.createTrackbar("L - S", "Trackbars", 0, 255, nothing)
  9. cv2.createTrackbar("L - V", "Trackbars", 0, 255, nothing)
  10. cv2.createTrackbar("U - H", "Trackbars", 255, 255, nothing)
  11. cv2.createTrackbar("U - S", "Trackbars", 255, 255, nothing)
  12. cv2.createTrackbar("U - V", "Trackbars", 255, 255, nothing)
  13. while True:
  14. ret, frame = cap.read()
  15. frame = cv2.resize(frame, (640, 480))
  16. hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
  17. l_h = cv2.getTrackbarPos("L - H", "Trackbars")
  18. l_s = cv2.getTrackbarPos("L - S", "Trackbars")
  19. l_v = cv2.getTrackbarPos("L - V", "Trackbars")
  20. u_h = cv2.getTrackbarPos("U - H", "Trackbars")
  21. u_s = cv2.getTrackbarPos("U - S", "Trackbars")
  22. u_v = cv2.getTrackbarPos("U - V", "Trackbars")
  23. lower_range = np.array([l_h, l_s, l_v])
  24. upper_range = np.array([u_h, u_s, u_v])
  25. mask = cv2.inRange(hsv, lower_range, upper_range)
  26. result = cv2.bitwise_and(frame, frame, mask=mask)
  27. # show thresholded image
  28. cv2.imshow("mask", mask)
  29. cv2.imshow("result", result)
  30. key = cv2.waitKey(1) & 0xFF
  31. if key == ord("q"):
  32. break
  33. cap.release()
  34. cv2.destroyAllWindows()