Я обнаружил с помощью OpenCV несколько кругов с указанным шаблоном c.
Я сделал массив из него с координатами x, y и значением из этой точки.
circles = cv2.HoughCircles(blurred, cv2.HOUGH_GRADIENT, 1, minDist, param1=param1, param2=param2, minRadius=minRadius, maxRadius=maxRadius)
if circles is not None:
circles = np.uint16(np.around(circles))
for i in circles[0,:]:
cv2.circle(img,(i[0], i[1]), i[2], (0, 255, 0), 2)
temperatureArrayValue = np.uint16(np.mean(rawData[(i[1]-5):(i[1]+5),(i[0]-5):(i[0]+5)]))
temperatureArray[temperatureArrayIteration][0] = i[0] #640
temperatureArray[temperatureArrayIteration][1] = i[1] #480
temperatureArray[temperatureArrayIteration][2] = temperatureArrayValue
Моя главная цель состоит в том, чтобы обнаруживать каждое окружность в этом шаблоне, если не поместить координаты туда, где должна быть окружность, и поставить туда значение = 0. Это помогает мне сравнить несколько кадров, чтобы выяснить, как значение внутри окружностей изменяется во времени.
Этот код выше don не обнаружить, что 1 круг на самом деле самый высокий круг на картинке. Я не знаю, как сравнить два массива и быть уверенным, что каждый элемент массива соответствует указанному c кружку. Кадры из видео, поэтому координаты меняются динамически