边缘检测算子的MATLAB代码

原创 2016年08月30日 11:03:54

①Roberts 算子(针对彩色三维图像)

(1)用卷积函数conv2 处理的Matlab 程序代码:

a=imread('D:\290', 'bmp');  
b=[0 1;-1 0]/126;c=[1 0;0 -1]/126; %参数126 是实验时为增强图像对比度试验出来的  
d=convn(a,b,'same');d=abs(d); %处理水平方向算子的结果,参数'same'使得得到的图像与原图大小相等。  
e=convn(a,c,'same');e=abs(e); %处理垂直方向算子的结果  
f=max(d,e); %取水平及垂直方向上的大值  
subplot(1,3,1),imshow(d), title(' roberts 水平') 
subplot(1,3,2),imshow(e), title(' roberts 垂直') 
subplot(1,3,3),imshow(f), title(' roberts 综合') 


(2)用edge函数处理的Matlab程序代码:

a = imread('D:\290.bmp'); %读取图像  
a=rgb2gray(a);  
a = imnoise(a, 'salt & pepper',0.005); %对图像加椒盐噪声  
b = edge(a,'roberts',0.02); %以阈值为0.02进行roberts边缘检测  
c = edge(a,'roberts',0.07); %阈值为0.07  
[d,e] = edge(a,'roberts'); %该处可得阈值的默认值e  
subplot(2,2,1),imshow(a),axis on; title('原图')  
subplot(2,2,2),imshow(b) ,axis on; title('roberts阈值=0.02')  
subplot(2,2,3),imshow(c) ,axis on;title('roberts 阈值=0.07')  
subplot(2,2,4),imshow(d) ,axis on; title('默认') 

感觉参数设置的不太对,但是暂时先这样,以后慢慢调。

版权声明:本文为博主原创文章,未经博主允许不得转载。

laplacian算子的运用

Laplacian算子定义为 它的差分形式为 表示成模板的形式就是 。Laplacian算子另外一种形式是,也经常使用。Laplace算子是一种各向同性算子,在只关心边缘的...

发个MatLab 自编的 均值滤波、中值滤波、高斯滤波 图像处理函数

虽然matlab里面有这些函数,但是攀立民老师要求自己编写,计算机视觉上有这个实验,到网上找了半天才零散的找到一些碎片,还是整理以后发上来吧!MatLab自编的均值滤波、中值滤波、高斯滤波 图像处理函...

Matlab-边缘检测算子代码

  • 2014年08月07日 16:02
  • 2KB
  • 下载

几种边缘检测算子的评估(周道炳 朱卫纲)

前几天学习图像边缘检测,网上有博客介绍了一篇文章,可惜我z

canny边缘检测算子的研究

  • 2008年04月20日 20:25
  • 350KB
  • 下载

几种边缘检测算子的比较Roberts,Sobel,Prewitt,LOG,Canny

边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点。图像属性中的显著变化通常反映了属性的重要事件和变化。这些包括:深度上的不连续、表面方向不连续、物质属性变化和...

边缘检测的matlab代码

  • 2015年10月30日 16:47
  • 392B
  • 下载

边缘检测matlab代码

  • 2012年05月03日 13:21
  • 184KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:边缘检测算子的MATLAB代码
举报原因:
原因补充:

(最多只允许输入30个字)