Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- import cv2
- import time
- cap = cv2.VideoCapture(0)
- lower_red = np.array([0,100,100])
- upper_red = np.array([20,255,255])
- while(1):
- start = time.time()
- # Load an color image in grayscale
- _,img = cap.read()
- print("read")
- #get the image's width and height
- #cv2.imshow('ORIGINAL IMAGE',img)
- blurred = cv2.GaussianBlur(img, (11, 11), 0)
- hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
- hsv2 = cv2.cvtColor(blurred,cv2.COLOR_BGR2HSV)
- mask2 = cv2.inRange(hsv2, lower_red, upper_red)
- mask2 = cv2.erode(mask2, None, iterations=2)
- mask2 = cv2.dilate(mask2, None, iterations=2)
- #circles = cv2.HoughCircles(mask2, cv2.HOUGH_GRADIENT, 0.9, 1, param1=50, param2=30, minRadius=1, maxRadius=200)
- #print("circles= ",circles)
- #inal_num = 0
- #final_sum = 0
- imageWidth = mask2.shape[1]
- imageHeight = mask2.shape[0]
- sum_i_white = 1
- num_white = 1
- sum_j_white = 1
- for i in range(0,imageHeight):
- for j in range(0,imageWidth):
- if mask2[i][j] == 255:
- sum_i_white += i
- sum_j_white += j
- num_white += 1
- #print("after loop",sum_i_white,sum_j_white,num_white)
- #print("so X = ",sum_i_white/num_white)
- #print("so Y = ",sum_j_white/num_white)
- cv2.circle(img,(int(sum_j_white/num_white),int(sum_i_white/num_white)),3,(0,0,255), -1)
- cv2.putText(img,'here',(int(sum_j_white/num_white),int(sum_i_white/num_white)), cv2.FONT_HERSHEY_SIMPLEX, 2, (0,0,255), 1, cv2.LINE_AA)
- cv2.imshow("final",img)
- print(time.time()-start)
- if cv2.waitKey(1) & 0xFF == ord('q'):
- break
- cv2.destroyAllWindows()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement