imgaussfilt

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

Описание

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

пример

B = imgaussfilt(A,sigma) фильтрует изображение A с 2-D Гауссовым сглаживающим ядром со стандартным отклонением, заданным 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)')

Figure contains an axes. The axes with title Original Image (Left) Vs. Gaussian Filtered Image (Right) contains an object of type image.

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

свернуть все

Фильтруемое изображение, заданное как числовой массив любой размерности.

Типы данных: 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