- Бикубическая интерполяция
-
Бикубическая интерполяция — в вычислительной математике расширение кубической интерполяции на случай функции двух переменных, значения которой заданы на двумерной регулярной сетке. Поверхность, полученная в результате бикубической интерполяции является гладкой функцией, в отличие от поверхностей, полученных в результате билинейной интерполяции или интерполяции методом ближайшего соседа. Также бикубическая интерполяция часто используется в обработке изображений, давая более качественное изображение по сравнению с билинейной интерполяцией. В случае бикубической интерполяции значение функции в искомой точке вычисляется через ее значения в 16-ти соседних точках. При использовании приведённых ниже формул для программной реализации бикубической интерполяции следует помнить, что значения и являются относительными, а не абсолютными. Например, для пикселя с координатами . Для получения относительных значений координат необходимо округлить вещественные координаты вниз, и вычесть полученные числа из вещественных координат.
- , где
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
Подобным образом можно использовать и другие виды интерполяции, вычисляя значения функции по соседним точкам, но качество этих формул хуже чем бикубической интерполяции.
Бикубическая интерполяция сплайнами
Допустим, что необходимо интерполировать значение функции в точке , лежащей внутри квадрата , и известно значение функции в шестнадцати соседних точках . Тогда общий вид функции, задающей интерполированную поверхность, может быть записан следующим образом:
Для нахождения коэффициентов необходимо подставить в вышеприведенное уравнение значения функции в известных шестнадцати точках. Например:
.
Полностью в матричном виде:
,
где
,
,
.
Решая получившуюся систему линейных алгебраических уравнений, можно найти значения в явном виде:
.
Единожды найденные коэффициенты теперь могут быть использованы для многократного вычисления интерполированного значения функции в произвольных точках квадрата .
Последовательная кубическая интерполяция
Другая интерпретация метода заключается в том, что для нахождения интерполированного значения можно сначала произвести кубическую интерполяцию в одном направлении, а затем в другом.
Для функции с известными значениями , , , можно построить кубический сплайн: , или в матричном виде
,
где
,
.
Таким образом, для нахождения интерполированного значения в квадрате можно сначала рассчитать четыре значения , , , для зафиксированного , затем через полученные четыре точки построить кубический сплайн, и этим завершить вычисление :
См. также
Категории:- Интерполяция
- Цифровая обработка изображений
Wikimedia Foundation. 2010.