Отфильтруйте Полутоновый и Истинный цвет (RGB), использование Изображений инфильтрирует Функцию

В этом примере показано, как отфильтровать 2D полутоновое изображение с фильтром 5 на 5, содержащим равные веса (часто названный фильтром усреднения) использование imfilter. Пример также показывает, как отфильтровать истинный цвет (RGB) изображение с тем же фильтром. Изображение истинного цвета является трехмерным массивом размера m n 3, где последняя размерность представляет эти три цветовых канала. Фильтрация изображения истинного цвета с 2D фильтром эквивалентна фильтрации каждой плоскости изображения индивидуально с тем же 2D фильтром.

Существует несколько функций MATLAB®, которые выполняют 2D и многомерную фильтрацию, которая может сравниться с imfilter. Функциональный filter2 выполняет двумерную корреляцию, conv2 выполняет двумерную свертку и convn выполняет многомерную свертку. Однако каждая из этих функций фильтрации всегда преобразует вход в double, и выходом всегда является double. Кроме того, эти функции фильтрации MATLAB® всегда принимают, что вход является нулем, дополненным, и они не поддерживают другие дополнительные опции. В отличие от этого imfilter не преобразует входные изображения в double. imfilter функционируйте также предлагает гибкий набор дополнительных опций контура.

Отфильтруйте 2D полутоновое изображение с усреднением фильтра

Считайте полутоновое изображение в рабочую область.

I = imread('coins.png');

Отобразите оригинальное изображение.

figure
imshow(I)
title('Original Image')

Создайте нормированный, составляющий в среднем фильтр 5 на 5.

h = ones(5,5)/25;

Примените фильтр усреднения к полутоновому изображению с помощью imfilter.

I2 = imfilter(I,h);

Отобразите отфильтрованное изображение.

figure
imshow(I2)
title('Filtered Image')

Отфильтруйте Многомерный Истинный цвет (RGB), Изображение Используя просачивается

Считайте изображение истинного цвета в рабочую область.

rgb = imread('peppers.png');
imshow(rgb);

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

h = ones(5,5)/25;

Отфильтруйте изображение с помощью imfilter и отобразите его.

rgb2 = imfilter(rgb,h);
figure
imshow(rgb2)

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

Похожие темы