scipy.signal.
gauss_spline#
- scipy.signal.gauss_spline(x, n)[source]#
階數為 n 的 B 樣條基底函數的 Gaussian 近似。
- 參數:
- xarray_like
節點向量
- nint
樣條的階數。必須是非負數,即 n >= 0
- 返回:
- resndarray
由零均值 Gaussian 函數近似的 B 樣條基底函數值。
註解
B 樣條基底函數可以用零均值 Gaussian 函數很好地近似,其標準差等於 \(\sigma=(n+1)/12\),適用於較大的 n
\[\frac{1}{\sqrt {2\pi\sigma^2}}exp(-\frac{x^2}{2\sigma})\]參考文獻
[1]Bouma H., Vilanova A., Bescos J.O., ter Haar Romeny B.M., Gerritsen F.A. (2007) Fast and Accurate Gaussian Derivatives Based on B-Splines. In: Sgallari F., Murli A., Paragios N. (eds) Scale Space and Variational Methods in Computer Vision. SSVM 2007. Lecture Notes in Computer Science, vol 4485. Springer, Berlin, Heidelberg
範例
我們可以計算由高斯分佈近似的 B 樣條基底函數
>>> import numpy as np >>> from scipy.signal import gauss_spline >>> knots = np.array([-1.0, 0.0, -1.0]) >>> gauss_spline(knots, 3) array([0.15418033, 0.6909883, 0.15418033]) # may vary