【图像处理】边缘检测(Roberts、Prewitt、Sobel、Marr-Hildreth 和 Canny 边缘检测器)和图像分割(Otsu 方法)附matlab代码
摘要:图像处理在计算机视觉、医学成像、工业检测等众多领域具有广泛应用。边缘检测和图像分割是图像处理中的关键技术,前者用于提取图像中物体的边缘信息,后者旨在将图像划分为不同的区域。本文详细介绍了 Roberts、Prewitt、Sobel、Marr - Hildreth 和 Canny 这几种常见的边缘检测算子,以及 Otsu 图像分割方法,包括它们的原理、实现步骤,并对其性能特点进行了分析比较。
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
👇 关注我领取海量matlab电子书和数学建模资料
🍊个人信条:格物致知,完整Matlab代码获取及仿真咨询内容私信。
🔥 内容介绍
摘要:图像处理在计算机视觉、医学成像、工业检测等众多领域具有广泛应用。边缘检测和图像分割是图像处理中的关键技术,前者用于提取图像中物体的边缘信息,后者旨在将图像划分为不同的区域。本文详细介绍了 Roberts、Prewitt、Sobel、Marr - Hildreth 和 Canny 这几种常见的边缘检测算子,以及 Otsu 图像分割方法,包括它们的原理、实现步骤,并对其性能特点进行了分析比较。
一、引言
(一)图像处理的重要性
图像处理技术能够对图像进行数字化处理,以改善图像质量、提取有用信息,从而满足不同应用场景的需求。在计算机视觉任务中,准确的边缘检测和图像分割结果是目标识别、场景理解等后续处理的基础。
(二)边缘检测与图像分割的意义
-
边缘检测:图像中的边缘代表了物体或区域之间的边界,包含了图像的重要结构信息。通过边缘检测,可以突出图像的轮廓,有助于后续对物体形状、位置等特征的分析。
-
图像分割:将图像分割为具有不同语义的区域,使得对图像内容的理解更加直观和便捷。例如,在医学图像中分割出不同的组织器官,有助于疾病诊断;在工业检测中分割出缺陷区域,可实现产品质量控制。
二、边缘检测
(一)Roberts 边缘检测器
-
原理:Roberts 边缘检测器基于一阶差分原理,通过计算图像中相邻像素之间的灰度差值来检测边缘。它使用两个 2×2 的模板,分别用于检测水平和垂直方向的边缘。水平方向模板为 [100−1],垂直方向模板为 [0−110]。对图像中的每个像素,分别应用这两个模板进行卷积运算,然后计算梯度幅值 G=Gx2+Gy2,其中 Gx 和 Gy 分别是水平和垂直方向的梯度值。如果梯度幅值超过一定阈值,则认为该像素是边缘像素。
-
实现步骤:
-
对输入图像进行灰度化处理,将彩色图像转换为灰度图像,以便后续处理。
-
对灰度图像中的每个像素,分别应用水平和垂直方向的 Roberts 模板进行卷积运算,得到 Gx 和 Gy。
-
计算每个像素的梯度幅值 G。
-
设置一个阈值 T,将梯度幅值 G 大于 T 的像素标记为边缘像素,小于 T 的像素标记为非边缘像素,得到边缘检测结果图像。
-
-
性能特点:Roberts 边缘检测器简单快速,对具有陡峭边缘且噪声较小的图像效果较好。但由于其模板尺寸较小,对噪声较为敏感,且检测出的边缘较粗,定位精度有限。
(二)Prewitt 边缘检测器
-
原理:Prewitt 边缘检测器同样基于一阶差分,它使用两个 3×3 的模板来检测水平和垂直方向的边缘。水平方向模板为 −101−101−101,垂直方向模板为 −1−1−1000111。通过对图像进行卷积运算得到水平和垂直方向的梯度分量 Gx 和 Gy,进而计算梯度幅值 G=Gx2+Gy2,根据阈值判断边缘像素。
-
实现步骤:
-
图像灰度化。
-
对灰度图像的每个像素,分别与水平和垂直方向的 Prewitt 模板进行卷积,得到 Gx 和 Gy。
-
计算梯度幅值 G。
-
设置阈值 T,标记边缘像素和非边缘像素,生成边缘检测图像。
-
-
性能特点:Prewitt 模板比 Roberts 模板大,对噪声有一定的平滑作用,检测出的边缘相对较细且连续。然而,它对边缘的定位精度仍有待提高,并且在噪声较大的图像中,可能会产生较多的误检测。
(三)Sobel 边缘检测器
-
原理:Sobel 边缘检测器也是基于一阶差分的方法,使用 3×3 的模板来计算梯度。水平方向模板为 −101−202−101,垂直方向模板为 −1−2−1000121。与 Prewitt 模板不同的是,Sobel 模板在中心像素周围赋予了更高的权重,这使得它在检测边缘时对噪声的鲁棒性更强。同样通过计算梯度幅值 G=Gx2+Gy2 和阈值判断来确定边缘像素。
-
实现步骤:
-
灰度化处理图像。
-
利用水平和垂直方向的 Sobel 模板对灰度图像进行卷积,获取 Gx 和 Gy。
-
计算梯度幅值 G。
-
设定阈值 T,划分边缘和非边缘像素,输出边缘检测结果。
-
-
性能特点:Sobel 边缘检测器对噪声具有较好的抑制能力,能够检测出较细且清晰的边缘,在实际应用中较为常用。但它对边缘的定位精度并非最优,在处理复杂图像或噪声较大的图像时,仍可能出现边缘模糊或误检的情况。
(四)Marr - Hildreth 边缘检测器
-
原理:Marr - Hildreth 边缘检测基于零交叉检测原理。该方法首先对图像进行高斯平滑处理,以减少噪声影响,高斯函数为 G(x,y,σ)=2πσ21e−2σ2x2+y2,其中 σ 控制平滑程度。然后对平滑后的图像计算拉普拉斯算子 ∇2G(x,y,σ),得到拉普拉斯 - 高斯(LoG)函数。图像中的边缘对应于 LoG 函数的零交叉点,即函数值从正变为负或从负变为正的点。
-
实现步骤:
-
用高斯滤波器对输入图像进行平滑处理,根据图像噪声情况选择合适的 σ 值。
-
对平滑后的图像计算拉普拉斯算子,得到 LoG 图像。
-
检测 LoG 图像中的零交叉点,将这些点标记为边缘像素,形成边缘检测图像。
-
-
性能特点:Marr - Hildreth 边缘检测器对噪声不敏感,能够检测出较为连续和完整的边缘。然而,它计算量较大,因为既要进行高斯平滑又要计算拉普拉斯算子。此外,σ 的选择对检测结果影响较大,不合适的 σ 值可能导致边缘丢失或产生过多的虚假边缘。
(五)Canny 边缘检测器
-
原理:Canny 边缘检测器是一种较为先进的边缘检测算法,它基于多步骤处理以获得高质量的边缘检测结果。首先对图像进行高斯滤波平滑噪声;然后计算梯度幅值和方向,类似于 Sobel 算子;接着进行非极大值抑制,保留局部梯度最大的像素,抑制其他像素,从而细化边缘;最后通过双阈值检测和边缘连接来确定最终的边缘,即设置高低两个阈值,高于高阈值的像素肯定为边缘像素,低于低阈值的像素肯定为非边缘像素,介于两者之间的像素根据其与已确定边缘像素的连接性来判断是否为边缘像素。
-
实现步骤:
-
高斯平滑:使用高斯滤波器对图像进行平滑处理。
-
梯度计算:计算图像的梯度幅值和方向。
-
非极大值抑制:对梯度幅值图像进行非极大值抑制操作。
-
双阈值检测与边缘连接:设置高低阈值,进行双阈值检测,并通过边缘连接确定最终的边缘。
-
-
性能特点:Canny 边缘检测器在检测边缘的准确性、连续性和抗噪声能力方面表现出色,能够检测出真实的边缘且边缘较细。但它的计算复杂度相对较高,参数(如高斯滤波的 σ、双阈值等)的选择需要根据具体图像进行调整,以获得最佳效果。
三、图像分割 - Otsu 方法
(一)原理
Otsu 方法是一种基于图像灰度直方图的自动阈值分割算法。它的基本思想是将图像的灰度值分为两个类别(前景和背景),通过最大化类间方差来确定最佳阈值。设图像的灰度级为 0 到 L−1,灰度值为 i 的像素数为 ni,总像素数为 N=∑i=0L−1ni,灰度值为 i 的像素出现的概率为 pi=Nni。假设阈值为 t,前景像素的概率为 w0=∑i=0tpi,背景像素的概率为 w1=∑i=t+1L−1pi,前景像素的平均灰度为 μ0=w0∑i=0tipi,背景像素的平均灰度为 μ1=w1∑i=t+1L−1ipi,类间方差为 σ2=w0w1(μ0−μ1)2。通过遍历所有可能的阈值 t,找到使类间方差 σ2 最大的 t 值,即为最佳阈值。
(二)实现步骤
-
计算输入图像的灰度直方图,统计每个灰度级的像素数量。
-
根据灰度直方图计算每个灰度级的概率 pi。
-
遍历所有可能的阈值 t(从 0 到 L−1),计算对应的 w0、w1、μ0、μ1 和类间方差 σ2。
-
找到使类间方差 σ2 最大的阈值 toptimal。
-
根据 toptimal 将图像分割为前景和背景,灰度值大于 toptimal 的像素为前景,小于等于 toptimal 的像素为背景,得到分割后的图像。
(三)性能特点
Otsu 方法简单有效,能够自动确定阈值,无需人工干预。它对具有明显双峰灰度直方图的图像分割效果良好,能够较好地将前景和背景分离。然而,对于灰度直方图不具有明显双峰特征或存在多个峰的复杂图像,Otsu 方法可能无法得到理想的分割结果。
四、性能比较与分析
(一)边缘检测算子比较
-
检测精度:Canny 边缘检测器在检测精度方面表现较为出色,能够检测出较细且准确的边缘,尤其在处理复杂图像时。Marr - Hildreth 边缘检测器也能检测出连续完整的边缘,但在定位精度上略逊于 Canny。Roberts、Prewitt 和 Sobel 边缘检测器的定位精度相对较低,检测出的边缘较粗。
-
抗噪声能力:Canny 和 Marr - Hildreth 边缘检测器由于有高斯平滑步骤,对噪声的抑制能力较强。Sobel 边缘检测器对噪声也有一定的鲁棒性,而 Roberts 和 Prewitt 边缘检测器对噪声较为敏感,在噪声较大的图像中容易产生较多误检测。
-
计算复杂度:Marr - Hildreth 和 Canny 边缘检测器计算量相对较大,Marr - Hildreth 需要进行高斯平滑和拉普拉斯算子计算,Canny 则有多步骤处理。Roberts、Prewitt 和 Sobel 边缘检测器计算相对简单,速度较快。
(二)与 Otsu 方法的关系
边缘检测主要关注图像中物体的边界信息,而 Otsu 方法侧重于将图像分割为不同的区域。在一些情况下,边缘检测结果可以作为图像分割的预处理步骤,帮助确定区域的边界;而 Otsu 方法分割出的不同区域也有助于进一步分析边缘在不同区域中的特性。然而,它们的应用场景和目标略有不同,需要根据具体的图像处理任务选择合适的方法。
五、结论
本文介绍的 Roberts、Prewitt、Sobel、Marr - Hildreth 和 Canny 边缘检测算子以及 Otsu 图像分割方法,在图像处理中都具有重要作用。不同的边缘检测算子在检测精度、抗噪声能力和计算复杂度等方面各有优劣,应根据图像的特点和具体应用需求选择合适的算子。Otsu 方法作为一种自动阈值分割算法,对于具有合适灰度直方图的图像能实现有效的分割。在实际应用中,往往需要结合多种方法,以达到更好的图像处理效果,满足不同领域对图像分析和理解的要求。未来,随着图像处理技术的不断发展,有望出现更高效、准确且鲁棒的边缘检测和图像分割方法,推动计算机视觉等相关领域的进一步发展。
⛳️ 运行结果



🔗 参考文献
[1] 张洁.数字图像边缘检测技术的研究[D].合肥工业大学,2009.DOI:10.7666/d.y1508055.
[2] 胡文锦.图像边缘检测方法研究[D].北京交通大学[2026-01-25].DOI:10.7666/d.y1576164.
[3] 杨陶,田怀文,刘晓敏,等.基于边缘检测与Otsu的图像分割算法研究[J].计算机工程, 2016(11):255-260.DOI:10.3969/j.issn.1000-3428.2016.11.042.
![]()
🎈 部分理论引用网络文献,若有侵权联系博主删除
🏆团队擅长辅导定制多种毕业课题和科研领域
MATLAB仿真,助力毕业科研梦:
🌈 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度、港口岸桥调度、停机位分配、机场航班调度、泄漏源定位
🌈 机器学习和深度学习时序、回归、分类、聚类和降维
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN|TCN|GCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类
2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
2.19 Transform各类组合时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
🌈图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
🌈 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻
🌈 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划
🌈 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信、通信上传下载分配
🌈 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
🌈电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化、家庭用电
🌈 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
🌈 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别
🌈 车间调度
零等待流水车间调度问题NWFSP 、 置换流水车间调度问题PFSP、 混合流水车间调度问题HFSP 、零空闲流水车间调度问题NIFSP、分布式置换流水车间调度问题 DPFSP、阻塞流水车间调度问题BFSP
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链
更多推荐

所有评论(0)