0
我有一個對稱的1D numpy的陣列,例如,像這樣:如何將一維數組轉換爲對稱三維數組?
0 1 2 1 0
我怎麼會變成一個3D陣列(有點類似於高斯內核),在中心值2?
由於我的意思(雖然數學很可能不是正確的)爲例,在2D,這將是這樣的(雖然我需要它是3D):
0 0 0 0 0
0 0.5 1 0.5 0
0 1 2 1 0
0 0.5 1 0.5 0
0 0 0 0 0
我有一個對稱的1D numpy的陣列,例如,像這樣:如何將一維數組轉換爲對稱三維數組?
0 1 2 1 0
我怎麼會變成一個3D陣列(有點類似於高斯內核),在中心值2?
由於我的意思(雖然數學很可能不是正確的)爲例,在2D,這將是這樣的(雖然我需要它是3D):
0 0 0 0 0
0 0.5 1 0.5 0
0 1 2 1 0
0 0.5 1 0.5 0
0 0 0 0 0
承認,這是不高斯核,這裏是你如何計算它:
center = a[a.size // 2]
(a[:, np.newaxis].repeat(a.size, axis=1) * a)\
[:, :, np.newaxis].repeat(a.size, axis=2) * a \
/center ** 2
(不是要去這裏貼全輸出)
供參考:* *高斯*內核是一個非常具體的事情。你的數據不是高斯內核。 –