卷積計算器

計算兩個數值序列的離散線性卷積,用於訊號處理與數學分析。

離散卷積
請輸入各個有限序列,數字之間以逗號分隔。

關於卷積

卷積將兩個序列組合起來,描述一種模式如何改變、濾除或重疊於另一種模式。對有限離散序列而言,每個輸出樣本都是一個序列沿另一個序列滑動時,對應乘積的總和。若第一個序列長度為 m,第二個長度為 n,完整線性卷積的長度為 m + n - 1。本計算器執行完整運算,依最早至最晚重疊的順序顯示樣本。 卷積廣泛應用於數位訊號處理。當系統為線性非時變系統時,取樣輸入訊號與系統脈衝響應的卷積即為系統輸出。音訊等化器、平滑濾波器、回聲模型、影像卷積核及通訊通道都使用這個概念。在機率中,卷積也能求出獨立隨機變數總和的分布;多項式乘法同樣採用逐係數運算的模式。 計算某個輸出樣本時,將索引相加等於該樣本索引的值配對,逐對相乘後加總。兩端附近只有少數數值重疊,中間則有更多數值參與。計算器接受整數、小數與負數,無須特殊記號即可模擬多種實際有限訊號。此處計算的是線性卷積,而非循環卷積;循環卷積會依固定週期將索引繞回,結果可能不同。 卷積符合交換律,因此交換兩個輸入序列不會改變輸出。它也符合結合律與分配律,讓串接濾波器及分解系統的分析更容易。只有一個值為一的樣本的單位脈衝,是卷積的單位元素:任何序列與它卷積,都會得到原序列。將任一輸入乘上某個倍率,所有輸出也會乘上相同倍率。 顯示的結果可作為課堂練習、快速濾波器檢查或手算核對的完整樣本清單。很長的序列通常採用快速傅立葉轉換處理,但對此處常見的短序列而言,直接加總清楚且可靠。請保持樣本順序一致;若零代表有意義的延遲,務必明確輸入。

卷積範例

輸入序列輸出序列解讀
[1, 2, 3] 與 [1, 1][1, 3, 5, 3]兩個樣本的移動加總
[1, 0, 2] 與 [2, 1][2, 1, 4, 2]包含零值樣本的序列
[2, -1] 與 [3, 4][6, 5, -4]支援帶正負號的數值

如何計算卷積

  1. 依樣本順序輸入第一個序列,各數字以逗號分隔。
  2. 以相同的逗號分隔格式輸入第二個序列。
  3. 選取「計算卷積」,將每個有效重疊位置的乘積加總。
  4. 由左至右閱讀完整輸出序列。

常見問題

這個計算器執行哪種卷積?

它對兩個有限序列執行完整離散線性卷積,不會像循環卷積一樣將樣本繞回。

為什麼輸出比任一輸入都長?

長度為 m 的序列與長度為 n 的序列卷積,會產生 m + n - 1 個樣本。額外樣本代表兩端的部分重疊。

可以輸入負數與小數嗎?

可以。每個逗號分隔項目都可為有限整數或小數,包括負值。輸出僅為抑制無意義的浮點雜訊而進行四捨五入。

輸入先後順序有影響嗎?

沒有。卷積符合交換律,交換第一與第二個序列會得到相同結果。內部滑動過程的解釋會改變,但數值輸出不變。

卷積和相關運算一樣嗎?

不一樣。相關運算衡量不同位移下的相似程度,對序列反轉或取共軛的處理通常不同。卷積主要用於將輸入與系統響應或卷積核結合。