B-сплайн
B-сплайн — сплайн-функция, имеющая наименьший носитель для заданной степени, порядка гладкости и разбиения области определения. Фундаментальная теорема устанавливает, что любая сплайн-функция для заданной степени, гладкости и области определения может быть представлена как линейная комбинация B-сплайнов той же степени и гладкости на той же области определения.[1] Термин B-сплайн был введён И. Шёнбергом и является сокращением от словосочетания «базисный сплайн».[2] B-сплайны могут быть вычислены с помощью алгоритма де Бура, обладающего устойчивостью.
В системах автоматизированного проектирования и компьютерной графике термин B-сплайн часто описывает сплайн-кривую, которая задана сплайн-функциями, выраженными линейными комбинациями B-сплайнов.
Определение
[править | править код]Когда узлы равноудалены друг от друга, говорят, что B-сплайн является однородным, в противном случае его называют неоднородным
Замечания
[править | править код]Когда количество узлов совпадает со степенью сплайна, B-сплайн вырождается в кривую Безье. Форма базисной функции определяется расположением узлов. Масштабирование или параллельный перенос базисного вектора не влияет на базисную функцию.
Сплайн содержится в выпуклой оболочке его опорных точек.
Базисный сплайн степени n
не обращается в нуль только на промежутке [ti, ti+n+1], то есть
Другими словами, изменение одной опорной точки влияет только на локальное поведение кривой, а не на глобальное, как в случае кривых Безье.
Базисная функция может быть получена из полинома Бернштейна
P-сплайн
[править | править код]P-сплайн является модификацией B-сплайна и отличается использованием штрафной функции. Её введение позволяет использовать B-сплайновое сглаживание с весовыми коэффициентами для подгонки кривой в сочетании с дополнительным повышением гладкости и исключением переобучения на основе штрафной функции[3].
См. также
[править | править код]Ссылки
[править | править код]- Interactive java applets for B-splines
- B-spline on MathWorld
- Module B-Splines by John H. Mathews
- BSpline Java Applet by Stefan Beck (with C++ Source) Архивная копия от 19 декабря 2007 на Wayback Machine
Примечания
[править | править код]- ↑ Carl de Boor. A Practical Guide to Splines (неопр.). — Springer-Verlag, 1978. — С. 113—114.
- ↑ Carl de Boor. A Practical Guide to Splines (неопр.). — Springer-Verlag, 1978. — С. 114—115.
- ↑ Eilers, P.H.C. and Marx, B.D. (1996). Flexible smoothing with B-splines and penalties (with comments and rejoinder). Statistical Science 11(2): 89-121.
Литература
[править | править код]- Роджерс Д.,Адамс Дж. Математические основы машинной графики. — М.: Мир, 2001. — ISBN 5-03-002143-4.
- Корнейчук, Н. П., Бабенко, В. Ф., Лигун, А. А. Экстремальные свойства полиномов и сплайнов / отв. ред. А. И. Степанец; ред. С. Д. Кошис, О. Д. Мельник, АН Украины, Ин-т математики. — К.: Наукова думка, 1992. — 304 с. — ISBN 5-12-002210-3.
В другом языковом разделе есть более полная статья B-spline (англ.). |
Это заготовка статьи по математике. Помогите Википедии, дополнив её. |