我对卷积的理解

本文深入浅出地介绍了卷积的概念,从一维卷积的数学定义、直观解释、例子分析到二维卷积的应用,揭示了卷积在图像处理中的核心——反转、移动、乘积和求和。通过药效衰减的例子帮助理解一维卷积的计算过程,并探讨了在实际应用中的卷积核特点。
摘要由CSDN通过智能技术生成

文章分为几个部分:1.卷积的通俗解释 2.卷积的直观理解 3.翻转的由来及其意义 4.其他解释 5.二维拓展

首先上最基础的公式 y(t) = x(t) * h(t)

1.变量解释

y(t)是将x(t)信号输入h(t)系统得出来的输出。

信号:所有东西都可以当做信号,暂且认为是时间函数

h(t)是什么,是系统的单位冲激响应,什么是单位冲激响应?就是各个时刻对这个系统单位采样的叠加。什么是单位,举个例子,别人打你了,你说你很疼,肯定各个时刻痒的程度不同,有时候不疼,有时候有点疼,有时候特别疼,这是文字表述,如果想准确表达出来,就得进行量化,量化得有个标准,什么是1什么是2,当然还有0(不疼就是0),那现在就可以把“啊,疼”定义为1,有点疼表示成0.4,特别疼表示成2,之后根据感受定义值,那各个时刻整个疼的感受过程下来就是一个系统。没打之前不疼,时间久了不疼,中间这段时间就是有效的过程,就是有效的系统。那单位冲激响应跟这有啥关系,啥是单位冲激?啥是冲激?就是啪给的你那一巴掌,可能让你特别疼,也可能他在逗你,你没觉得疼,单位冲激就是让你“啊,疼”的那一巴掌。单位冲激响应,就可以理解成从“啊,疼”到不疼的这个过程,其他不疼的过程也属于这个系统,但是由于响应值是0,就不予考虑了。

接下来就简单了,x就是打你,打一下,那是冲激,一直打,那就是x(t)了。x(t)可以分解成所有时刻的冲激的叠加。

打了你,或者是持续打,你最终在某一时刻t的疼的感受就是y(t)

线性时不变系统,就是不管什么时候,打你的力道相同,那你的疼的感受变化过程也相同。

接下来,从生活中抽象出来的数学来了。

2.接下来,我觉得知乎用户@林扬飞写的很好,照抄了。

总之就是,单位冲激响应的加权时延叠加。

链接:https://www.zhihu.com/question/22298352/answer/27993829

  • 响应
既然已经把系统抽象成这么一个接受输入,产生输出的“黑盒子”。那么,我们研究这个“黑盒子”特性一个很重要的办法就是给这个系统一个输入,然后去测量系统的输出是怎样的,进而分析出系统的特性。通常是在t=0时刻,往系统的输入断加入一个记为  \delta (t) 单位冲激信号:

测得系统的响应为:

类似于敲锣的例子,敲打锣面就是上面第一幅图所示的冲激信号,锣面发生振动的幅度就如同上面第二幅图所示。通过这种方法反映了系统的特性,如果用一个输入-输出对应的函数来表示系统,上面这个图形对应的函数就称为系统函数。当然,实际的系统输入并不是一个的单位冲激信号这么简单,但无论多么复杂的输入信号,我们都可以将其分解为一个个连续的冲激信号,下面3幅图就分别显示了t=0s,t=0.2s,t=0.4s时给系统输入单位冲激信号,系统的响应:
由于3个单位冲激信号有0.2s的延时,因此系统的3个响应图形也响应有0.2s的延时,最后我们将蓝、红、绿3个响应图形相加起来就得到了3个单位冲激信号通过系统的输出:
由于3个单位冲激信号有0.2s的延时,因此系统的3个响应图形也响应有0.2s的延时,最后我们将蓝、红、绿3个响应图形相加起来就得到了3个单位冲激信号通过系统的输出:
  • 卷积
前面所讲从系统的抽象以及系统的响应都是概念性的,那么系统输入和输出的数值具体怎么计算,这时卷积就派上用场了。卷积可以理解为一种计算系统输入和输出数值的工具,用符号'*'表示卷积,那么就得到关系式:输入*系统=输出。上面的图2在t=0.4s时的数值,是由图1中蓝、红、绿分别对应的3个单位冲激响应相加得来,蓝、红、绿3个信号进入系统的时间分别为:t=0s,t=0.2s,t=0.4s,仔细观察,在图1中3个冲激信号对应系统响应的值分别为系统响应在t=0.4s,t=0.2s,t=0s的值,对应的时间顺序刚好相反,这就揭示的卷积的计算方法: 翻转、平移、相乘、积分(或求和)。归纳的讲,t时刻卷积的值就是t时刻以及t时刻之前信号对系统产生响应值的总和。
3. 既然可以像上述过程一样解释卷积,那为什么卷积的运算过程少不了翻转这一步?接下来就谈翻转。仍然照搬,可以只看第一部分,其他部分就看着玩就好了。
总之,就是现在以及之前时刻响应的叠加,翻转也屏蔽了之后的输入的响应,叠加的是,当前时刻造成的立即影响,以及之前时刻造成的后续影响。
作者:林麦
链接:https://www.zhihu.com/question/22298352/answer/24525594
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

最近复习看到卷积这块儿,说说我的理解。
如果随便给你两个函数让你算卷积,其实没什么具体意义,就是用某种规则实现某种运算而已。如果要探究物理意义,那么最好把它放到一个因果稳定的系统(就是从零之后才有值,而且收敛的那种)中,从单位冲击响应h(t)来看。我们都知道,将给定的一个函数x(t)与系统的h(t)卷积,得到的就是输出y(t),这利用了LSI系统满足的叠加定理。下面解释为什么卷积一下子就是输出。
(1)对h(t)的一种理解是:它表征影响因子。所谓影响因子就是你给了一个输入,它在不同时间产生的影响力大小。首先要明白,当我们算某个时刻的响应的时候,它不仅与这个时刻的输入有关,还与之间所有在这个时刻存在影响因子的输入有关。例如,我们要求t=4时刻的输入y(4),那么
y(4)=x(4)h(0)+x(3)h(1)+x(2)h(2)+x(1)h(3)+x(0)h(4),注意,这个式子是错误的,正确的应该是无数时刻的积分,这里只领会精义就行了。看下面的图,相同颜色的是对应的输入与对应在t=4时刻的影响因子,x(4)当然对应的影响因子最大为h(0),x(3)对应的影响因子就相对小了为h(1),····x(0)对应的影响因子最小为h(4).它正好就是h(-t+4),就是反褶后右移4。为什么要反褶呢,因为隔着t=4越近的输入对应的影响因子在h(t)中隔的t=4越远,而且从上面的式子也能看出,括号里对应时刻的和为4,正好也是平移的大小。
所以说,卷积的工程意义就是指示了某个系统的响应特性,也就是在某时刻给个输入delta(t),它接下来会做出什么反应,反应持续多久,h(t)就表征了这些,也就是在不同时刻的影响因子。
(2)以前有个讲卷积的例子还不错。比如你一次性打一个人50大板,估计他就over了,而如果分五年打完这50大板,估计他还能活蹦乱跳的(当然不排除他由于心理恐惧提前崩溃了)。为什么呢,这还是影响因子的问题。当你一次性打完的时候,几乎所有的都在以最大的影响因子叠加,超过了他的最大抗打能了,系统崩溃。当你分五年打完的时候,每次他去受打的时候,以前的伤已经痊愈了,不再有影响因子,当然在他的抗打能力之内。其实你在发送信息的时候也一样,如果隔老长时间发一个符号,解调的时候轻松多了,因为前面的对它基本没有干扰了。但是代价是可想而知的,就像求县老爷五年内打完你五十大板的难度一样。
(3)有个事儿做工程的时候一定要明白,就是你想算某个时刻,不能单看某个时刻,还得看它的前前后后。比如通信原理里讲到的码间串扰,你会发现前面无数个时刻的拖尾在影响着你算的时刻,好在抽样函数有个很好的特性就是它在kπ处有零点而且它有对称性,这样可以通过恰当的设计,抽样
解调出来。这种特性也有它好的一面,例如抽样恢复的内插函数就是利用了许多个这样的抽样函数的叠加。其实这可以看成是相关性,预测编码的时候就是利用前面的影响预测出下一刻的输出···
(4)我之前用matlab求卷积的时候特别不理解为什么conv函数都默认从t=0开始,而无法给出输入序列的位置信息也不让你输入序列的位置信息。这么牛的一帮人为啥就不写个适应性强点儿的卷积函数呢。后来我明白了,因为我们工程上做的因果系统,所以h(t)必然是从0开始有值的,而你的输入也是从0开始的,所以默认当然就是从t=0开始的啊。所以看来只有我们才在这儿无聊地拿着两个没有意义的任意的图让你算卷积,然后老师就开始‘先反褶其中一个,再平移其中一个,求它们重叠部分的面积’,哎,只会做题不求甚解,中国的教育说多了都是泪啊~

4.其他解释,恩,兼听则明。其中(1)可以说是最系统的清楚的解释
(1)作者:李泽光
链接:https://www.zhihu.com/question/22298352/answer/82254420
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
式(3.5-23)中的单位冲激响应h(t)出现了反褶,这与图3.5-4不符,图3.5-4中的每个加权的h(t)都没有反褶,所以,公式(3.5-23)与可实现的物理系统不符。另外,为了更全面一些,我们再看看离散系统:

信号反褶是这样的:信号波形是我们按着信号脉冲出现的先后顺序记录下来的,所以信号波形的左边先出现,而信号反褶恰恰说明哪个信号脉冲先来,则这个脉冲就先进入系统,但是,在计算机上用软件进行科学计算时可以将系统单位冲激响应进行反褶,相应的,此系统可以看成非因果系统。


(2)作者:麦克西奎
链接:https://www.zhihu.com/question/22298352/answer/93200200
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


以上图片转载来自通信人家园论坛,深入浅出通信原理之连载1和2,陈爱军……………通信界的神贴,华为工作20几年的无线专家历时五年写的!!!写得真的非常棒!

5.图像卷积
以下转载自http://mengqi92.github.io/2015/10/06/convolution/
这是我最初看的文章,然后由其引出的一系列问题,让我最后找到了上面的各种解释,每个人理解不一样,希望有用。

我对卷积的理解

banner.jpeg

在学习机器学习和图像处理的过程中,经常会遇到卷积这个概念。我每次遇到这个概念都有点似懂非懂的样子。有时候清楚它的直观解释,但又搞不清公式中是如何体现的。究其原因,还是我没有完全搞懂这个概念。 维基百科上有一个动态图来演示这个概念,但对于我来说还是有些复杂。于是自己在网上找了很多文章来研究,终于有了比较直观的印象,这里就趁热把我理解的解释一下,作为总结。

一、一维卷积

1.1 数学定义

维基百科上,卷积的形式化定义如下:

f(x)g(x)=f(τ)g(xτ)dτ(1) (1)f(x)∗g(x)=∫−∞∞f(τ)g(x−τ)dτ

1.2 直观解释

先来分析一下这个公式:

  1. f(x)g(x) f(x)∗g(x) 表示  f(x) f(x) 和  g(x) g(x) 的卷积,注意此处自变量为  x x
  2. 它是对  (,) (−∞,∞) 区间上对  τ τ 求积分;
  3. 积分对象为两个函数的乘积: f(τ) f(τ) 和  g(xτ) g(x−τ)
  4. 等式右边只有  g(xτ) g(x−τ) 提到了  x x,其他部分都在关注  τ τ

这样一个公式恐怕还是难以理解,接下来将通过一个例子来进行解释。

1.3 例子

试想小明有一段时间每天都要去输液,输的药会在身体里残留直至失效,药效随着时间是不断衰落的。 这里为简便起见,假设药效 4 天就失效,而且药效持续函数是离散的。如下图所示:

药效持续函数

药效持续函数

图中,横坐标为天数,纵坐标为药效。输液当天(day=0)药效为 100%,第二天减弱为 80%,第三天减弱为 40%,第四天减弱为 0。

现在先定义一些符号:
记天数为  t t,每天输液的药量为  m(t) m⁡(t), 药效函数为  eff(t) eff⁡(t),小明身上残留的药效为  rest(t) rest⁡(t)
其中药效函数:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值