Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

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

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

По сравнению с линейной и билинейной интерполяцией [ править ]

Трилинейная интерполяция - это расширение линейной интерполяции , которая работает в пространствах с размерностью , и билинейной интерполяции , которая работает с размерностью , до измерения . Все эти схемы интерполяции используют полиномы 1-го порядка, что дает точность порядка 2, и для этого требуются смежные заранее определенные значения, окружающие точку интерполяции. Существует несколько способов получения трилинейной интерполяции, которая эквивалентна 3-мерной тензорной B-сплайн- интерполяции порядка 1, а оператор трилинейной интерполяции также является тензорным произведением 3-х линейных операторов интерполяции.

Метод [ править ]

Восемь угловых точек на кубе, окружающем точку интерполяции C
Изображение трехмерной интерполяции
Геометрическая визуализация трилинейной интерполяции. Произведение значения в желаемой точке и всего объема равно сумме произведений значения в каждом углу и частичного объема по диагонали напротив угла.

На периодическую и кубической решетке, пусть , и быть различие между каждым из , , и меньше координат , связанный, то есть:

где указывает точку решетки внизу и указывает точку решетки выше и аналогично для и .

Сначала мы выполняем интерполяцию (представьте, что мы «подталкиваем» грань куба, определяемую с помощью, к противоположной грани, определенной с помощью ), получая:

Где означает значение функции. Затем мы интерполируем эти значения ( "проталкивая" от до ), давая:

Наконец, мы интерполируем эти значения (проходя по линии):

Это дает нам прогнозируемое значение для точки.

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

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

Затем мы выполняем линейную интерполяцию между и, чтобы найти , и чтобы найти , и чтобы найти , и чтобы найти .

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

На практике трилинейная интерполяция идентична двух билинейной интерполяции в сочетании с линейной интерполяцией:

Альтернативный алгоритм [ править ]

Альтернативный способ написать решение задачи интерполяции:

где коэффициенты находятся из решения линейной системы

дающий результат

См. Также [ править ]

Внешние ссылки [ править ]

  • псевдокод от НАСА , описывает итеративную обратную трилинейную интерполяцию (учитывая вершины и значение C найти Xd, Yd и Zd).
  • Пол Бурк, Методы интерполяции , 1999. Содержит очень умный и простой метод поиска трилинейной интерполяции, основанный на двоичной логике и который может быть расширен до любого измерения (тетралинейной, пенталинейной, ...).
  • Кенрайт, Деформация тетраэдра произвольной формы. Международный симпозиум по визуальным вычислениям. Springer International Publishing, 2015 [1] .