Jump to content

Кубический сплайн Эрмита

(Перенаправлено со сплайна Catmull-Rom )

В численном анализе кубический сплайн Эрмита или кубический интерполятор Эрмита представляет собой сплайн третьей степени, , каждая часть которого представляет собой полином заданный в форме Эрмита , то есть его значениями и первыми производными в конечных точках соответствующего интервала области значений . [1]

Кубические сплайны Эрмита обычно используются для интерполяции числовых данных, заданных при заданных значениях аргументов. , чтобы получить непрерывную функцию . Данные должны состоять из желаемого значения функции и производной в каждом . (Если указаны только значения, производные необходимо оценить по ним.) Формула Эрмита применяется к каждому интервалу отдельно. Полученный сплайн будет непрерывным и будет иметь непрерывную первую производную.

Кубические полиномиальные сплайны можно задать другими способами, кубик Безье наиболее распространенным из которых является . Однако эти два метода предоставляют один и тот же набор сплайнов, и данные можно легко преобразовать между формами Безье и Эрмита; поэтому имена часто используются так, как если бы они были синонимами.

Кубические полиномиальные сплайны широко используются в компьютерной графике и геометрическом моделировании для получения кривых движения или траекторий , проходящих через заданные точки плоскости или трехмерного пространства . В этих приложениях каждая координата плоскости или пространства отдельно интерполируется кубической сплайн-функцией отдельного параметра t . Кубические полиномиальные сплайны также широко используются в приложениях структурного анализа, таких как теория балок Эйлера – Бернулли . Кубические полиномиальные сплайны также применялись для анализа смертности. [2] и прогнозирование смертности. [3]

Кубические сплайны можно расширить до функций двух или более параметров несколькими способами. Бикубические сплайны ( бикубическая интерполяция ) часто используются для интерполяции данных в регулярной прямоугольной сетке, таких как пикселей значения в цифровом изображении или данные о высоте на местности. Бикубические участки поверхности , определяемые тремя бикубическими сплайнами, являются важным инструментом в компьютерной графике.

Кубические сплайны часто называют csplines , особенно в компьютерной графике. Сплайны Эрмита названы в честь Чарльза Эрмита .

Интерполяция на одном интервале

[ редактировать ]

Единичный интервал [0, 1]

[ редактировать ]
Четыре базисные функции Эрмита. Интерполянт в каждом подинтервале представляет собой линейную комбинацию этих четырех функций.

На единичном интервале , учитывая отправную точку в и конечная точка в с начальной касательной в и конечная касательная в полином может быть определен как где t ∈ [0, 1].

Интерполяция на произвольном интервале

[ редактировать ]

Интерполяция в произвольном интервале осуществляется путем сопоставления последнего с посредством аффинной (степени-1) замены переменной. Формула где , и относится к базисным функциям, определенным ниже . Обратите внимание, что значения касательных были масштабированы по по сравнению с уравнением на единичном интервале.

Уникальность

[ редактировать ]

Указанная выше формула обеспечивает уникальный полиномиальный путь третьей степени между двумя точками с заданными касательными.

Доказательство. Позволять — два полинома третьей степени, удовлетворяющие заданным граничным условиям. Определять затем:

Поскольку оба и являются полиномами третьей степени, является полиномом не более третьей степени. Так должно быть вида Вычисление производной дает

Мы знаем, кроме того, что

( 1 )
( 2 )

Сложив ( 1 ) и ( 2 ), получаем, что , и поэтому таким образом

Представительства

[ редактировать ]

Мы можем записать интерполяционный полином как где , , , являются базисными функциями Эрмита.Их можно записать по-разному, каждый из которых раскрывает разные свойства:

расширенный факторизованный Бернштейн

В «развернутом» столбце показано представление, использованное в приведенном выше определении.Столбец «факторизованный» сразу показывает, что и на границах равны нулю.Далее вы можете сделать вывод, что и иметь нуль кратности 2 в 0, и и имеют такой ноль в 1, поэтому на этих границах они имеют наклон 0.В столбце «Бернштейн» показано разложение базисных функций Эрмита на полиномы Бернштейна третьего порядка:

Используя эту связь, вы можете выразить кубическую интерполяцию Эрмита через кубические кривые Безье относительно четырех значений. и делаем интерполяцию Эрмита с помощью алгоритма де Кастельжо .Он показывает, что в кубическом патче Безье две контрольные точки в середине определяют касательные интерполяционной кривой в соответствующих внешних точках.

Мы также можем записать полином в стандартной форме как где контрольные точки и касательные являются коэффициентами. Это позволяет эффективно оценивать полином при различных значениях t, поскольку постоянные коэффициенты можно вычислить один раз и использовать повторно.

Интерполяция набора данных

[ редактировать ]

Набор данных, для , можно интерполировать, применив описанную выше процедуру к каждому интервалу, где касательные выбираются разумным образом, что означает, что касательные для интервалов, имеющих общие конечные точки, равны. Тогда интерполированная кривая состоит из кусочно-кубических сплайнов Эрмита и глобально непрерывно дифференцируема по .

Выбор касательных не уникален, доступно несколько вариантов.

Конечная разница

[ редактировать ]
Пример с касательными в конечной разности

Самый простой выбор — разница в три пункта, не требующая постоянной длины интервала:

для внутренних точек и односторонняя разница в конечных точках набора данных.

Кардинальный сплайн

[ редактировать ]
Пример кардинального сплайна в 2D. Линия представляет собой кривую, а квадраты представляют собой контрольные точки. . Обратите внимание, что кривая не достигает первой и последней точек; однако эти точки влияют на форму кривой. Используемый параметр натяжения составляет 0,1.

Кардинальный сплайн , иногда называемый каноническим сплайном . [4] получается [5] если

используется для вычисления тангенсов. Параметр c — это параметр натяжения , который должен находиться в интервале [0, 1] . В каком-то смысле это можно интерпретировать как «длину» касательной. Выбор c = 1 дает все нулевые касательные, а выбор c = 0 дает сплайн Катмулла – Рома в случае равномерной параметризации.

Сплайн Катмулла – Рома

[ редактировать ]
Геометрическая интерпретация кубической интерполяции Катмулла – Рома черной точки с равномерно расположенными абсциссами. [6]

Для касательных, выбранных в качестве

сплайна . получен сплайн Катмулла–Рома, являющийся частным случаем кардинального Это предполагает равномерное расстояние между параметрами.

Кривая названа в честь Эдвина Кэтмалла и Рафаэля Рома . Основное преимущество этого метода заключается в том, что точки исходного набора точек также являются контрольными точками сплайновой кривой. [7] На обоих концах кривой требуются две дополнительные точки. Единая реализация Catmull-Rom может создавать циклы и самопересечения. Хордальная и Катмулла – Рома. центростремительная реализации [8] решите эту задачу, но используйте немного другой расчет. [9] В компьютерной графике сплайны Катмулла-Рома часто используются для получения плавного интерполированного движения между ключевыми кадрами . Например, большинство анимаций траектории камеры, созданных на основе дискретных ключевых кадров, обрабатываются с помощью сплайнов Catmull-Rom. Они популярны главным образом потому, что их относительно легко вычислить, они гарантируют точное попадание в каждую позицию ключевого кадра, а также гарантируют, что касательные сгенерированной кривой непрерывны на нескольких сегментах.

Сплайн Кочанека – Бартельса

[ редактировать ]

Сплайн Кочанека – Бартельса представляет собой дальнейшее обобщение того, как выбирать касательные с учетом точек данных. , и , с тремя возможными параметрами: напряжением, смещением и параметром непрерывности.

Монотонная кубическая интерполяция

[ редактировать ]

набора данных используется кубический сплайн Эрмита любого из перечисленных выше типов для интерполяции монотонного Если , интерполируемая функция не обязательно будет монотонной, но монотонность можно сохранить путем регулировки тангенсов.

Интерполяция на единичном интервале с совпадающими производными в конечных точках

[ редактировать ]

Рассмотрим единую координату точек и как значения, которые функция f ( x ) принимает в целочисленных ординатах x = n - 1, n , n + 1 и n + 2,

Кроме того, предположим, что касательные в конечных точках определяются как центрированные разности соседних точек:

Чтобы оценить интерполированное значение f ( x ) для действительного x , сначала разделите x на целую часть n и дробную часть u :

где обозначает функцию пола , которая возвращает наибольшее целое число, не превышающее x .

Тогда сплайн Катмулла–Рома будет [10] где обозначает транспонирование матрицы . Нижнее равенство изображает применение метода Горнера .

Эта запись актуальна для трикубической интерполяции , где одна оптимизация требует вычисления CINT u шестнадцать раз с одинаковыми u и разными p .

См. также

[ редактировать ]
  1. ^ Эрвин Крейциг (2005). Высшая инженерная математика (9-е изд.). Уайли. п. 816. ИСБН  9780471488859 .
  2. ^ Стивен Ричардс (2020). «Сплайновая модель Эрмита послепенсионной смертности». Скандинавский актуарный журнал . Тейлор и Фрэнсис: 110–127. дои : 10.1080/03461238.2019.1642239 .
  3. ^ Сиксиан Тан, Джеки Ли и Леони Тикл (2022). «Сплайновый подход Эрмита для моделирования смертности населения». Анналы актуарной науки . Издательство Кембриджского университета: 1–42. дои : 10.1017/S1748499522000173 .
  4. ^ Петцольд, Чарльз (2009). «Канонические сплайны в WPF и Silverlight» .
  5. ^ «Кардинальные сплайны» . Сеть разработчиков Microsoft . Проверено 27 мая 2018 г.
  6. ^ Кубическая интерполяция не уникальна: эта модель, использующая сплайн Катмулла-Рома и базисные полиномы Лагранжа, проходит через все четыре точки. Примечание. Если черная точка находится слева от желтой точки, расстояние по горизонтали желтого будет отрицательным; если черная точка находится справа от зеленой точки, зеленое расстояние по горизонтали отрицательное.
  7. ^ Кэтмалл, Эдвин ; Ром, Рафаэль (1974), «Класс локальных интерполирующих сплайнов», в Барнхилле, РЭ; Ризенфельд, РФ (ред.), Компьютерное геометрическое проектирование , Нью-Йорк: Academic Press, стр. 317–326.
  8. ^ Н. Дин, М.С. Флоатер и К. Хорманн. Подразделение кривой по четырем точкам на основе повторяющихся хордальных и центростремительных параметризаций. Компьютерное геометрическое проектирование, 26(3):279–286, 2009.
  9. ^ П. Дж. Барри и Р. Н. Голдман. Алгоритм рекурсивного вычисления для класса сплайнов Катмулла-Рома. SIGGRAPH Компьютерная графика, 22 (4): 199–204, 1988.
  10. ^ Две иерархии сплайн-интерполяций. Практические алгоритмы для многомерных сплайнов высшего порядка .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ccabbd9a55a886aedd9035a6b4faa0c0__1713475200
URL1:https://arc.ask3.ru/arc/aa/cc/c0/ccabbd9a55a886aedd9035a6b4faa0c0.html
Заголовок, (Title) документа по адресу, URL1:
Cubic Hermite spline - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)