使用OpenCV庫進行圓形識別可以通過以下步驟實現:
import cv2
import numpy as np
image = cv2.imread('image.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blur = cv2.GaussianBlur(gray, (5, 5), 0)
circles = cv2.HoughCircles(blur, cv2.HOUGH_GRADIENT, 1, 20, param1=50, param2=30, minRadius=0, maxRadius=0)
其中,param1
和param2
是霍夫圓變換的參數。根據圖像的特點,可能需要調整這些參數以獲得更好的圓形檢測結果。
if circles is not None:
circles = np.uint16(np.around(circles))
for circle in circles[0, :]:
center = (circle[0], circle[1])
radius = circle[2]
cv2.circle(image, center, radius, (0, 255, 0), 2)
cv2.imshow('Circle Detection', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
以上就是使用OpenCV進行圓形識別的基本步驟。根據具體的圖像特點和要求,你可能還需要調整一些參數和進行額外的圖像處理操作。