在实际计算时,三种方法计算的金字塔组数noctaves,尺度空间坐标σ,以及每组金字塔内的层数S是一样的。同一时候,如果图像为640*480的标准图像。

金字塔层数:

当中o_min = 0,对于分辨率为640*480的图像N=5。

每组金字塔内图像数:
S=3。即在做极值检測时使用金子塔内中间3张图像。
对于LoG每组金字塔内有S+2张图像(S=-1。0,1,2,3),须要做S+1次高斯模糊操作(后一张图像由前一张做高斯模糊得到)。而DoG每组金字塔有S+3张高斯图像。得到S+2张DoG图像。
尺度空间系数:

当中,S表示每组金字塔内图像层数,n为当前高斯层数。取0-4。DoG须要5个尺度系数得到6张GSS图像。而LoG仅仅须要前4个尺度系数得到5张图像。

LoG

高斯核使用正太分布(高斯函数)计算模糊模版,N维空间正太分布方程为:

 

于是,二维高斯模板上的距离中心点为(x,y)的元素相应高斯计算公式为:

 

规范化的高斯拉普拉斯图像为

 

终于构造LoG金字塔有5层。每层有S+2=5张图像,每层金字塔内每张图像尺度是前一张的k倍。即构成的连续尺度序列:

当中o为当前金字塔层数,n为在当前金字塔层中图像张数。
因为卷积计算性质:

在计算时。通过对前一张图像做尺度系数为的卷积操作。能够降低卷积计算次数。故在金字塔每层内的S+2张图像,须要S+1次卷积操作,每次LoG核的尺度系数为:

 

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb3dlaV9jcXU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

图1. LoG金字塔示意图。 左側为图像尺度空间系数,红色矩形框为实际參与比較的空间系数,右側为在上一张图像做LoG卷积操作的尺度系数

DoG

因为LoG与Gauss核具有例如以下关系:

即,

 

因此。LoG算子能够用高斯差分算子DoG(Difference of Guassians)表示。

 

于是通过高斯金字塔每层内相邻两张图像相减能够得到DoG金字塔。对于最后须要S张图像寻找极值点,须要S+2张DoG图像。S+3张高斯图像。详细关系如图2.所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb3dlaV9jcXU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

图 2. 由高斯金字塔得到DoG金字塔及其相应的尺度空间系数示意图。

LoG & DoG

一个直观的比較结果,使用分别计算LoG和DoG,得到:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb3dlaV9jcXU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

能够看到。LoG比DoG明显须要很多其它的加法运算和乘法运算。尽管DoG须要在每层金字塔多做一次高斯操作(即为了得到S+2张DoG图须要S+3张高斯模糊图),但通过减法代替LoG核的计算过程,显著降低了运算次数,大大节省了运算时间。

(转载请注明作者和出处:http://blog.csdn.net/xiaowei_cqu 未经同意请勿用于商业用途)

【计算机视觉】SIFT中LoG和DoG比較的更多相关文章

  1. 【计算机视觉】SIFT中LoG和DoG比较

    <SIFT原理与源码分析>系列文章索引:http://www.cnblogs.com/tianyalu/p/5467813.html 在实际计算时,三种方法计算的金字塔组数noctaves ...

  2. 计算机视觉-sift(1)原理

    1999年由David Lowe首先发表于计算机视觉国际会议(International Conference on Computer Vision,ICCV),2004年再次经David Lowe整 ...

  3. SIFT中的尺度空间和传统图像金字塔

    SIFT中的尺度空间和传统图像金字塔 http://www.zhizhihu.com/html/y2010/2146.html 最近自己混淆了好多概念,一边弄明白的同时,也做了一些记录,分享一下.最近 ...

  4. matlab中log函数与rssi转距离

    我们通常所说的log是指以10为底的对数,而MATLAB中的log却不是这样.Matlab中的log函数在默认情况下是以e为底,即loge,如果需要计算以10为底的对数,那么需要用log10()函数. ...

  5. LoadRunner中log的使用总结

    LoadRunner中log的使用总结 1.log的设置方式. 在 runtime setting中可以设置log的生成方式: 默认的log方式: Enable logging选中,log optio ...

  6. Android中Log机制详解

    Android中Log的输出有如下几种: Log.v(String tag, String msg);        //VERBOSELog.d(String tag, String msg);   ...

  7. 0-Android系统各层中LOG的使用

     Android系统各层中LOG的使用 , ANDROID_LOG_DEFAULT, /* only for SetMinPriority() */ ANDROID_LOG_VERBOSE, ANDR ...

  8. Sift中尺度空间、高斯金字塔、差分金字塔(DOG金字塔)、图像金字塔

    转自:https://blog.csdn.net/dcrmg/article/details/52561656 一. 图像金字塔 图像金字塔是一种以多分辨率来解释图像的结构,通过对原始图像进行多尺度像 ...

  9. 计算机视觉-sift(2)代码理解

    之前结合不同人的资料理解了sift的原理,这里通过opencv中的代码来加深对sift的实现的理解. 使得能够从原理性理解到源码级的理解.不过该博文还是大量基于<赵春江, opencv2.4.9 ...

随机推荐

  1. MySQL-06 数据备份和恢复

    学习目标 数据备份 数据恢复 数据库迁移 导入和导出 数据备份 系统意外崩溃或者服务器硬件损坏都有可能导致数据库丢失,因此生产环境中数据备份非常重要. MySQLdump命令备份 该命令可以将数据库备 ...

  2. Java 编程下 Eclipse/myeclipse 如何设置单行代码显示的最大宽度

    http://www.cnblogs.com/sunzn/archive/2013/03/30/2990191.html 或 http://zhidao.baidu.com/link?url=67uy ...

  3. swift详解之十-------------异常处理、类型转换 ( Any and AnyObject )

    异常处理.类型转换 ( Any and AnyObject ) 1.错误处理 (异常处理) swift 提供第一类错误支持 ,包括在运行时抛出 ,捕获 , 传送和控制可回收错误.在swift中 ,错误 ...

  4. mongdb查询数据并且返回数据条数

    var totall; var a = db.db("Magiccat").collection("jishi_content").find().count({ ...

  5. 洛谷——P4109 [HEOI2015]定价

    P4109 [HEOI2015]定价 模拟(有点儿贪心) 题目要求在区间$l,r$中$x$后导0尽量多,且除去后导0之外,最后一个数尽量是$5$才最优 从$l$到$r$依次考虑, 假设当前考虑到$50 ...

  6. 牛客网NOIP赛前集训营-提高组(第二场)A 方差

    链接:https://www.nowcoder.com/acm/contest/173/A来源:牛客网 题目描述 一个长度为 m 的序列 b[1...m] ,我们定义它的方差为 ,其中  表示序列的平 ...

  7. POJ-3278 抓住这头牛

    广搜解决. 广搜搜出最短路,直接输出返回就行了. 每个点只搜一次,而且界限进行一次判断. else 语句里面不要用if    else if,这样的话就直走一条路了. #include <ios ...

  8. 测试网站链接是否可用(wget和curl)

    一.wget用法案例 系统给的命令参数如下: [root@litong_centos mysql3307]# wget --help GNU Wget 1.14, a non-interactive ...

  9. 大数据学习——服务器定期上传nginx日志到hdfs

    需求:按照所学知识完成如下: 服务器定期上传nginx日志到hdfs 提示: Hdfs的创建文件夹命令: Hadoop fs -mkdir /文件夹名称 Hdfs的上传命令: Hadoop fs -p ...

  10. maven中的groupId和artifactId到底指的是什么?

    具体回答如下: groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找. groupI ...