定義
卷積的定義
理解
在打游戲的時(shí)候麸粮,假設(shè)你對(duì)敵方英雄造成了一次攻擊。攻擊的效果是镜廉,地方英雄會(huì)在接下來(lái)5秒內(nèi)持續(xù)增長(zhǎng)的掉血弄诲。每秒掉血分別為1 2 3 4 5;那么你在0秒的時(shí)候攻擊了一下敵方英雄娇唯,敵方英雄的掉血情況為:
image
抽象一下齐遵。假設(shè)x[k]是一個(gè)單位信號(hào)(一次攻擊),即僅當(dāng)k=0時(shí)x(k) = 1.假設(shè)把這個(gè)信號(hào)輸入到一個(gè)系統(tǒng)里面得到的響應(yīng)為h[n]:
image
同樣塔插,假設(shè)你在第2秒對(duì)地方英雄進(jìn)行了攻擊梗摇,則敵方英雄會(huì)在地2-7秒持續(xù)掉血。
由于攻擊不是在第0秒想许,而是在第二秒伶授,因此,產(chǎn)生傷害也是從第二秒開始流纹。使用函數(shù)位移的想法了解釋糜烹,則本來(lái)第0秒產(chǎn)生的傷害右移了兩個(gè)單位,變成了h[n-2]:
image
那么漱凝,如果第0秒和第2秒都進(jìn)行了攻擊疮蹦,傷害是怎樣的呢?當(dāng)然是第0秒的傷害加上第2秒的傷害茸炒,即:
image
那么愕乎,對(duì)于任意形式的攻擊x[k]阵苇,很容易推廣到,產(chǎn)生的傷害y[n]計(jì)算方法為:
image
這就是卷積的公式感论。解釋很簡(jiǎn)單慎玖,就是對(duì)任意的攻擊x[k],產(chǎn)生的傷害就是笛粘,把所有k時(shí)刻的攻擊產(chǎn)生的傷害h[n-k]都疊加起來(lái)了趁怔。
那么,如果我想知道薪前,對(duì)與任意的攻擊方式润努,敵方英雄某一秒(比如第3秒)受到的傷害是怎樣的呢?
即示括,對(duì)于輸入x[k]铺浇,任意一個(gè)y[n]點(diǎn)的傷害是怎樣的呢?
image
我把不同k時(shí)候的關(guān)于n的函數(shù)h[n-k]全部畫出來(lái)垛膝。如上圖中不同的縱軸表示鳍侣。那第三秒敵方英雄收到的傷害y[3]等于x(0) h(3)+ x(1) h(3-1)+ x(2) h(3-2)+ x(3) h(3-3).
針對(duì)離散信號(hào) 卷積就是線性組合
卷積y[n] = x[n] * h[n],可以理解為吼拥,將y[n]分為不同的 分量為h[n-k]倚聚、系數(shù)為x[k]的線性組合。也就是說凿可,y[n]是一系列關(guān)于h[n]移位后的h[n-k]惑折,每個(gè)函數(shù)h[n-k]乘上特定的系數(shù)x[k] 組合而成的函數(shù)。這種 “用一組函數(shù)進(jìn)行線性組合得到目標(biāo)函數(shù)”的理念枯跑,在傅里葉分析中也有應(yīng)用:將原始信號(hào)y[n],分為一系列諧波信號(hào)e^(jkwn)的函數(shù)的線性組合惨驶。
到這里會(huì)發(fā)現(xiàn),卷積和傅里葉分析的一個(gè)相同的理念:
用不同的函數(shù)的線性組合敛助,表示原信號(hào)粗卜。
傅里葉分析用的是不同的正弦函數(shù)的線性組合;
而卷積纳击,用的是h[n]移位不同的k得到的一系列h[n-k]的線性組合续扔。
卷積的應(yīng)用
應(yīng)用
再舉例理解
image.png
image.png
image.png
image.png
image.png
image.png
References:
https://www.zhihu.com/question/22298352
https://www.zhihu.com/question/22298352/answer/257790355