6.边缘检测:梯度——梯度计算中滤波器的线性特性的利用_6
到现在为止还挺好。
在现实世界中,在这里有这个小函数f(x):
它有一些东西,然后它需要一个跳跃,它在那里有更多的东西:
这就是强度作为x的函数。
如果我实际上只是通过做一个正确的差异来获取该函数的梯度。
我要做的是,应用导数算子,得到这个:
有人可能会问,边缘在哪里。
我们可以看到,这条边,哎呀,我漏了,这条边就在这里。如图:
但在这导数这个图种很混乱,很找到边缘在哪里。如图:
问题当然是我们增加了噪音。
这个噪声使得我们在各处都有正的和负的导数。
我们来看一下噪声对一些导数的影响,以及我们可以做些什么。
这里我们再次提供了更多的条纹鸭,这里我们有梯度图像:
你可以看到,当我给图像添加噪音时,我的梯度开始崩溃。
那是我开始看到这个,我有一点点高斯噪音,现在我变成了这些大椒盐噪音。
感觉像是盐和胡椒的声音,只是这些大的尖峰在我的导数中发生。
所以我们必须以某种方式处理这种噪音。
您可能知道如何处理,我们如何处理噪音?
我们过滤,我们要顺利摆脱它,我们之前做过。
这是我的图像 f,现在让我应用一个平滑内核,h。如图:
我只是想平滑一点。所以,当我平滑它的时候,我使用这个是 h 来卷积 f 。
无论你是进行卷积还是相关。H 与 f 卷积,你现在看到我得到了一个漂亮,流畅的函数:
现在,我们已经平滑了信号,我们可以采取导数,你看到的是,我们得到这个好,平滑的峰值:
那么,边缘在哪里?
边缘将在此处达到此峰值,对应于那边的边缘。
所以基本上为了找到我们的边缘,我们将不得不以某种方式基本上应用平滑渐变并寻找一些峰值。
在我们继续这样做之前,请记住关联属性和线性等的整个概念。
我们可以自己保存一个操作,因为与f卷积的h的导数与用f卷积的h的导数相同。
那么当我们进行边缘检测时,它会是什么样子?
请继续看以下内容:
所以在这里我们拥有与以前相同的 f:
现在,我取h,然后求导,现在看起来像这样:
当我将该函数直接应用于f时,我得到的值与我上次得到的值相同。Wow,你会发现神奇的地方出现了:
这必须是因为线性算子的关联属性,导数和滤波是这些线性算子。
好的,最后一个问题。我们现在有这个美好的峰值:
我们必须找到峰值。我们必须找到该导数的最大值。
我们如何找到最大值?
我们取更多的导数。
所以我们将不得不采取另一种导数。
所以现在,我们只需要做一个二阶导数,而不是只做一个导数:
在h是高斯函数之前,这是高斯函数的一阶导数。
如果我们再对它求导,就会得到这个,有时被称为倒墨西哥帽。
你会看到,当我们在2D中做的时候,对吧,因为它有点像这个草帽状的,但是上下的,对吧?
当我们将该运算符应用于图像时,我们可以通过这个强斜率得到这个漂亮的零交叉:
这就是我们的边:
这是一个强力的斜率零交叉。
我们不需要找到一般的最大值,我们只需要找到任何一个值为0的地方附近有一个强梯度。
小测验:
那么我们利用了哪些线性性质首先求核的导数然后应用它,而不需要在前两个步骤中做?
A、相关;
B、可交换;
C、区分;
D、A 和 C;
答案:D。我们采用了相关,并且区分是线性的,并且可以应用相关,
这就是允许我们采用运算符的导数并将其应用于整个图像的原因。
我们稍后会谈一谈,为什么有时这是好事。
但最简单的解释是,假设我的图像是1,000 x 1,000。
假设导数是31×31。
我可以把31乘31的导数,这个很小,然后将其应用到我的1,000乘1,000。
或者,我可以把31×31应用到1000×1000上然后对整个1000×1000求导,这比对小一点的滤波器求导的计算量要大得多。
这就是我们这样做的原因之一。
——学会编写自己的代码,才能练出真功夫。
6.边缘检测:梯度——梯度计算中滤波器的线性特性的利用_6相关推荐
- matlab 水文,MATLAB在水文水能计算中的应用
第 25卷第 1期 2006年第 1期 红水河 HongShui River V01.25.No.1 No.1.20o6 MATLAB在水文水能计算中的应用 黄飞仁 ,黄汉球2,曾英先 (1.广西水电 ...
- 6.边缘检测:梯度——计算梯度Matlab实战_5
目录 计算x,y梯度 梯度方向操作 计算x,y梯度 让我们仔细看看梯度方向,特别是它们如何计算和表示. % Gradient Direction >> pkg load image; &g ...
- 图像sobel梯度详细计算过程_数字图像处理(第十章)
点.线.边缘检测 背景知识.书中主要介绍了图像的一阶导数与二阶导数,这个之前的文章中有过介绍这里在复习一遍.对于函数 ,对于点 在x方向的一阶偏导为: ,二阶偏导为: 之后书中总结了一阶导与二阶导对于 ...
- 图像sobel梯度详细计算过程_视频处理之Sobel【附源码】
边缘检测是检测图像中的一些像素点,它们周围的像素点的灰度发生了急剧的变化,我们认为在这过程中,图像中的物体不同导致了这一变化,因此可以将这些像素点作为一个集合,可以用来标注图像中不同物体的边界.边缘区 ...
- pytorch梯度下降函数_Pytorch中常用的四种优化器SGD、Momentum、RMSProp、Adam
来源:AINLPer微信公众号 编辑: ShuYini 校稿: ShuYini 时间: 2019-8-16 引言 很多人在使用pytorch的时候都会遇到优化器选择的问题,今天就给大家介绍对比 ...
- 关于一维和二维数据的差分和梯度的计算(使用 num.diff() 和 numpy.gradient() )
关于一维数据的差分和梯度的计算 一维数据的差分公式: 一阶差分: 一阶前向差分:下一个值与当前值的差 f(xk)=f(xk+1)−f(xk)f(x_k) = f(x_{k+1}) - f(x_k)f( ...
- 【强化学习入门】梯度赌博机算法中,偏好函数更新:梯度上升公式是精确梯度上升的随机近似的证明
本文证明强化学习入门问题:K摇臂赌博机的梯度赌博机算法中,偏好函数更新公式:Ht+1(At)=Ht(At)+α(Rt−Rt‾)(1−πt(At))H_{t+1}(A_t) = H_t(A_t) + \ ...
- matlab在数值计算中的应用,详解MATLAB在科学计算中的应用
详解MATLAB在科学计算中的应用 编辑 锁定 讨论 上传视频 <详解MATLAB在科学计算中的应用>是2011年电子工业出版社出版的图书,作者是陈泽占海明. 书 名 详解MATLA ...
- Fast Marching算法及其在点云测地线计算中的应用
1. 前言: 在解离散测地线问题中,Fast Marching算法被广泛使用.其最大的优点是可以直接应用于点云数据.要知道,大部分内蕴几何算法需要原始数据提供连续的网格信息,才能够被使用.Fast M ...
最新文章
- TCP/IP协议簇分层详解---转
- Linux 中的文件传输
- ultraos win10启动盘_UltraISO制作U盘启动安装MSDN原版Win10系统教程 - SDN系统库
- Bootstrap-组件-3
- Linux安全 chage sudo授权 selinux安全上下文 gpg加密 aide入侵检测系统 audit 审计
- Python之路(二)Python基础
- 你可以不成功,但是不能不成长-----杨澜
- [转载] Python字符串常用操作命令
- java 挂起_Java 6 JVM挂起
- 无网络环境下HTCVive VR设备运行环境搭建
- zoom在win7上安装失败
- rtthread学习之(2)——STM32 系列外设驱动添加指南
- IP错误引起MongoDB副本集初始化失败
- 关于UNI-APP微信小程序订阅信息订阅获取失败的问题处理
- Android程序员二本出身,阿里架构师经验分享
- STM32-ESP8266解析天气
- Urban NeRF
- nginx端口映射配置(Windows)
- Nginx系列1: 正向代理和反向代理、Nginx工作原理、Nginx常用命令和升级、搭建Nginx负载均衡
- Android Studio新建工程及测试效果
热门文章
- 区块链学习笔记:DAY05 如何使用公有云区块链服务
- sizeof 在C语言的作用,union 与sizeof的作用??
- HBase的Shell命令和JavaAPI
- 从零开始学Pytorch之数据操作
- 二叉树的前序、中序、后序遍历及互相求法
- 如何运行python代码
- javascript判断日期奇偶_js中判断奇数或偶数
- python怎么清屏_python实现清屏的方法 Python Shell中清屏一般有两种方法。
- c语言编程输出年月日,C语言程序设计: 输入年月日 然后输出是星期几
- set类型 php,常用php操作redis命令整理(四)SET类型详解