matlab中conv函式的使用和理解
阿新 • • 發佈:2021-01-12
目錄
一、conv()的基本使用方法
conv 計算 卷積和多項式乘法
w = conv(u,v) 返回向量 u 和 v 的卷積。如果 u 和 v 是多項式係數的向量,對其卷積與將這兩個多項式相乘等效。
w = conv(u,v,shape) 返回如 shape 指定的卷積的分段。例如,conv(u,v,‘same’) 僅返回與 u 等大小的卷積的中心部分,而 conv(u,v,‘valid’) 僅返回計算的沒有補零邊緣的卷積部分。
示例:pandas 是基於NumPy 的一種工具,該工具是為了解決資料分析任務而建立的。
二、conv()使用的一些例子
1.多項式的計算
就是那種正常的多項式運算,通過矩陣表示係數,返回運算結果。
如現在要運算(x+2)*(x+3),可採用如下程式碼
u=[1 3];
v=[1 2];%行向量表示
y=conv(u,v)
結果y=[1 5 6]
同樣也可以利用這個函式進行更加複雜的運算。
2.向量卷積
建立兩個向量並求其卷積。
向量的卷積是什麼????
給定兩個n維向量α=(a0, a1, …, an-1)T,β=(b0, b1, …, bn-1)T,則α與β的卷積運算定義為:α*β=(c0, c1, …, c2n-2)T,其中
其實向量的卷積也就類似多項式的乘法,這裡的話,假定為兩個多項式相乘,從行看上去,就是對應的系統,從x的零次方到x的n-1次方。
u = [1 2 3];
v = [1 2 3]; %其中w的長度是u和v長度相加減1
w = conv(u,v)
w =1 4 10 12 9
總結
兩個向量 u 和 v 的卷積,表示 v 滑過 u 時依據這些點確定的重疊部分的面積。從代數方法上講,卷積是與將其係數為 u 和 v 元素的多項式相乘相同的運算.