просто программа .. Никаких объяснений ..
Тем не менее, вам нужен брифинг по этому поводу .. прокомментируйте. Я сделаю это для тебя…
#Detect circle on webcam cap = cv2.VideoCapture(0,cv2.CAP_DSHOW) while True: _,img = cap.read() img2 = img.copy() gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) gray = cv2.medianBlur(gray, 5) #parameters---(img,circle_method,dp,mindist,parm1,parm2[p1<p2],) circles = cv2.HoughCircles(gray, cv2.HOUGH_GRADIENT, 1, 10, param1=50, param2=30, minRadius=0, maxRadius=0) if circles is not None: data = np.uint16(np.around(circles)) for (x, y ,r) in data[0, :]: cv2.circle(img2, (x, y), r, (50, 10, 50), 3) #outer circle cv2.circle(img2, (x, y), 2, (0, 255, 100), -1) #center cv2.imshow("res",img2) if cv2.waitKey(25) & 0xFF == ord("q"): break cap.release() cv2.destroyAllWindows()
Выход:…..
Как вы можете видеть на рисунке, даже он может захватывать нижнюю сторону бутылки с дезинфицирующим средством в форме круга, не считая многих других вещей, которые машина воспринимает как круглый объект и отображает его в форме круга.