scipy.signal.

gauss_spline#

scipy.signal.gauss_spline(x, n)[источник]#

Гауссова аппроксимация базисной функции B-сплайна порядка n.

Параметры:
xarray_like

вектор узлов

nint

Порядок сплайна. Должен быть неотрицательным, т.е. n >= 0

Возвращает:
resndarray

Значения базисных функций B-сплайна, аппроксимированные гауссовой функцией с нулевым средним.

Примечания

Базисную функцию B-сплайна можно хорошо аппроксимировать нуль-средней гауссовской функцией со стандартным отклонением, равным \(\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