imgaussfilt

2D Гауссова фильтрация изображений

Описание

B = imgaussfilt(A) фильтры отображают A с 2D Гауссовым ядром сглаживания со стандартным отклонением 0,5, и возвращает отфильтрованное изображение в B.

пример

B = imgaussfilt(A,sigma) фильтры отображают A с 2D Гауссовым ядром сглаживания со стандартным отклонением, заданным sigma.

B = imgaussfilt(___,Name,Value) аргументы пары "имя-значение" использования, чтобы управлять аспектами фильтрации.

Примеры

свернуть все

Считайте изображение, которое будет отфильтровано.

I = imread('cameraman.tif');

Отфильтруйте изображение с Гауссовым фильтром со стандартным отклонением 2.

Iblur = imgaussfilt(I,2);

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

montage({I,Iblur})
title('Original Image (Left) Vs. Gaussian Filtered Image (Right)')

Входные параметры

свернуть все

Отобразите, чтобы быть отфильтрованными в виде числового массива любой размерности.

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

Стандартное отклонение Распределения Гаусса в виде положительного числа или вектора с 2 элементами из положительных чисел. Если вы задаете скаляр, то imgaussfilt использует квадратное Гауссово ядро.

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

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: B = imgaussfilt(A,'FilterSize',3);

Размер Гауссова фильтра в виде скалярного или вектора с 2 элементами из положительных, нечетных целых чисел. Если вы задаете скаляр, то imgaussfilt использует квадратный фильтр. Размер фильтра по умолчанию 2*ceil (2*sigma)+1.

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

Отобразите дополнение в виде одного из следующих.

ЗначениеОписание
числовой скалярЗаполните изображение элементами постоянного значения.
'circular'

Заполните круговым повторением элементов в размерности.

'replicate'

Клавиатура путем повторения элементов границы массива.

'symmetric'

Заполните изображение зеркальными отражениями себя.

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

Область, в которой можно выполнить фильтрацию в виде одного из следующих значений:

ЗначениеОписание
'auto'Выполните свертку в пространственном или частотном диапазоне, на основе внутренней эвристики.
'frequency'Выполните свертку в частотном диапазоне.
'spatial'Выполните свертку в пространственной области.

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

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

свернуть все

Фильтрованное изображение, возвращенное как числовой массив того же класса и размера как входное изображение, A.

Советы

  • Если изображение A содержит Infs или NaNs, затем поведение imgaussfilt для частотного диапазона фильтрация не определена. Это может произойти, если вы устанавливаете 'FilterDomain' параметр к 'frequency' или если вы устанавливаете его на 'auto' и imgaussfilt фильтрация частотного диапазона использования. Ограничить распространение Infs и NaNs в выходе способом, похожим на imfilter, рассмотрите установку 'FilterDomain' параметр к 'spatial'.

  • Если вы устанавливаете 'FilterDomain' параметр к 'auto', затем imgaussfilt использует внутреннюю эвристику, чтобы определить или пространственный, или фильтрация частотного диапазона быстрее. Эта эвристика является зависимым машины и может варьироваться для различных настроек. Для оптимальной эффективности попробуйте обе опции, 'spatial' и 'frequency', определить лучшую область фильтрации для вашего изображения и размера ядра.

  • Если вы не задаете 'Padding' параметр, затем imgaussfilt использование 'replicate' дополнение по умолчанию, который отличается от значения по умолчанию, используемого imfilter.

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

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

| |

Представленный в R2015a