Python完成shi-tomasi角点检测代码
时间: 2024-03-17 16:41:09 浏览: 116
当然可以,下面是一个简单的示例代码,使用OpenCV库实现shi-tomasi角点检测:
```python
import cv2
# 读取图像
img = cv2.imread("test.jpg")
# 转换为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 设定参数
max_corners = 100
quality_level = 0.01
min_distance = 10
# 检测角点
corners = cv2.goodFeaturesToTrack(gray, max_corners, quality_level, min_distance)
# 绘制角点
for corner in corners:
x, y = corner.ravel()
cv2.circle(img, (x, y), 5, (0, 255, 0), -1)
# 显示结果
cv2.imshow("Corner Detection", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个示例代码中,我们首先读取一张图像并将其转换为灰度图像。然后,我们设定了三个参数:最大角点数、角点质量水平和最小距离。接下来,我们使用`cv2.goodFeaturesToTrack()`函数检测图像中的角点。最后,我们使用`cv2.circle()`函数在图像上绘制出检测到的角点,并将结果显示出来。
需要注意的是,实际应用中可能需要调整参数以获得更好的检测效果。
阅读全文