Интерполяция при обработке изображений: методы, применение и ограничения - Студенческий научный форум

XVI Международная студенческая научная конференция Студенческий научный форум - 2024

Интерполяция при обработке изображений: методы, применение и ограничения

Гвоздарев Д.А. 1, Балабан Е.И. 1
1КОЛОМЕНСКИЙ ИНСТИТУТ (ФИЛИАЛ) ФЕДЕРАЛЬНОГО ГОСУДАРСТВЕННОГО АВТОНОМНОГО ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ ВЫСШЕГО ОБРАЗОВАНИЯ МОСКОВСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Введение

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

Методы интерполяции можно разделить на два основных типа: пространственные и частотные. Пространственные методы основаны на использовании соседних пикселей для определения значений нового пикселя. К ним относятся методы ближайшего соседа, билинейная интерполяция и другие. Частотные методы работают с частотными компонентами изображения, такими как преобразование Фурье и другие.

Методы интерполяции

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

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

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

Рис. 1. Пример работы бикубической интерполяции

В случае бикубической интерполяции значение функции в искомой точке вычисляется через её значения в 16 соседних точках, расположенных в вершинах квадратов плоскости x, y.

При использовании приведённых ниже формул для программной реализации бикубической интерполяции следует помнить, что значения x и y являются относительными, а не абсолютными. Например, для точки с координатами (100.3, 100.8) x = 0.3, y = 0.8. Для получения относительных значений координат необходимо округлить вещественные координаты вниз и вычесть полученные числа из вещественных координат (Рис. 2).

Рис. 2. Пример применения бикубической интерполяции

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

Метод билинейной интерполяции Метод билинейной интерполяции, названный так по соответствующей математической операции, является качественным и широко известным методом масштабирования. Применительно к компьютерной графике, в данном методе в качестве значения функции выступает цвет пикселя (его составляющие). При этом квадрат, образованный четырьмя рассматриваемыми основными точками, принимается единичным. Применительно к компьютерной графике, в данном методе в качестве значения функции выступает цвет пикселя (его составляющие). При этом квадрат, образованный четырьмя рассматриваемыми основными точками, принимается единичным. Билинейная интерполяция – в вычислительной математике расширение линейной интерполяции для функций двух переменных. Ключевая идея заключается в том, чтобы провести обычную линейную интерполяцию сначала в одном направлении, затем в другом. Допустим, что надо интерполировать значение функции f в точке P = (x, y). Для этого необходимо знать значения функций в точках, окружающих P, т.е. в точках Q11 = (x1, y1), Q12 = (x1, y2), Q21 = (x2, y1), и Q22 = (x2, y2). Первым шагом интерполируется (линейно) значение вспомогательных точек R1 и R2 вдоль оси абсцисс, где R1 = (x, y1), R2 = (x, y2). В таком случае значение функции в точках R1 и R2 вычисляется по следующим формулам:

(1)

Далее проводится линейная интерполяция между вспомогательными точками R1 и R2, согласно формуле:

(2)

Это и есть приблизительное значение функции в точке P, то есть в раскрытом виде эта формула имеет вид (рис. 5):

(3)

(4)

Одним из минусов билинейной интерполяции при масштабировании изображений является тот факт, что при увеличении в N раз изображения размером W на H пикселей в результате будет получено изображение размером не NW на NH пикселей, а (N(W – 1) + 1) на (N(H – 1) + 1) пикселей.

Связано это с тем, что в исходном изображении, например, по горизонтали имеется W точек, то есть (W – 1) смежных пар. При выполнении операции увеличения изображения в N раз между каждой парой основных точек вставляется по (N – 1) дополнительных точек (то есть при увеличении вдвое между основными точками вставляется еще по одной, при увеличении втрое – по две и т.д.). Итого в результате ширина результирующего изображения будет равна сумме количества основных и дополнительных точек, иными словами соответствует равенству): W+(W – 1)(N – 1) =
=N(W – 1)+1

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

Рис. 3. Пример работы билинейной интерполяции

  1. Интерполяция ближайшего соседа

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

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

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

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

Рис. 4. Пример работы интерполяции ближайшего соседа

Применение интерполяции в обработке изображений

Интерполяционные методы широко применяются в различных областях обработки изображений. Вот несколько примеров:

  • Увеличение разрешения изображений (Super-Resolution) Увеличение разрешения изображений является одной из основных областей применения интерполяции. Здесь интерполяция помогает увеличить количество пикселей в изображении, чтобы улучшить его качество и детализацию.

  • Сжатие изображений (Image Compression) При сжатии изображений интерполяция используется для уменьшения артефактов сжатия и улучшения качества восстановленного изображения.

Ограничения интерполяции

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

Заключение

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

Список литературы

  1. Исследование эффективности программной реализации многопотокового алгоритма масштабирования методом билинейной интерполяции [Электронный ресурс] – Режим доступа: https://cyberleninka.ru/article/n/issledovanie-effektivnosti-programmnoy-realizatsii-mnogopotokovogo-algoritma-masshtabirovaniya-metodom-bilineynoy-interpolyatsii/viewer (дата обращения 04.02.2024 )

  2. Comparison gallery of image scaling algorithms [Электронный ресурс] – Режим доступа: https://en.wikipedia.org/wiki/Comparison_gallery_of_image_scaling_algorithms (дата обращения 09.02.2024 )

  3. Бикубическая интерполяция [Электронный ресурс] – Режим доступа: https://ru.ruwiki.ru/wiki/Бикубическая_интерполяция (дата обращения 01.02.2024 )

Просмотров работы: 157