intensity梯度值分布跟图片的大小有关, 比如将一张小图片放大后会变得很模糊, 原先清晰的edge, 即大的梯度值变得模糊. 但是原有的边缘通常还是肉眼可分辨的. 但用Sobel 算子可能就检测不出来的. 为了应付不同scale与blur程度图片的边缘检测, 检测算子需要能大能小, 大的用于检测大而blur的图片上的边缘, 小的用于检测精细的边缘. Sobel算子无法满足这个要求.

其实到现在已经可以看出对边缘检测算子的两个要求:

  • 可以计算一阶或二阶导数
  • 可大可小

    Laplacian of Gaussian(LoG)就满足这样的要求.

LoG的定义

LoG里的Gaussian是期望为0的二元正态分布:

\[
G(x, y) = e^{- \frac {x^2 + y^2}{2\sigma^2}}
\]

它的Laplacian算子为:

\[
\triangledown^2 G = \frac {\partial^2 G}{\partial x^2} + \frac {\partial^2 G}{\partial y^2} = \left[ \frac {x^2 + y^2 - \sigma ^ 4}{\sigma ^ 2}\right] e ^{-\frac{x^2 + y^2}{2\sigma^2}}
\]

指定mask大小以后, 通过采样可以得到近似的mask. 采样的方法不是唯一的, 唯一的要求是保留\(\triangledown^2 G\)的函数形态.

得到mask之后进行conv操作.

整个变换可以表示为:

\[
T(x, y) = \triangledown^2 G(x, y) \odot I(x, y) = \triangledown^2 [G(x, y) \odot I(x, y))]
\]

其中, $ \odot\(代表conv操作. 可以交换计算顺序的原因是\)Laplacian$也是一个线性操作(通过mask实现), conv操作也是.

Marr-Hildreth edge detection算法

算法步骤:

  1. 高斯平滑
  2. 计算Laplacian
  3. 寻找zero-crossing点(相反方向的两个相邻点的符号相反的点, 原理见前文的第二张图), 作为edge上的点

Edge detection using LoG的更多相关文章

  1. Image Processing and Analysis_8_Edge Detection: Optimal edge detection in two-dimensional images ——1996

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  2. Image Processing and Analysis_8_Edge Detection:Multiresolution edge detection techniques ——1995

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  3. Adobe Edge Animate –EdgeCommons Log和全局变量设置功能

    Adobe Edge Animate –EdgeCommons Log和全局变量设置功能 版权声明: 本文版权属于 北京联友天下科技发展有限公司. 转载的时候请注明版权和原文地址. 一.Log功能 当 ...

  4. 计算机视觉中的边缘检测Edge Detection in Computer Vision

    计算机视觉中的边缘检测   边缘检测是计算机视觉中最重要的概念之一.这是一个很直观的概念,在一个图像上运行图像检测应该只输出边缘,与素描比较相似.我的目标不仅是清晰地解释边缘检测是怎样工作的,同时也提 ...

  5. 【数字图像分析】基于Python实现 Canny Edge Detection(Canny 边缘检测算法)

    Canny 边缘检测算法 Steps: 高斯滤波平滑 计算梯度大小和方向 非极大值抑制 双阈值检测和连接 代码结构: Canny Edge Detection | Gaussian_Smoothing ...

  6. Image Processing and Analysis_21_Scale Space:Edge Detection and Ridge Detection with Automatic Scale Selection——1998

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  7. Image Processing and Analysis_8_Edge Detection:Edge Detection Revisited ——2004

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  8. Image Processing and Analysis_8_Edge Detection:Local Scale Control for Edge Detection and Blur Estimation——1998

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  9. Image Processing and Analysis_8_Edge Detection:Scale-space and edge detection using anisotropic diffusion——1990

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

随机推荐

  1. java的构造方法

    当一个类a继承一个类b,类b继承类c,类c继承类d时, 先执行d的构造,然后c.b:当该执行a的构造时,如果有成员变量,就先执行成员变量,最后构造 子类继承父类,子类重写父类的某个方法,当父类构造时, ...

  2. [No000001]一切都是最好的安排

    <一切都是最好的安排> 从前有一个国家,地不大,人不多,但是人民过着悠闲快乐的生活,因为他们有一位不喜欢做事的国王和一位不喜欢做官的宰相. 国王没有什么不良嗜好,除了打猎以外,最喜欢与宰相 ...

  3. 转: vim 的编辑格式设置

    http://www.cnblogs.com/freewater/archive/2011/08/26/2154602.html :set encoding=utf-8:set fileencodin ...

  4. Zygote进程【3】——SystemServer的诞生

    在ZygoteInit的main()方法中做了几件大事,其中一件便是启动Systemserver进程,代码如下: @/frameworks/base/core/Java/com/Android/int ...

  5. virtual box使用

    1.工具栏菜单显示 用的是mac电脑.开始发现分辨率小,选了视图->全屏模式的菜单之后发现工具栏菜单不见了. 解决办法:用一个外置键盘,右ctrl+c进行恢复 virtualBox菜单栏和状态栏 ...

  6. Hibernate总结2 API和配置文件

    1,Configuration 配置 获取config配置文件的方法 Configuration cfg = new Configuration(); cfg.下面的方法 configure() co ...

  7. GLM in SPM

    主要记一句话: SPM的GLM模型中的β,指的是相应regressor对最后测量得到的信号所产生的效应(effect). 后续的假设检验过程实际上都是对各个regressor的β向量进行的. The ...

  8. 02传智_jbpm与OA项目_部门模块

    部门模块:具有增删改查(部门)的功能. Dao层的实现: 1,定义一个DepartmentDao.java. 定义基本的数据库操作.

  9. .net混淆、反编译工具调查

    常用的工具列表[比较常见的] 混淆器.加密 Dotfuscator VS默认带的工具,不过是个社区版 强度不大 dotNET Reactor 使用了NativeCode 和混淆的形式 Xenocode ...

  10. Linux 网络编程详解二(socket创建流程、多进程版)

    netstat -na | grep " --查看TCP/IP协议连接状态 //socket编程提高版--服务器 #include <stdio.h> #include < ...