opencv-Canny 边缘检测

Canny边缘检测是一种经典的图像边缘检测算法,它在图像中找到强度梯度的变化,从而识别出图像中的边缘Canny边缘检测的优点包括高灵敏度和低误检率。

在OpenCV中,cv2.Canny() 函数用于执行Canny边缘检测。

基本语法如下:

python 复制代码
edges = cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient]]])

参数说明:

  • image: 输入图像,通常为灰度图像。
  • threshold1threshold2: 阈值,用于确定边缘的强度梯度。通常 threshold1 是较小的阈值,threshold2 是较大的阈值。
  • edges(可选): 输出的边缘图像。
  • apertureSize(可选): Sobel算子的大小,通常为3。
  • L2gradient(可选): 如果为True,则使用更精确的L2范数进行梯度计算,否则使用L1范数。通常设置为False。

示例代码:

python 复制代码
import cv2
import numpy as np
# 读取灰度图像
img = cv2.imread(r"C:\Users\mzd\Desktop\opencv\images.jpg", cv2.IMREAD_GRAYSCALE)
# 使用Canny边缘检测
edges = cv2.Canny(img, 50, 150)

# 显示原始图像和Canny边缘图像
cv2.imshow('Original Image', img)
cv2.imshow('Canny Edges', edges)

# 等待用户按下任意键
cv2.waitKey(0)
cv2.destroyAllWindows()

在这个例子中,cv2.Canny() 用于执行Canny边缘检测。threshold1threshold2 是梯度强度的阈值,通过调整这两个阈值,可以影响检测到的边缘的数量和质量。Canny边缘检测是图像处理中常用的边缘检测方法之一。

相关推荐
Ai-_Man11 小时前
希望大家能推荐一款软件,可以直接把文心生成的代码变流程图,提高办公效率
人工智能·ai·小程序·流程图
AI022614 小时前
探秘AI Agent软件公司:开启智能时代的创新引擎
人工智能
fīɡЙtīиɡ ℡16 小时前
AI 应用系统设计
java·开发语言·人工智能
小淮AI16 小时前
国际教育课程的本土化探索:以枫叶教育三十年为观察样本
大数据·人工智能
又折桃枝换酒钱16 小时前
VisCoder2:构建多语言可视化编码智能体(翻译与解读)
人工智能·信息可视化
AI绘画哇哒哒16 小时前
【建议收藏!】35岁后端血泪忠告,这3类人别硬转Agent(过来人亲述)
java·人工智能·后端·ai·程序员·大模型·agent
Chengbei1116 小时前
DSH渗透测试插件dsh-pentest全新升级!适配DeepSeek Harness,可视化探索链路,一键搭建轻量化AI渗透测试环境。
人工智能·web安全·网络安全·微信·小程序·系统安全·安全架构
QN1幻化引擎17 小时前
DalinX Phi 性能突破:跨层秩保持对齐与意识涌现度量的实证研究
人工智能·ai·架构·agi·asi
NeilCarmack17 小时前
Deepseek-harness增加桌面版端序列:第 1 讲 · 命令解析:`pnpm dsh desktop` 的第一步
人工智能·agent·ai agent