简答题 请用Python+OpenCV编写程序,利用Canny算子提取图像边缘信息,图像可自行选择。将程序粘贴出来,将程序运行的原始图和边缘图截图上传。
时间: 2024-09-25 19:09:02 浏览: 56
课程设计基于python+opencv+pyqt5开发的图像及视频处理程序源码.zip
在Python中,我们可以使用OpenCV库来实现Canny边缘检测算法。下面是一个简单的例子:
```python
import cv2
import numpy as np
def canny_edge_detection(image_path):
# 读取图片
image = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)
# 检查图像是否加载成功
if image is None:
print("无法加载图像")
return
# 使用Canny算子检测边缘
edges = cv2.Canny(image, low_threshold=50, high_threshold=150)
# 显示原始图和边缘图
cv2.imshow("Original Image", image)
cv2.imshow("Edges Image", edges)
cv2.waitKey(0) # 等待用户按键
cv2.destroyAllWindows()
# 调用函数并传入你要处理的图片路径
canny_edge_detection('your_image.jpg')
```
在这个程序中,`cv2.Canny()` 函数接受灰度图像作为输入,以及两个阈值(low_threshold和high_threshold),用于确定边缘强度。较低的阈值会捕获图像中的弱边,较高的阈值则会保留较强边。
阅读全文