Как расчитать диаметр
Всем привет, начал изучать opencv и подскажите как правильно высчитывать диаметр(2*r) окружности с полученных контуров. Но при выполнении кода он вообще странные значения выдает , я не понимаю как правильно высчитать диаметр, кто знает подскажите Вот ссылка на картинку которую использую.
Вывод [90, 92, 126, 104, 92, 112]
import cv2
import numpy as np
import imutils
img = cv2.imread('coins.jpg')
output = img.copy()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray = cv2.medianBlur(gray, 5)
circles = cv2.HoughCircles(gray, cv2.HOUGH_GRADIENT, 1, 20, param1=100,
param2=50, minRadius=0, maxRadius=0)
detect_circles = np.uint16(np.around(circles))
radii = []
for i, (x,y, r) in enumerate(detect_circles[0, :]):
radii.append(r*2)
cv2.circle(output, (x, y), r, (0,255,0), 3, )
cv2.putText(output, str(i + 1), (x, y), cv2.FONT_HERSHEY_SIMPLEX, 1,
(0, 255, 0), 2)
print(radii)
cv2.imshow('Image with Circles', output)
cv2.waitKey(0)
cv2.destroyAllWindows()