在图像中,边缘可以看做是位于一阶导数较大的像素处,因此,我们可以求图像的一阶导数来确定图像的边缘,像sobel算子等一系列算子都是基于这个思想的。

但是这存在几个问题:1. 噪声的影响,在噪声点处一阶导数也会取极大值   2. 求解极大值的复杂性

所以,有了使用二阶导数的方法。这里主要考虑LoG算子,即高斯-拉普拉斯算子。

为什么要使用二阶导数呢?

这里要考虑上面说的第二个问题,一阶导数的极大值到了二阶导数对应的值就是0了,很显然求解一个函数的零点值要比求极大值容易。这个性质也被称为二阶导数过零点(zero-crossing)。

所以,我们就可以利用二阶导数来代替一阶导数了。

而对于上面的第一个问题,也就是为什么要引入高斯算子的原因。我们已经知道拉普拉斯算子其实就是一个二阶导数算子,为什么还要引入高斯呢?

细想一下,高斯算子在图像处理中的一般的作用其实大都是进行模糊,换句话说它可以很好的抑制噪声,这样引入高斯算子我们就克服了噪声的影响(这也是LoG算子对拉普拉斯算子的改进的地方)。

所以,高斯-拉普拉斯算子其实就是:先对图像进行高斯模糊,然后再求二阶导数,二阶导数等于0处对应的像素就是图像的边缘。

具体的推导过程可以看一下下面的链接:http://fourier.eng.hmc.edu/e161/lectures/gradient/node10.html

---------------------

由于高斯函数的参数sigma对高斯算子的影响,所以,如果sigma选取的很小的话,前期的模糊效果很弱,也就可以近似等于拉普拉斯算子了。所以,拉普拉斯算子也可以看做高斯-拉普拉斯算子的一种极限情况。

实验验证一下高斯-拉普拉斯算子的效果:

从结果中可以看出来当sigma取0.6时,与拉普拉斯算子的效果近似,而当sigma取1时,可以达到比较好的效果

View Code

--------------------------------------------------

我们再从图像中分析一下sigma对结果的影响,下面两图分别是sigma=0.6和sigma=1时的高斯-拉普拉斯算子的三维图(纵轴为函数值):

由图中可以看出sigma=0.6时的零点数明显要多于sigma=1时的,这也证明上面得到的结果确实是正确的。

--------------------------------------------------------

这里再多说一句,既然sigma是高斯函数的参数,那能不能从高斯函数的角度来说明一下sigma的作用呢?

当然可以!!先看下图:

我们只需要看u=0的三个图像即可,从图中可以看出,sigma越小,高斯函数的能量越集中,不知道哪里学到过:高斯函数97%的能量集中在3*sigma的范围内(以u对称的3*sigma范围内)。

那么我们现在就知道了使用高斯函数对图像进行模糊运算或者称之为卷积运算,它起作用比较明显的区域就是在距离当前像素3*sigma范围内。从此可以看出,sigma越大,高斯函数能够处理的邻域像素数越多,高斯模糊的效果也就越明显。

http://www.cnblogs.com/ztfei/archive/2012/09/01/2667050.html

http://www.cnblogs.com/ztfei/archive/2012/09/02/2667607.html 去雾

转载于:https://www.cnblogs.com/pengkunfan/p/4137633.html

图像处理之log---log算子相关推荐

  1. 图像处理中的拉普拉斯算子

    图像处理中的拉普拉斯算子 (2010-03-10 20:44:14) 转载▼ 标签: 算子 拉普拉斯变换 灰度 图像 杂谈 分类:图像处理 1.基本理论 拉普拉斯算子是最简单的各向同性微分算子,具有旋 ...

  2. 关于命令: nohup java -jar xxx.jar log.log 21 的解释。

    举例: nohup java -jar xxx.jar >log.log 2>&1 &: 解释: 1. 带&的命令行,即使terminal(终端)关闭,或者电脑死机 ...

  3. 矩阵求导演示: 对log(log(det(X)))求导

    对于目标函数: f=log⁡(log⁡(∣X∣))f = \log (\log (\left| {\bf{X}}\right|))f=log(log(∣X∣)) 目标求取其关于变量X\mathbf{X ...

  4. [Python图像处理] Laplacian-of-Gaussian(LOG)算子

    文中代码使用出处: https://blog.csdn.net/Eastmount/article/details/89056240 记录一下代码详解: """ 原理:首 ...

  5. 图像处理 | 最常用的边缘检测详解与代码(Robert, Sober, Prewitt, Canny, Kirsch, Laplacian, LOG, DOG算子)

    边缘检测 一阶 Roberts Cross 罗伯茨交叉算子 Sobel 索贝尔算子 Prewitt 普利维特算子 Canny 算子 Kirsch 算子 二阶 Laplacian 拉普拉斯算子 LoG ...

  6. OpenCV3学习(6.1)——边缘检测---Canny,Sobel,Prewitt,Robert,Laplace,LOG,DOG算子

    图像边缘信息主要集中在高频段,通常说图像锐化或检测边缘,实质就是高频滤波.我们知道微分运算是求信号的变化率,具有加强高频分量的作用.在空域运算中来说,对图像的锐化就是计算微分.由于数字图像的离散信号, ...

  7. 图像处理——高斯拉普拉斯LOG(2)

    首发于 (ML/DL/CV)相关细小知识点梳理 写文章 高斯拉普拉斯算子(Laplacian of Gaussian, LoG) saulzhang 致知计划 科学季 · 已瓜分 10 亿流量 49 ...

  8. android.util.log(Log.v()Log.d()Log.i()Log.w()和Log.e())

    在学习别人开发的例子时经常看到Log.v()Log.d()Log.i()Log.w()和Log.e()方法的使用,但是不知道这个log类是用来干什么的,下面我将对这个类进行讲解 android.uti ...

  9. GDAL 遥感 图像处理 锐化(Laplace算子、Sobel算子)

    GDAL 图像锐化 简介 拉普拉斯(Laplace)算子 部分代码: 索贝尔(Sobel)算子 部分代码: 处理效果 原图 (Laplace) (Sobel) 结尾 参考文章 简介 图像锐化(imag ...

  10. Log - Log日志入参

    选优化代码的方向,方法入参和返回结果日志首当其冲,每个方法都会有这两个日志,一大堆冗余的代码,而且什么样的打印格式都有,非常的杂乱. `public OrderDTO getOrder(OrderVO ...

最新文章

  1. 面试:你知道Java中的回调机制吗?
  2. simplexmlelement类设置编码_「软帝学院」:2019java五大常用工具类整理
  3. python.re模块
  4. eclipse安装maven插件_牛X!Eclipse 开始支持 Java 14~
  5. MyBatis-Plus 高级功能 —— 自动填充功能
  6. java ee jsp_EE JSP:Servlet的反向外套
  7. iOS UItextView监听输入特定字符跳转页面选择选项返回
  8. 【转】添加web引用和添加服务引用有什么区别?
  9. 团队管理中的每日站立会
  10. SCCM2012软件更新(WSUS补丁)同步成功无法获取补丁问题
  11. PLSQL Developer 特点
  12. wget下载文件命令
  13. ping检测整个网段地址在线
  14. 微信小程序怎么开发自己的小程序?
  15. 磁盘管理以及文件系统管理
  16. Android成长之路-音乐播放器的实现
  17. 需要在计算机安装msxml版本,安装Office2010提示需要MSXML版本6.10.1129.0的解决方法...
  18. Linux下U盘自动识别和挂载
  19. 32位和64位系统区别和数据字节
  20. 我的同事妹妹深夜来我家问我MyBatis源码解析,我是这样给她讲的

热门文章

  1. 前端问题:button按钮在form表单的时候会当成submit提交
  2. 2021-01-10 Halcon初学者知识 【10】形状匹配 【二】模板的形状匹配
  3. 面试题php2018,2018php最新面试题之PHP核心技术
  4. acer清理工具 clear下载_放下偏见,这些国内大厂出品的工具资源,免费又良心!...
  5. python3 time
  6. vue单向数据流与双向绑定两者区别
  7. mysql远程无法登陆_无法远程登陆MySQL数据库几种解决办法
  8. easyui复杂表单_EasyUI中实现form表单提交的示例分享
  9. pythonfor循环加2_python-for循环
  10. cobaltstrike扩展_Cobalt Strike系列教程第七章:提权与横向移动