opencv识别圆心坐标
时间: 2023-07-29 22:07:59 浏览: 216
opencv 识别圆心
5星 · 资源好评率100%
你可以使用OpenCV中的霍夫圆变换来识别圆形并找到圆心坐标。以下是一个简单的Python示例代码:
```
import cv2
import numpy as np
# 读入图像
img = cv2.imread('circle.jpg', 0)
# 霍夫圆变换
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, :]:
center = (i[0], i[1])
radius = i[2]
# 绘制圆形和圆心
cv2.circle(img, center, radius, (0, 255, 0), 2)
cv2.circle(img, center, 1, (0, 0, 255), 3)
# 显示结果
cv2.imshow('detected circles', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,`cv2.HoughCircles()`函数用于进行霍夫圆变换,`circles[0, :]`提取出找到的所有圆,再通过循环提取出每个圆的圆心坐标和半径,最后使用`cv2.circle()`函数绘制圆形和圆心。
阅读全文