Jump to content

Билинейная интерполяция

(Перенаправлено из Билинейной интерполяции )
Пример билинейной интерполяции на единичном квадрате со значениями z 0, 1, 1 и 0,5, как указано. Интерполированные значения между ними представлены цветом.

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

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

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

Вычисление

[ редактировать ]
Четыре красные точки показывают точки данных, а зеленая точка — это точка, в которой мы хотим интерполировать.

Предположим, мы хотим найти значение неизвестной функции f в точке ( x , y ). Предполагается, что мы знаем значение f в четырех точках Q 11 = ( x 1 , y 1 ), Q 12 = ( x 1 , y 2 ), Q 21 = ( x 2 , y 1 ) и Q 22 знак равно ( Икс 2 , у 2 ).

Повторная линейная интерполяция

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

Сначала мы выполняем линейную интерполяцию в направлении x . Это дает

Продолжим интерполяцию в направлении y, чтобы получить желаемую оценку:

Обратите внимание, что мы придем к тому же результату, если интерполяция будет выполнена сначала по направлению y , а затем по направлению x . [1]

Полиномиальная аппроксимация

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

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

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

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

Взвешенное среднее

[ редактировать ]
Геометрическая визуализация билинейной интерполяции. Произведение значения в нужной точке (черный) и всей площади равно сумме произведений значения в каждом углу и частичной площади по диагонали напротив угла (соответствующие цвета).

Решение также можно записать как значение f средневзвешенное ( Q ​​):

где сумма весов равна 1 и удовлетворяет транспонированной линейной системе

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

что упрощается до

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

Альтернативная форма матрицы

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

Объединив вышесказанное, мы имеем

На единичной площади

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

Если мы выберем систему координат, в которой известны четыре точки, в которых f известно: (0, 0), (0, 1), (1, 0) и (1, 1), то формула интерполяции упростится до

или, что то же самое, в матричных операциях:

Здесь мы также узнаем веса:

В качестве альтернативы интерполянт на единичном квадрате можно записать как

где

В обоих случаях количество констант (четыре) соответствует количеству точек данных, в которых f задано .

Характеристики

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

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

Результат билинейной интерполяции не зависит от того, какая ось интерполируется первой, а какая второй. Если бы мы сначала выполнили линейную интерполяцию в направлении y , а затем в направлении x , полученное приближение было бы таким же.

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

Обратное и обобщение

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

В общем, интерполянт принимает любое значение (в выпуклой оболочке значений вершин) в бесконечном количестве точек (образуя ветви гипербол [2] ), поэтому интерполяция необратима.

Однако когда билинейная интерполяция применяется к двум функциям одновременно, например, при интерполяции векторного поля , тогда интерполяция обратима (при определенных условиях). В частности, это обратное можно использовать для нахождения «единичных квадратных координат» точки внутри любого выпуклого четырехугольника (путем рассмотрения координат четырехугольника как векторного поля, которое билинейно интерполируется на единичном квадрате). С помощью этой процедуры билинейную интерполяцию можно распространить на любой выпуклый четырехугольник, хотя вычисление значительно усложняется, если он не является параллелограммом. [3] Результирующая карта между четырехугольниками известна как билинейное преобразование , билинейная деформация или билинейное искажение .

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

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

Очевидное расширение билинейной интерполяции на три измерения называется трилинейной интерполяцией .

Обратные вычисления

Let be a vector field that is bilinearly interpolated on the unit square parameterized by . Inverting the interpolation requires solving a system of two bilinear polynomial equations:where Taking a 2-d cross product (see Grassman product) of the system with a carefully chosen vectors allows us to eliminate terms:which expands towhereThe quadratic equations can be solved using the quadratic formula. We have the equivalent determinants and the solutions(opposite signs are enforced by the linear relation). The cases when or must be handled separately. Given the right conditions, one of the two solutions should be in the unit square.

Применение в обработке изображений

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

В компьютерном зрении и обработке изображений билинейная интерполяция используется для повторной выборки изображений и текстур. Алгоритм используется для сопоставления местоположения пикселя экрана с соответствующей точкой на карте текстуры . Средневзвешенное значение атрибутов (цвет, прозрачность и т. д.) четырех окружающих текселей вычисляется и применяется к пикселю экрана. Этот процесс повторяется для каждого пикселя, образующего текстурируемый объект. [4]

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

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

Билинейная интерполяция рассматривает ближайшее окружение 2 × 2 известных значений пикселей, окружающее вычисленное местоположение неизвестного пикселя. Затем требуется средневзвешенное значение этих 4 пикселей, чтобы получить окончательное интерполированное значение. [5] [6]

Билинейная интерполяция
Пример билинейной интерполяции в значениях оттенков серого

Как видно из примера справа, значение интенсивности в пикселе, вычисленном в строке 20.2, столбце 14.5, можно вычислить путем сначала линейной интерполяции между значениями в столбце 14 и 15 в каждой строке 20 и 21, что дает

а затем линейно интерполировать между этими значениями, давая

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

Упрощение терминов

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

В этом примере представлены табличные данные о давлении (столбцы) и температуре (строки) как поиск по некоторой переменной.

Т\П П_{1} П_{х} П_{2}
Т_{1} V_{11} В_{1x} V_{12}
Т_{х} В_{хх}
Т_{2} V_{21} V_{2x} V_{22}

Следующий стандартный расчет по деталям имеет 18 обязательных операций.

Все это можно упростить с первоначальных 18 отдельных операций до 16 отдельных операций как таковых;

Вышеупомянутое имеет две повторяющиеся операции.

Этим двум повторениям можно назначить временные переменные при вычислении одной интерполяции, что сократит количество вычислений до 14 операций, что является минимальным количеством шагов, необходимых для получения желаемой интерполяции. Выполнение этой интерполяции за 14, а не за 18 операций делает ее на 22% более эффективной.

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

См. также

[ редактировать ]
  1. ^ Пресс, Уильям Х.; Теукольский, Саул А.; Веттерлинг, Уильям Т.; Фланнери, Брайан П. (1992). Численные рецепты на C: искусство научных вычислений (2-е изд.). Нью-Йорк, штат Нью-Йорк, США: Издательство Кембриджского университета. стр. 123-128 . ISBN  0-521-43108-5 .
  2. ^ Монасс, Паскаль (10 августа 2019 г.). «Извлечение линий уровня билинейного изображения» . Обработка изображений в режиме онлайн . 9 : 205–219. дои : 10.5201/ipol.2019.269 . ISSN   2105-1232 .
  3. ^ Килес, Иниго (2010). «Обратная билинейная интерполяция» . iquilezles.org . Архивировано из оригинала 13 августа 2010 г. Проверено 17 февраля 2024 г.
  4. ^ Определение билинейной интерполяции (популярная статья на www.pcmag.com .
  5. ^ Хосрави, М.Р. (19 марта 2021 г.). «BL-ALM: слепой масштабируемый фильтр реконструкции с краевым управлением для интеллектуального мониторинга окружающей среды с помощью зеленых сетей IoMT-БПЛА» . Транзакции IEEE по экологически чистым коммуникациям и сетям . 5 (2): 727–736. дои : 10.1109/TGCN.2021.3067555 . S2CID   233669511 .
  6. ^ «Веб-руководство: Интерполяция цифровых изображений» .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4c2fda14428ea87c7180c0aa7917645f__1719577320
URL1:https://arc.ask3.ru/arc/aa/4c/5f/4c2fda14428ea87c7180c0aa7917645f.html
Заголовок, (Title) документа по адресу, URL1:
Bilinear interpolation - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)