exponenta event banner

medfilt2

2-D фильтрация медианы

Описание

пример

J = medfilt2(I) выполняет медианную фильтрацию изображения I в двух измерениях. Каждый выходной пиксель содержит медианное значение в области 3 на 3 вокруг соответствующего пикселя во входном изображении.

J = medfilt2(I,[m n]) выполняет медианную фильтрацию, где каждый выходной пиксель содержит медианное значение в mоколо-n окрестности вокруг соответствующего пикселя во входном изображении.

J = medfilt2(___,padopt) управляет тем, как medfilt2 размещает границы изображения.

Примеры

свернуть все

Чтение изображения в рабочую область и его отображение.

I = imread('eight.tif');
figure, imshow(I)

Figure contains an axes. The axes contains an object of type image.

Добавить соль и перец шума.

J = imnoise(I,'salt & pepper',0.02);

Используйте медианный фильтр для фильтрации шума.

K = medfilt2(J);

Отображение результатов, рядом друг с другом.

imshowpair(J,K,'montage')

Figure contains an axes. The axes contains an object of type image.

Входные аргументы

свернуть все

Входное изображение, указанное как 2-D изображение в градациях серого или двоичное изображение.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

Размер окрестности, заданный как 2-элементный вектор положительных целых чисел.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Параметр заполнения, заданный как одно из следующих значений.

СтоимостьОписание
'zeros' (по умолчанию)Поместите изображение с помощью 0s.
'symmetric'Симметрично удлинить изображение на границах.
'indexed'Если класс I является double, затем заклеить изображение с помощью 1s; в противном случае, прокладка с 0s.

Типы данных: char | string

Выходные аргументы

свернуть все

Выходное изображение, возвращаемое в виде числовой матрицы того же класса, что и входное изображение I.

Совет

  • Медианная фильтрация - нелинейная операция, часто используемая при обработке изображения для уменьшения шума «соль и перец». Медианный фильтр эффективнее свёртки, когда целью является одновременное снижение шума и сохранение кромок. Дополнительные сведения о производительности см. в разделе ordfilt2.

  • Если входное изображение I является целым классом, то все выходные значения возвращаются в виде целых чисел. Если число пикселей в окрестности (m*n) является четным, то некоторые из медианных значений могут не быть целыми числами. В этих случаях дробные части отбрасываются. Логический вход обрабатывается аналогично. Например, истинная медиана для следующего района 2 на 2 в uint8 массив равен 4,5, но medfilt2 отбрасывает дробную часть и возвращает 4.

    1 5
    4 8
  • При указании padopt как 'zeros' или 'indexed', то заполнение может наклонять медиану вблизи границы изображения. Пикселы в пределах половины ширины окрестности ([m n]/2) краев может показаться искаженным.

Алгоритмы

На процессоре, medfilt2 использование ordfilt2 для выполнения фильтрации.

Ссылки

[1] Lim, Jae S., двумерная обработка сигналов и изображений, Englewood Cliffs, NJ, Prentice Hall, 1990, стр. 469-476.

Расширенные возможности

..

См. также

| | |

Представлен до R2006a