python opencv自动寻找图像的角点
时间: 2023-07-08 13:07:12 浏览: 107
opencv获取图片角点
5星 · 资源好评率100%
在 OpenCV 中,可以使用角点检测算法来自动寻找图像的角点。常用的角点检测算法包括 Harris 角点检测、Shi-Tomasi 角点检测和 FAST 角点检测等。
以下是使用 Harris 角点检测算法自动寻找图像的角点的示例代码:
```python
import cv2
# 读取图像
img = cv2.imread('image.jpg')
# 转换为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 对图像进行 Harris 角点检测
dst = cv2.cornerHarris(gray, 2, 3, 0.04)
# 标记检测到的角点
dst = cv2.dilate(dst, None)
img[dst > 0.01 * dst.max()] = [0, 0, 255]
# 显示结果图像
cv2.imshow('corners', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述代码中,`cv2.cornerHarris()` 函数用于对灰度图像进行 Harris 角点检测。该函数的参数含义如下:
- 第一个参数为灰度图像;
- 第二个参数为角点检测窗口的大小;
- 第三个参数为 Sobel 算子的大小;
- 第四个参数为 Harris 角点检测算法的自由参数。
检测到的角点通过在原始图像上标记红色圆点的方式进行显示。
阅读全文