Операции интерполяционной таблицы

Создание интерполяционной таблицы

Определенные операции двухуровневого изображения могут быть реализованы наиболее легко через интерполяционные таблицы. Интерполяционная таблица является вектор-столбцом, в котором каждый элемент представляет значение, чтобы возвратиться для одной возможной комбинации пикселей в окружении. Чтобы создать интерполяционные таблицы для различных операций, используйте makelut функция. makelut создает интерполяционные таблицы для и 3х3 окружений 2 на 2. Следующая фигура иллюстрирует эти типы окружений. Каждый пиксель окружения обозначается x, и центральный пиксель является тем с кругом.

Для окружения 2 на 2 существует 16 возможных сочетаний пикселей в окружении. Поэтому интерполяционная таблица для этой операции является вектором с 16 элементами. Для 3х3 окружения существует 512 сочетаний, таким образом, интерполяционная таблица является вектором с 512 элементами.

Примечание

makelut и applylut поддержите только и 3х3 окружения 2 на 2. Интерполяционные таблицы, больше, чем 3х3 окружения, не практичны. Например, интерполяционная таблица для окружения 4 на 4 имела бы 65 536 записей.

Используя интерполяционную таблицу

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

Пример ниже иллюстрирует операции интерполяционной таблицы использования, чтобы изменить изображение, содержащее текст. Пример создает анонимную функцию, которая возвращается 1, если три или больше пикселя в 3х3 окружении равняются 1; в противном случае это возвращает 0. Пример затем вызывает makelut, передача в этой функции в качестве первого аргумента и использования второго аргумента, чтобы задать 3х3 интерполяционную таблицу.

f = @(x) sum(x(:)) >= 3;
lut = makelut(f,3);

lut возвращен как вектор с 512 элементами 1's и 0. Каждым значением является выход от функции для одного из 512 возможных сочетаний.

Вы затем выполняете операцию с помощью applylut.

BW1 = imread('text.png'); 
BW2 = applylut(BW1,lut);
imshow(BW1)
figure, imshow(BW2)

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

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