imfilter Дополнительные опции контура

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

Когда значения ядра выходят за пределы изображения

imfilter функция обычно заполняет эти пиксели изображения не ребра путем предположения, что они - 0. Это называется нулевым дополнением и проиллюстрировано в следующем рисунке.

Нулевое дополнение внешних пикселей

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

I = imread('eight.tif');
h = ones(5,5) / 25;
I2 = imfilter(I,h);
imshow(I), title('Original Image');
figure, imshow(I2), title('Filtered Image with Black Border')

Устранить дополняющие нуль артефакты вокруг ребра изображения, imfilter предлагает названную репликацию границы метода дополнения альтернативного контура. В репликации границы значение любого пикселя вне изображения определяется путем тиражирования значения от самого близкого краевого элемента изображения. Это проиллюстрировано в следующем рисунке.

Реплицированные граничные пиксели

Чтобы отфильтровать репликацию границы использования, передайте дополнительный дополнительный аргумент 'replicate' к imfilter.

I3 = imfilter(I,h,'replicate');
figure, imshow(I3); 
title('Filtered Image with Border Replication')

imfilter функционируйте поддерживает другие дополнительные опции контура, такие как 'circular' и 'symmetric'. Смотрите страницу с описанием для imfilter для деталей.

Смотрите также

Похожие темы