OpenCV中的边缘检测技术及实现

介绍:

边缘检测是计算机视觉中非常重要的技术之一。它用于有效地识别图像中的边缘和轮廓,对于图像分析和目标检测任务至关重要。OpenCV提供了多种边缘检测技术的实现,本博客将介绍其中的两种常用方法:Canny边缘检测和Sobel边缘检测。

理论介绍:

1. Canny边缘检测:

Canny边缘检测是一种经典的边缘检测算法,它被广泛应用于图像处理领域。该方法结合了多个步骤,包括高斯滤波、计算梯度、非最大值抑制和双阈值处理。首先,通过应用高斯滤波器来平滑图像,以减少噪声的影响。然后,计算图像的梯度,找到像素点的边缘强度和方向。接下来,进行非最大值抑制,通过比较像素点周围的梯度值来细化边缘。最后,通过设置高低阈值来检测真正的边缘。

2. Sobel边缘检测:

Sobel算子是一种基于图像梯度的边缘检测算法,它通过计算像素点的梯度来检测边缘。该算子使用两个3x3的卷积核,分别对图像进行水平和垂直梯度计算。水平梯度可以检测垂直边缘,垂直梯度可以检测水平边缘。通过将水平和垂直梯度的结果进行组合,可以得到图像的整体边缘信息。

程序实现:

python程序代码

下面是使用Python和OpenCV实现Canny边缘检测和Sobel边缘检测的示例代码:

python 复制代码
# -*- coding: utf-8 -*-
"""
Created on Fri Feb 16 21:44:22 2024

@author: 李立宗

公众号:计算机视觉之光

知识星球:计算机视觉之光

"""

import cv2
import numpy as np

# 读取图像
image = cv2.imread('lena.bmp', 0)

# Canny边缘检测
canny_edges = cv2.Canny(image, 100, 200)

# Sobel边缘检测
sobel_x = cv2.Sobel(image, cv2.CV_64F, 1, 0, ksize=3)
sobel_y = cv2.Sobel(image, cv2.CV_64F, 0, 1, ksize=3)
sobel_edges = np.sqrt(sobel_x**2 + sobel_y**2).astype(np.uint8)

# 显示原始图像和边缘检测结果
cv2.imshow('Original Image', image)
cv2.imshow('Canny Edges', canny_edges)
cv2.imshow('Sobel Edges', sobel_edges)

cv2.waitKey(0)
cv2.destroyAllWindows()

程序演示

小结

在这个示例中,我们读取了一张灰度图像,并分别使用Canny边缘检测和Sobel边缘检测算法进行了边缘检测。最后,将原始图像和边缘检测结果展示出来。

结论:

边缘检测是计算机视觉中重要的技术之一,用于识别图像中的边缘和轮廓。其中,Canny边缘检测和Sobel边缘检测是常用的方法,它们在OpenCV中都有相应的实现。本博客介绍了这两种方法的理论原理,并给出了使用OpenCV实现边缘检测的示例代码。希望通过本博客的学习,初学者可以对OpenCV中的边缘检测有一个清晰的了解,并将其应用于自己的项目中。

相关知识点

理解并实现OpenCV中的图像平滑技术

参考文献

1、OpenCV轻松入门

李立宗,OpenCV轻松入门,电子工业出版社,2023

2、计算机视觉40例

李立宗,计算机视觉40例,电子工业出版社,2022

相关推荐
copyer_xyf10 分钟前
Neo4j:给 RAG 补上关系检索
python·agent
MartinYeung522 分钟前
[论文学习]Poser:通过操纵内部结构揭示对齐伪装的大语言模型
人工智能·学习·语言模型
Feynman’s boom33 分钟前
PDF解析复盘
数据库·人工智能·算法·pdf解析
whcyhhh1 小时前
CTF‑MISC 隐写术完整学习笔记|图片隐写全题型 + 工具 + 实战例题
python·网络安全·ctf·misc·信息隐藏
其实防守也摸鱼1 小时前
推荐一个自动化教育SRC漏洞挖掘系统--AutoHunter
运维·开发语言·人工智能·学习·安全·web安全·自动化
振浩微433射频芯片1 小时前
从门锁到考勤,VRC522B如何在近场读卡场景中“稳坐C位”?
网络·人工智能·单片机·物联网
码视野1 小时前
多宠 RFID 颈圈识别与湿粮半导体制冷保鲜分餐喂食器解决方案(软硬件一体化)
大数据·人工智能·python
未若君雅裁1 小时前
让模型按契约返回数据,LangChain 结构化输出实战
python·langchain
九硕智慧建筑一体化厂家2 小时前
智慧建筑高效管控!楼宇自控系统赋能新能源园区智能运维
运维·人工智能·笔记·智慧城市
2601_954526752 小时前
2026 生成式搜索引擎底层技术演进与 GEO优化服务商推荐:大模型检索增强(RAG)管道与语义对齐工程实战
大数据·人工智能·搜索引擎