以下是使用Python和OpenCV进行圆形检测的完整示例代码和示例图像。在运行此示例之前,请确保已经安装了OpenCV库。

import cv2
import numpy as np

# 加载图像
img = cv2.imread('circle.png', 0)
img = cv2.medianBlur(img, 5)

# 在图像中检测圆形
circles = cv2.HoughCircles(img, cv2.HOUGH_GRADIENT, 1, 20,
                           param1=50, param2=30, minRadius=0, maxRadius=0)

# 将检测到的圆形转换为整数
circles = np.uint16(np.around(circles))

# 将圆形标记在原始图像上
for i in circles[0, :]:
    # 画出圆形
    cv2.circle(img, (i[0], i[1]), i[2], (0, 255, 0), 2)
    # 画出圆心
    cv2.circle(img, (i[0], i[1]), 2, (0, 0, 255), 3)

# 显示结果
cv2.imshow('detected circles', img)
cv2.waitKey(0)
cv2.destroyAllWindows()