畳み込みは重ねてずらして足す

片方の信号を反転し、ずらしながら重ねて掛けて足す。その合計が出力の1点になる (f∗g)[n]=Σ f[m]·g[n−m] を体感します。

0
ずらし量 n
重なりの積の和(この点の出力)
出力の最大値
上: 入力 f[m](青)と 反転してずらしたカーネル g[n−m](紫)/重なり=積(橙) 下: 出力 (f∗g)[n](緑)
畳み込みは「反転(flip)→ ずらす(slide)→ 掛けて足す(multiply & sum)」の3手順をくり返すだけの操作です。
カーネル g を左右反転して位置 n までずらし、入力 f重なった所どうしを掛けて全部足す。その1つの合計値が、出力 (f∗g) の位置 n での値になります。
ずらし量 n を1つ動かすたびに出力が1点ずつ描かれます。これが連続/離散の畳み込みの定義そのもの(ディープラーニングの2D画像カーネルもこの拡張です)。

いま何が起きている?

ここがポイント