Добавление недостающей части в шаблон - PullRequest
0 голосов
/ 18 марта 2020

У меня есть видеопоток, где я записываю простой паттерн с кругами. Мне нужно их обнаружить. Я использую HoughCircles. Вот пример кадра:

enter image description here

Но иногда я не обнаруживал каждый круг в шаблоне.

enter image description here

Моя цель - сохранить шаблон при обнаружении всех окружностей, а затем, если я не обнаружил все, попытаться приблизить возможное положение и нарисовать там прямоугольник. Проблема в том, что иногда я пропускаю один круг, иногда я пропускаю два. Мой код для обнаружения:

gauss = cv2.GaussianBlur(gray,(21,21),0);
blurred = cv2.medianBlur(gauss, 21)  
minDist = 70
param1 = 20#30 #smaller value-> more false circles
param2 = 30#50 #smaller value-> more false circles
minRadius = 10
maxRadius = 50
circles = cv2.HoughCircles(blurred, cv2.HOUGH_GRADIENT, 1, minDist, param1=param1, param2=param2, minRadius=minRadius, maxRadius=maxRadius)

Я немного поиграл с разными параметрами (для размытия и Хафа) и думаю, что улучшений больше нет.

...