梯度算子检测边缘用.m

%梯度算子检测边缘用 MATLAB实现如下:
clc;clear;close;
I=imread('e:\role0\003i.bmp');
subplot(2,3,1);
imshow(I);
title('原始图像');
grid on;                  %显示网格线
axis on;                  %显示坐标系
I1=im2bw(I);
subplot(2,3,2);
imshow(I1);
title('二值图像');
grid on;                  %显示网格线
axis on;                  %显示坐标系
I2=edge(I1,'roberts');
figure;
subplot(2,3,3);
imshow(I2);
title('roberts算子分割结果');
grid on;                  %显示网格线
axis on;                  %显示坐标系
I3=edge(I1,'sobel');
subplot(2,3,4);
imshow(I3);
title('sobel算子分割结果');
grid on;                  %显示网格线
axis on;                  %显示坐标系
I4=edge(I1,'Prewitt');
subplot(2,3,5);
imshow(I4);
title('Prewitt算子分割结果 ');
grid on;                  %显示网格线
axis on;                  %显示坐标系

时间: 2024-10-18 09:53:21

梯度算子检测边缘用.m的相关文章

OpenCV2学习笔记(七):使用Canny算子检测轮廓

在:http://blog.csdn.net/liyuefeilong/article/details/43927909 中,主要讨论了使用sobel算子和拉普拉斯变换进行边缘检测.其中主要使用了了对梯度大小进行阈值化以得到二值的边缘图像的方法.在一幅图像中,边缘往往包含着重要的视觉信息,因为它们描绘出图像元素的轮廓.然而,仅仅使用简单的二值边缘图像有两大缺陷: 使用这种方法检测得到的边缘过粗,这意味着难以实现物体的精确定位. 难以找到这样的阀值,既能足够低检测到所有重要的边缘,同时也不至于包含

正交梯度算子(一阶导)

在边缘灰度值过度比较尖锐切图像中噪声比较小时,梯度算子工作效果好. 1.数字图像中求导数是利用差分近似微分来进行的. 2.梯度对应一阶导,梯度是矢量. 矢量的幅度(有时候常称为梯度) 方向角: 注意:范数的概念,实际上就是一种求距离的方法,详见距离度量函数 幅度有这里用欧式距离是2范数,城区距离是1范数,∞范数是棋盘距离. 实际计算中先计算每个图片对应点的(Gx,Gy),然后求范数,范数的值就是灰度图,范数大灰度高的地方是边界. 一般地,计算Gx,Gy都有两个模板,分别对图片做两次卷积,然后再求

梯度算子用于图像处理及其数学基础

为了提高图像的对比度,凸显边缘轮廓,通常可以使用一些梯度算子来进行图像增强,如roberts交叉算子,soble算子,laplace算子等. 假设图像用函数f(x,y)表示,那么处理的结果可以分别表示为: g(x,y)=(|Gl|+|Gr|)*f(x,y) g(x,y)=(|Gx|+|Gy|)*f(x,y) g(x,y)=|G|*f(x,y) 作为例子,使用laplace算子对图像进行了处理,结果显示图中灰度变化缓慢的区域得到了抑制.左下图为原始图像,右下为处理结果              

paper 55:图像分割代码汇总

matlab 图像分割算法源码 1.图像反转 MATLAB程序实现如下:I=imread('xian.bmp');J=double(I);J=-J+(256-1); %图像反转线性变换H=uint8(J);subplot(1,2,1),imshow(I);subplot(1,2,2),imshow(H); 2.灰度线性变换 MATLAB程序实现如下:I=imread('xian.bmp');subplot(2,2,1),imshow(I);title('原始图像');axis([50,250,5

图像分割基础算法及实现实例

最近的项目涉及到了图像处理领域,小小研究了一番,同时收集资料实现了几个基础功能. 一.图像反转 I=imread('input_image.jpg'); J=double(I); J=-J+(256-1); %图像反转线性变换 H=uint8(J); subplot(3,3,4),imshow(H); title('图像反转线性变换'); axis([50,250,50,200]); axis on; 二.灰度线性变换 I=imread('input_image.jpg'); subplot(3

图像处理常用边缘检测算子总结

图像处理常用边缘检测算子总结 转 不同图像灰度不同,边界处一般会有明显的边缘,利用此特征可以分割图像.需要说明的是:边缘和物体间的边界并不等同, 边缘指的是图像中像素的值有突变的地方,而物体间的边界指的是现实场景中的存在于物体之间的边界.有可能有边缘的地方并非边界,也有可能边界的地方并无边 缘,因为现实世界中的物体是三维的,而图像只具有二维信息,从三维到二维的投影成像不可避免的会丢失一部分信息:另外,成像过程中的光照和噪声也是不可避 免的重要因素.正是因为这些原因,基于边缘的图像分割仍然是当前图

图像处理常用边缘检测算子总结(转)

不同图像灰度不同,边界处一般会有明显的边缘,利用此特征可以分割图像.需要说明的是:边缘和物体间的边界并不等同,边缘指的是图像中像素的值有突变的地方,而物体间的边界指的是现实场景中的存在于物体之间的边界.有可能有边缘的地方并非边界,也有可能边界的地方并无边缘,因为现实世界中的物体是三维的,而图像只具有二维信息,从三维到二维的投影成像不可避免的会丢失一部分信息:另外,成像过程中的光照和噪声也是不可避免的重要因素.正是因为这些原因,基于边缘的图像分割仍然是当前图像研究中的世界级难题,目前研究者正在试图

Opencv图像识别从零到精通(21)-----canny算子边缘检测

最后来看看canny算子,这个是被成为最好的算子,因为过程多,有准测,后面会列出来,也是边缘检测的最后一个,所以这里作为结尾,来看看各个边缘检测的效果. 边缘检测结果比较 Roberts算子检测方法对具有陡峭的低噪声的图像处理效果较好,但是利用roberts算子提取边缘的结果是边缘比较粗,因此边缘的定位不是很准确. Sobel算子检测方法对灰度渐变和噪声较多的图像处理效果较好,sobel算子对边缘定位不是很准确,图像的边缘不止一个像素. Prewitt算子检测方法对灰度渐变和噪声较多的图像处理效

边缘检测算子(edge detectors)

边缘检测算子是一组用于在亮度函数中定位变化的非常重要的局部图像预处理方法.描述边缘的检测子使用偏导数,图像函数的变化可以用指向函数函数最大增长方向的梯度来表示. 不同图像灰度不同,边界处一般会有明显的边缘,利用此特征可以分割图像.需要说明的是:边缘和物体间的边界并不等同,边缘指的是图像中像素的值有突变的地方,而物体间的边界指的是现实场景中的存在于物体之间的边界.有可能有边缘的地方并非边界,也有可能边界的地方并无边缘,因为现实世界中的物体是三维的,而图像只具有二维信息,从三维到二维的投影成像不可避