2D фильтрация поля интегральных изображений
фильтрует интегральное изображение B
= integralBoxFilter(A
,filterSize
)A
с 2D полем фильтруют с размером, заданным filterSize
.
пары "имя-значение" использования, чтобы управлять различными аспектами фильтрации.B
= integralBoxFilter(___,Name,Value
)
Считайте изображение в рабочую область.
A = imread('cameraman.tif');
Заполните изображение радиусом окружения фильтра. Этот пример использует 11 11 фильтр.
filterSize = [11 11]; padSize = (filterSize-1)/2; Apad = padarray(A, padSize, 'replicate','both');
Вычислите интегральное изображение заполненного входного изображения.
intA = integralImage(Apad);
Отфильтруйте интегральное изображение.
B = integralBoxFilter(intA, filterSize);
Отобразите оригинальное изображение и отфильтрованное изображение.
figure
imshow(A)
title('Original Image')
figure
imshow(B,[])
title('Filtered Image')
Считайте изображение в рабочую область.
A = imread('cameraman.tif');
Заполните изображение радиусом окружения фильтра, расчетного (11-1)/2
.
padSize = [5 5]; Apad = padarray(A, padSize, 'replicate', 'both');
Вычислите интегральное изображение заполненного входа.
intA = integralImage(Apad);
Отфильтруйте интегральное изображение с вертикалью [11 1] фильтр.
Bvert = integralBoxFilter(intA, [11 1]);
Обрежьте выход, чтобы сохранить входной размер изображения и отобразить его.
Bvert = Bvert(:,6:end-5);
Отфильтруйте интегральное изображение с горизонталью [1 11] фильтр.
Bhorz = integralBoxFilter(intA, [1 11]);
Обрежьте выход, чтобы сохранить входной размер изображения.
Bhorz = Bhorz(6:end-5,:);
Отобразите оригинальное изображение и отфильтрованные изображения.
figure,
imshow(A)
title('Original Image')
figure,
imshow(Bvert,[])
title('Filtered with Vertical Filter')
figure,
imshow(Bhorz,[])
title('Filtered with Horizontal Filter')
A
— Интегральное изображение, которое будет отфильтрованоИнтегральное изображение, которое будет отфильтровано в виде числового массива любой размерности.
Интегральное изображение должно быть вертикальным — integralBoxFilter
не поддерживает вращаемые интегральные изображения. Первая строка и столбец интегрального изображения принята, чтобы быть дополненной нулем, как возвращено integralImage
.
Типы данных: double
filterSize
— Размер фильтра поля
(значение по умолчанию) | положительное, нечетное целое число | вектор с 2 элементами положительных, нечетных целых чиселРазмер поля фильтрует в виде положительного, нечетного целочисленного или вектора с 2 элементами положительных, нечетных целых чисел. Если filterSize
скаляр, затем integralBoxFilter
использует квадратный фильтр поля.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
B = integralBoxFilter(A,5,'NormalizationFactor',1);
'NormalizationFactor'
— Коэффициент нормализации применился к фильтру поля1/filterSize.^2
, если скаляр и 1/prod(filterSize)
, если вектор (значение по умолчанию) | числовой скалярКоэффициент нормализации применился к фильтру поля в виде числового скаляра.
'NormalizationFactor'
по умолчанию оказывает влияние среднего фильтра — пиксели в выходном изображении являются локальными средними значениями изображения. Чтобы получить суммы местности, установите
'NormalizationFactor'
к 1
. Чтобы избежать переполнения при таких обстоятельствах, рассмотрите использование изображений двойной точности путем преобразования входного изображения, чтобы классифицировать double
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
B
— Фильтрованное изображениеФильтрованное изображение, возвращенное как числовой массив. integralBoxFilter
возвращает только части фильтрации, которые вычисляются без дополнения.
Типы данных: double
Указания и ограничения по применению:
integralBoxFilter
поддерживает генерацию кода С (требует MATLAB® Coder™). Для получения дополнительной информации смотрите Генерацию кода для Обработки изображений.
'NormalizationFactor'
параметр должен быть постоянным временем компиляции.
Указания и ограничения по применению:
'NormalizationFactor'
параметр должен быть постоянным временем компиляции.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.