我尝试查找圆和部分圆的轮廓,并检测到中心不在图像中的圆的问题
gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY)
gray = cv.blur(gray, (3,3))
gray = cv.Canny(gray, threshold1=75, threshold2=100)
此后,我使用HoughCircle函数
circles = cv.HoughCircles(gray, cv.HOUGH_GRADIENT, 1, rows / 8,
param1=100, param2=30,
minRadius=50, maxRadius=700)
但是我要查找的轮廓不在圆阵列中,因为其中心不在图像内。
我如何才能检测到这部分圆圈?像这样增加图像尺寸或面积吗?
UPD。我在图像上添加了边框:
top = int(0.25 * src.shape[0]) # shape[0] = rows
bottom = top
left = int(0.25 * src.shape[1]) # shape[1] = cols
right = left
src = cv.copyMakeBorder(src, top, bottom, left, right,
cv.BORDER_CONSTANT, None, [0,0,0])