高斯核卷积高斯核

之前看sift源码中有个概念,就是对一张图像I0I_0I0​,先进行标准差为σ1\sigma_1σ1​的高斯核卷积,得到I1I_1I1​,再基于I1I_1I1​进行标准差为σ2\sigma_2σ2​的高斯核卷积得到图像I2I_2I2​,和I0I_0I0​直接进行一次标准差为σ\sigmaσ的高斯核的卷积得到I2I_2I2​之间的关系。写成表达式就是I0∗g1∗g2I_0*g1*g2I0​∗g1∗g2是否等于I0∗(g1∗g2)I_0*(g1*g2)I0​∗(g1∗g2),如果成立g=g1∗g2g=g1*g2g=g1∗g2是个什么东东。结论是等号成立的,并且ggg也是一个标准差为σ\sigmaσ的高斯分布的概率密度函数,且σ2=σ12+σ22\sigma^2=\sigma_1^2 + \sigma_2^2σ2=σ12​+σ22​。结合律留给有兴趣的读者,下面证明方差之间的关系。

证明

设g1,g2g_1,g_2g1​,g2​是两个1维正态分布的概率密度函数:
g1(x)=12πσ1e−(x−μ1)22σ12g_1(x)=\frac{1}{\sqrt{2\pi}\sigma_1}{e}^{-\frac{(x-\mu_1)^2}{2\sigma_1^2}}g1​(x)=2π​σ1​1​e−2σ12​(x−μ1​)2​
g2(x)=12πσ2e−(x−μ2)22σ22g_2(x)=\frac{1}{\sqrt{2\pi}\sigma_2}e^{-\frac{(x-\mu_2)^2}{2\sigma_2^2}}g2​(x)=2π​σ2​1​e−2σ22​(x−μ2​)2​

在无穷区间上的积分,被积函数的自变量发生平移并不影响积分结果,为了简化计算,不妨设μ1=μ2=0\mu_1=\mu_2=0μ1​=μ2​=0.
从而,

f(t)=g1(x)∗g2(x)f(t)=g_1(x)*g_2(x)f(t)=g1​(x)∗g2​(x)
=∫−∞∞g1(x)g2(t−x)dx=\displaystyle\int_{-\infty}^{\infty}g_1(x)g_2(t-x)dx=∫−∞∞​g1​(x)g2​(t−x)dx
=12πσ1σ2∫−∞∞e−x22σ12−−(t−x)22σ22dx=\displaystyle{\frac{1}{2\pi \sigma_1\sigma_2}\int_{-\infty}^{\infty}e^{\frac{-x^2}{2\sigma_1^2}-\frac{-(t-x)^2}{2\sigma_2^2}}}dx=2πσ1​σ2​1​∫−∞∞​e2σ12​−x2​−2σ22​−(t−x)2​dx

下面对积分部分进行计算
∫−∞∞e−x22σ12−−(t−x)22σ22dx\displaystyle\int_{-\infty}^{\infty}e^{\frac{-x^2}{2\sigma_1^2}-\frac{-(t-x)^2}{2\sigma_2^2}}dx∫−∞∞​e2σ12​−x2​−2σ22​−(t−x)2​dx
=∫−∞∞e−x2σ22−σ12(t−x)22σ12σ22dx=\displaystyle\int_{-\infty}^{\infty}e^{\frac{-x^2\sigma_2^2-\sigma_1^2(t-x)^2}{2\sigma_1^2\sigma_2^2}}dx=∫−∞∞​e2σ12​σ22​−x2σ22​−σ12​(t−x)2​dx

=∫−∞∞ex2σ22+σ12t2+σ12x2−2σ12tx−2σ12σ22dx=\displaystyle\int_{-\infty}^{\infty}e^{\frac{x^2\sigma_2^2+\sigma_1^2t^2+\sigma_1^2x^2-2\sigma_1^2tx}{-2\sigma_1^2\sigma_2^2}}dx=∫−∞∞​e−2σ12​σ22​x2σ22​+σ12​t2+σ12​x2−2σ12​tx​dx

=∫−∞∞e(σ12+σ22)(x−σ12tσ12+σ22)2−σ14t2(σ12+σ22)2⋅(σ12+σ22)+σ12t2−2σ12σ22dx=\displaystyle\int_{-\infty}^{\infty}e^{\frac{(\sigma_1^2+\sigma_2^2)(x-\frac{\sigma_1^2t}{\sigma_1^2+\sigma_2^2})^2-\frac{\sigma_1^4t^2}{(\sigma_1^2+\sigma_2^2)^2}\cdot(\sigma_1^2+\sigma_2^2)+\sigma_1^2t^2}{-2\sigma_1^2\sigma_2^2}}dx=∫−∞∞​e−2σ12​σ22​(σ12​+σ22​)(x−σ12​+σ22​σ12​t​)2−(σ12​+σ22​)2σ14​t2​⋅(σ12​+σ22​)+σ12​t2​dx

=∫−∞∞e(σ12+σ22)(x−σ12tσ12+σ22)2+σ12σ22t2σ12+σ22−2σ12σ22dx=\displaystyle\int_{-\infty}^{\infty}e^{\frac{(\sigma_1^2+\sigma_2^2)(x-\frac{\sigma_1^2t}{\sigma_1^2+\sigma_2^2})^2+\frac{\sigma_1^2\sigma_2^2t^2}{\sigma_1^2+\sigma_2^2}}{-2\sigma_1^2\sigma_2^2}}dx=∫−∞∞​e−2σ12​σ22​(σ12​+σ22​)(x−σ12​+σ22​σ12​t​)2+σ12​+σ22​σ12​σ22​t2​​dx

=∫−∞∞e(σ12+σ22)(x−σ12tσ12+σ22)2−2σ12σ22−t2σ12+σ22dx=\displaystyle\int_{-\infty}^{\infty}e^{\frac{(\sigma_1^2+\sigma_2^2)(x-\frac{\sigma_1^2t}{\sigma_1^2+\sigma_2^2})^2}{-2\sigma_1^2\sigma_2^2}-\frac{t^2}{\sigma_1^2+\sigma_2^2}}dx=∫−∞∞​e−2σ12​σ22​(σ12​+σ22​)(x−σ12​+σ22​σ12​t​)2​−σ12​+σ22​t2​dx

=e−t2σ12+σ22∫−∞∞e(σ12+σ22)(x−σ12tσ12+σ22)2−2σ12σ22dx=e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\displaystyle\int_{-\infty}^{\infty}e^{\frac{(\sigma_1^2+\sigma_2^2)(x-\frac{\sigma_1^2t}{\sigma_1^2+\sigma_2^2})^2}{-2\sigma_1^2\sigma_2^2}}dx=eσ12​+σ22​−t2​∫−∞∞​e−2σ12​σ22​(σ12​+σ22​)(x−σ12​+σ22​σ12​t​)2​dx

前面说过,无穷积分上被积函数的自变量平移操作不影响积分值(可以用换元法证明,令y=x−σ12tσ12+σ22y=x-\frac{\sigma_1^2t}{\sigma_1^2+\sigma_2^2}y=x−σ12​+σ22​σ12​t​,dx=dydx=dydx=dy,换元必换限,这里上下限依旧是正负无穷,不变)
上式
=e−t2σ12+σ22∫−∞∞e(σ12+σ22)x2−2σ12σ22dx=e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\displaystyle\int_{-\infty}^{\infty}e^{\frac{(\sigma_1^2+\sigma_2^2)x^2}{-2\sigma_1^2\sigma_2^2}}dx=eσ12​+σ22​−t2​∫−∞∞​e−2σ12​σ22​(σ12​+σ22​)x2​dx

=e−t2σ12+σ22∫−∞∞e−(σ12+σ222σ1σ2x)2dx=e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\displaystyle\int_{-\infty}^{\infty}e^{-(\frac{\sqrt{\sigma_1^2+\sigma_2^2}}{\sqrt{2}\sigma_1\sigma_2}x)^2}dx=eσ12​+σ22​−t2​∫−∞∞​e−(2​σ1​σ2​σ12​+σ22​​​x)2dx

令y=σ12+σ222σ1σ2xy=\frac{\sqrt{\sigma_1^2+\sigma_2^2}}{\sqrt{2}\sigma_1\sigma_2}xy=2​σ1​σ2​σ12​+σ22​​​x,则dx=2σ1σ2σ12+σ22dydx=\frac{\sqrt{2}\sigma_1\sigma_2}{\sqrt{\sigma_1^2+\sigma_2^2}}dydx=σ12​+σ22​​2​σ1​σ2​​dy,换元必换限,上下限依旧是正负无穷不变,从而有
原式
=e−t2σ12+σ22∫−∞∞e−y2⋅2σ1σ2σ12+σ22dy=e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\displaystyle\int_{-\infty}^{\infty}e^{-y^2}\cdot\frac{\sqrt2\sigma_1\sigma_2}{\sqrt{\sigma_1^2+\sigma_2^2}}dy=eσ12​+σ22​−t2​∫−∞∞​e−y2⋅σ12​+σ22​​2​σ1​σ2​​dy

=e−t2σ12+σ222σ1σ2σ12+σ22∫−∞∞e−y2dy=e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\frac{\sqrt2\sigma_1\sigma_2}{\sqrt{\sigma_1^2+\sigma_2^2}}\displaystyle\int_{-\infty}^{\infty}e^{-y^2}dy=eσ12​+σ22​−t2​σ12​+σ22​​2​σ1​σ2​​∫−∞∞​e−y2dy

=e−t2σ12+σ222σ1σ2σ12+σ22π=e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\frac{\sqrt2\sigma_1\sigma_2}{\sqrt{\sigma_1^2+\sigma_2^2}}\sqrt\pi=eσ12​+σ22​−t2​σ12​+σ22​​2​σ1​σ2​​π​

其中∫−∞∞e−y2dy=π\int_{-\infty}^{\infty}e^{-y^2}dy=\sqrt\pi∫−∞∞​e−y2dy=π​,一般的高数书上都有,不等式放缩证明收敛性;平方后取极坐标,再两边夹取极限得到收敛的值。

最后得到
f(t)=12πσ1σ2⋅e−t2σ12+σ22⋅2σ1σ2σ12+σ22⋅πf(t)=\frac{1}{2\pi\sigma_1\sigma_2}\cdot e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}\cdot\frac{\sqrt2\sigma_1\sigma_2}{\sqrt{\sigma_1^2+\sigma_2^2}}\cdot\sqrt\pif(t)=2πσ1​σ2​1​⋅eσ12​+σ22​−t2​⋅σ12​+σ22​​2​σ1​σ2​​⋅π​
=12πσ12+σ22e−t2σ12+σ22=\frac{1}{\sqrt{2\pi}\sqrt{\sigma_1^2+\sigma_2^2}}e^{\frac{-t^2}{\sigma_1^2+\sigma_2^2}}=2π​σ12​+σ22​​1​eσ12​+σ22​−t2​
=12πσe−t2σ2=\frac{1}{\sqrt{2\pi}\sigma}e^{\frac{-t^2}{\sigma^2}}=2π​σ1​eσ2−t2​
即f(t)f(t)f(t)是标准差为σ\sigmaσ的高斯分布的概率密度函数,其中σ2=σ12+σ22\sigma^2=\sigma_1^2+\sigma_2^2σ2=σ12​+σ22​,证毕。

从理论上说,一张图先后经过σ1,σ2\sigma_1,\sigma_2σ1​,σ2​的高斯模糊和直接经过σ\sigmaσ的模糊后的状态是一样的,但是实际操作中,由于高斯核模板大小并不是无穷的,而是取了有限个元,所以其中的误差累计,具体会是什么结果也难以预料,只能多做做实验进行对比了。而在sift尺度空间的构造中,因为σ\sigmaσ比σ2\sigma_2σ2​大,所以对应的高斯模板也会大一点,运算量就大了。也就是在I0,I1I_0,I_1I0​,I1​已知的情况下,由I1I_1I1​得到I2I_2I2​比由I0I_0I0​得到I2I_2I2​的实际运算量会小点。

高斯核与高斯核的卷积的结果还是一个高斯核的推导相关推荐

  1. OpenCV(C++版本)基础相关(7):直方图均衡化、图像卷积操作、高斯模糊、高斯双边模糊、实时人脸检测案例

    文章目录 二十六.直方图均衡化 26.1 quickopencv.h 26.2 QuickDemo.cpp 26.3 test.cpp 二十七.图像卷积操作 27.1 quickopencv.h 27 ...

  2. 十几年后我才知道,嫁了一个硬核老公

    本文转载自 公众号 牛娃成长记 我的闺蜜小雨妈,从小就是个数理内容的小白. 所以,编程从她嘴里说出来的时候,差点没一口水呛着我. 这几年编程教育的确是火,但我没想到,数学从小就不好的小雨妈,竟然比我还 ...

  3. 【数据挖掘】高斯混合模型 ( 模型简介 | 软聚类 | 概率作用 | 高斯分布 | 概率密度函数 | 高斯混合模型参数 | 概率密度函数 )

    文章目录 I . 高斯混合模型方法 ( GMM ) II . 硬聚类 与 软聚类 III . GMM 聚类结果概率的作用 IV . 高斯混合分布 V . 概率密度函数 VI . 高斯分布 曲线 ( 仅 ...

  4. 利用C#编写一个高斯正反算程序

    一.代码界面展示 整个界面控件为tabControl,groupBox,label,textbox,comboBox,button,richTextBook. 二.代码运算结果展示 数据结果采用国家统 ...

  5. 怎么虚拟出一台128核的服务器,64核128线程处理器横空出世 正面刚因特尔48核服务器CPU...

    64核128线程处理器横空出世 正面刚因特尔48核服务器CPU 2018年11月12日 11:51作者:尹走召编辑:尹超文章出处:泡泡网原创 分享 在近期的AMD公告中,我们注意到有一个新处理器基于Z ...

  6. 2022年腾讯云新春采购大促:2核2G4M云服务器秒杀价首年40元,4核8G10M首年211元

    2022年腾讯云新春采购大促:2核2G4M云服务器秒杀价首年40元,4核8G10M首年211元 2022年腾讯云新春采购活动开始了,活动持续到3月31日,其中腾讯云个人新用户爆款2核2G4M云服务器秒 ...

  7. 计算机中使用四核处理器四内核的主要作用是,酷睿2四核

    面向台式机的英特尔酷睿2 四核处理器采用强大的多核技术,能有效处理密集计算和虚拟化工作负载.最新型英特尔 酷睿2 四核处理器基于45纳米英特尔酷睿微体系结构,具有速度快.温度低 等优点,可满足下一代高 ...

  8. 利用Python编写一个高斯正反算程序

    一.前言 这次的高斯正反算程序是使用的Python编写的. 环境信息是:Win10.PyCharm 2021.3.1.PySide6 6.3.1.Python 3.9.9,基于QT Designer设 ...

  9. 之前的一个5g核心网解决方案

    本方案描述了5G核心网资源管理软件的系统设计,内容主要包括系统概述.总体设计.接口设计.数据库设计.关键技术和技术指标.本方案适用于5G核心网资源管理软件的设计,指导下一步的软件开发,可以作为后续软件 ...

  10. 数据挖掘(10):卷积神经网络算法的一个实现

    前言 从理解卷积神经到实现它,前后花了一个月时间,现在也还有一些地方没有理解透彻,CNN还是有一定难度的,不是看哪个的博客和一两篇论文就明白了,主要还是靠自己去专研,阅读推荐列表在末尾的参考文献.目前 ...

最新文章

  1. 为何艾伦·图灵想让AI智能体故意犯错
  2. golang 代码格式化工具 gofmt
  3. Hi3516A开发--接触
  4. 记一次中台数据传输同步Elasticsearch失败的车祸现场
  5. 配置WCF同时支持WSDL和REST,swaggerwcf生成文档
  6. linux sudo 配置文件,linux sudo使用和sudoers配置详解
  7. Unity3D游戏资源的提取
  8. 手机端APP防盗链配置问题
  9. element-ui表格头在分辨率较低的电脑会错乱
  10. android 加载图片进度条,实现微信图片加载显示进度的效果-LoadingProgress
  11. UIImageView做动画的坑
  12. 微机原理知识点总结9(8255A+8251A)
  13. python 怎么将数字转大写_Python将数字转化为中文大写的实例代码
  14. 在美国读书的体会 [转]
  15. 尚硅谷_springcloud(2020新版) 下载_异界删除浓缩怎么得|原创下载异界仙战游戏一次搞定 异界仙战安卓下载地址最新版整理...
  16. 前端vue/js刷新浏览器页面方法-案例
  17. 多读书多看报...... http://www.it-ebooks.info/
  18. 计算机房的网络化管理,计算机房及校园网络管理员的岗位职责
  19. 战德臣数据库ppt_为我们的健康数据而战
  20. 查询话费余额php接口,查询余额接口

热门文章

  1. IP地址点分十进制转化为二进制以字符串的形式输出
  2. 学习Python你必须了解的lenna小姐姐
  3. 软件_可用rtmp直播地址20200517
  4. t9.php,TPHP框架
  5. PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
  6. 南方cass快捷键命令修改在哪_南方CASS操作快捷命令
  7. 8uftp怎么使用,小编教你8uftp怎么使用
  8. 51单片机与蓝牙模块连接
  9. 文章翻译-在线文章翻译软件支持批量导入翻译
  10. Java中的拦截器和过滤器有什么区别