Matlab图像处理——图像边缘检测方法(算子)

1.edge函数语法

Matlab 复制代码
BW = edge(I)
BW = edge(I,method)
BW = edge(I,method,threshold)
BW = edge(I,method,threshold,direction)
BW = edge(___,"nothinning")
BW = edge(I,method,threshold,sigma)
BW = edge(I,method,threshold,h)

BW = edge(I) 返回二值图像 BW,其中的值 1 对应于灰度或二值图像 I 中函数找到边缘的位置,值 0 对应于其他位置。默认情况下,edge 使用 Sobel 边缘检测方法。

BW = edge(I,method) 使用 method 指定的边缘检测算法检测图像 I 中的边缘。

BW = edge(I,method,threshold) 返回强度高于 threshold 的所有边缘。

BW = edge(I,method,threshold,direction) 指定要检测的边缘的方向。Sobel 和 Prewitt 方法可以检测垂直方向和/或水平方向的边缘。Roberts 方法可以检测与水平方向成 45 度角和/或 135 度角的边缘。仅当 method 是 "Sobel"、"Prewitt" 或 "Roberts" 时,此语法才有效。

BW = edge(___,"nothinning") 跳过边缘细化阶段,这可以提高性能。仅当 method 是 "Sobel"、"Prewitt" 或 "Roberts" 时,此语法才有效。

BW = edge(I,method,threshold,sigma) 指定 sigma,即滤波器的标准差。仅当 method 是 "log" 或 "Canny" 时,此语法才有效。

BW = edge(I,method,threshold,h) 使用 "zerocross" 方法和您指定的滤波器 h 检测边缘。仅当 method 是 "zerocross" 时,此语法才有效。

2.使用示例
Matlab 复制代码
clear
clc
I=imread('1.jpg');%读入图像
I=rgb2gray(I); %转换为灰度图像
I=im2double(I);
[J1,thresh]=edge(I,'Roberts',[],'both');
[J2,thresh]=edge(I,'Roberts',[],'horizontal');
[J3,thresh]=edge(I,'Roberts',[],'vertical');
subplot(221);imshow(I);title('原始图像');
subplot(222);imshow(J1);title('Roberts算子,水平和垂直方向');
subplot(223);imshow(J2);title('Roberts算子,水平方向');
subplot(224);imshow(J3);title('Roberts算子,垂直方向');

最后:

如果你想要进一步了解更多的相关知识,可以关注下面公众号联系~ 会不定期发布相关设计内容包括但不限于如下内容:信号处理、通信仿真、算法设计、matlab appdesigner,gui设计、simulink仿真......希望能帮到你!

相关推荐
xiao5kou4chang6kai49 小时前
MATLAB机器学习、深度学习--从数据预处理到模型训练
深度学习·机器学习·matlab·数据预处理
H__Rick9 小时前
自动对焦学习-3
人工智能·学习·计算机视觉
计算机科研狗@OUC10 小时前
(cvpr26) AIMDepth: Asymmetric Image-Event Mamba for Monocular Depth Estimation
人工智能·深度学习·计算机视觉
qq_3665665011 小时前
2026最新:5款AI视频口型同步工具实测横评,视频翻译后嘴型对不上的终极解决方案
人工智能·计算机视觉·新媒体运营
梦想三三12 小时前
OpenCV银行卡数字识别项目(图像预处理与字符分割)
人工智能·opencv·计算机视觉
bubiyoushang88815 小时前
电力线信道“五类噪声”仿真MATLAB
开发语言·matlab
cici1587415 小时前
彩色图像模糊增强(Fuzzy Enhancement)MATLAB 实现
开发语言·算法·matlab
kaikaile199515 小时前
图像稀疏化分解 + 压缩感知(CS)重建 MATLAB
开发语言·计算机视觉·matlab
yugi98783815 小时前
PNCC(Power-Normalized Cepstral Coefficients)— MATLAB 实现
开发语言·人工智能·matlab
cooldog123pp16 小时前
cplex完全安装手册,适配matlab和python!
人工智能·python·matlab·cplex