imdilate

Расширьте изображение

Описание

пример

J = imdilate(I,SE) расширяет шкалу полутонов, двоичный файл или упакованное бинарное изображение I, возвращая расширенное изображение, J. SE объект элемента структурирования или массив структурирования объектов элемента, возвращенных strel или offsetstrel функции.

J = imdilate(I,nhood) расширяет изображение I, где nhood матрица 0s и 1s, который задает окружение элемента структурирования. imdilate определяет центральный элемент окружения floor((size(nhood)+1)/2).

Этот синтаксис эквивалентен imdilate (я, strel(nhood)).

J = imdilate(___,packopt) задает ли I упакованное бинарное изображение.

пример

J = imdilate(___,shape) задает размер выходного изображения.

Примеры

свернуть все

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

BW = imread('text.png');

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

se = strel('line',11,90);

Расширьте изображение с вертикальным элементом структурирования линии и сравните результаты.

BW2 = imdilate(BW,se);
imshow(BW), title('Original')

Figure contains an axes. The axes with title Original contains an object of type image.

figure, imshow(BW2), title('Dilated')

Figure contains an axes. The axes with title Dilated contains an object of type image.

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

originalI = imread('cameraman.tif');

Создайте неплоский шарообразный элемент структурирования.

se = offsetstrel('ball',5,5);

Расширьте изображение.

dilatedI = imdilate(originalI,se);

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

imshowpair(originalI,dilatedI,'montage')

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

Создайте два плоских, элемента структурирования, имеющих форму линии, один в 0 градусах и другом в 90 градусах.

se1 = strel('line',3,0)
se1 = 
strel is a line shaped structuring element with properties:

      Neighborhood: [1 1 1]
    Dimensionality: 2

se2 = strel('line',3,90)
se2 = 
strel is a line shaped structuring element with properties:

      Neighborhood: [3x1 logical]
    Dimensionality: 2

Расширьте скалярное значение 1 с обоими элементами структурирования в последовательности, с помощью 'full' опция.

composition = imdilate(1,[se1 se2],'full')
composition = 3×3

     1     1     1
     1     1     1
     1     1     1

Создайте логический 3D объем с двумя точками.

BW = false(100,100,100);
BW(25,25,25) = true;
BW(75,75,75) = true;

Расширьте 3D объем с помощью сферического элемента структурирования.

se = strel('sphere',25);
dilatedBW = imdilate(BW,se);

Визуализируйте расширенный объем изображений.

figure
isosurface(dilatedBW, 0.5)

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

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

свернуть все

Введите изображение в виде полутонового изображения, бинарного изображения или упакованного бинарного изображения любой размерности.

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

Структурирование элемента в виде скалярного strel объект или offsetstrel объект. SE может также быть массив strel объект или offsetstrel объекты, в этом случае imdilate выполняет несколько расширений входного изображения, с помощью каждого элемента структурирования по очереди.

imdilate выполняет полутоновое расширение для всех изображений кроме изображений типа данных logical. В этом случае элемент структурирования должен быть плоским и imdilate выполняет бинарное расширение.

Структурирование окружения элемента в виде матрицы 0s и 1s.

Пример: [0 1 0; 1 1 1; 0 1 0]

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

Значение

Описание

'notpacked'

I обработан как нормальный массив.

'ispacked'

I обработан как упакованное бинарное изображение, как произведено bwpacki должен быть 2D uint32 массив и SE должен быть плоский 2D элемент структурирования. Значение shape должен быть 'same'.

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

Размер выходного изображения в виде одного из следующих.

Значение

Описание

'same'

Выходное изображение одного размера с входным изображением. Если значение packopt 'ispacked', затем shape должен быть 'same'.

'full'

Вычислите полное расширение.

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

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

свернуть все

Расширенное изображение, возвращенное как полутоновое изображение, бинарное изображение или упакованное бинарное изображение. Если входное изображение I упаковывается двоичный файл, затем J также упаковывается двоичный файл. J имеет тот же класс как I.

Больше о

свернуть все

Бинарное расширение

Бинарное расширение A B, обозначенный AB, задано как операция присвоения:

AB={z|(B^)zA},

где B^ отражение элемента структурирования B. Другими словами, это - набор пиксельных местоположений z, где отраженный элемент структурирования перекрывается с приоритетными пикселями в A, когда переведено в z. Обратите внимание на то, что некоторые приложения используют определение расширения, в котором не отражается элемент структурирования.

Для получения дополнительной информации о бинарном расширении, см. [1].

Полутоновое расширение

В общей форме полутонового расширения элемент структурирования имеет высоту. Полутоновое расширение A (x, y) B (x, y) задано как:

(AB)(x,y)=max{A(xx,yy)+B(x,y)|(x,y)DB},

где DB является областью элемента структурирования, B и A (x, y) приняты, чтобы быть – ∞ вне области изображения. Чтобы создать элемент структурирования с ненулевыми значениями высоты, используйте синтаксис strel(nhood,height), где height дает значения высоты и nhood соответствует области элемента структурирования, DB.

Обычно, полутоновое расширение выполняется с плоским элементом структурирования (B (x, y) = 0). Полутоновое расширение с помощью такого элемента структурирования эквивалентно локально-максимальному оператору:

(AB)(x,y)=max{A(xx,yy)|(x,y)DB}.

Весь strel синтаксисы за исключением strel(nhood,height), strel('arbitrary',nhood,height), и strel('ball',...) произведите плоские элементы структурирования.

Алгоритмы

imdilate автоматически использует в своих интересах разложение объекта элемента структурирования (если оно существует). Кроме того, при выполнении бинарного расширения с объектом элемента структурирования, который имеет разложение, imdilate автоматически упаковка бинарного изображения использования, чтобы ускорить расширение.

Расширение с помощью битной упаковки описано в [3].

Ссылки

[1] Гонсалес, R. C. Р. Э. Вудс, и С. Л. Эддинс, цифровая обработка изображений Используя MATLAB, публикация Gatesmark, 2009.

[2] Haralick, R. M., и Л. Г. Шапиро, Компьютер и Видение Робота, Издание I, Аддисон-Уэсли, 1992, стр 158-205.

[3] ван ден Бумгард, R, и Р. ван Бэлен, "Методы для Быстрых Морфологических Преобразований Изображений Используя Растровые Изображения", Компьютерное зрение, Графика и Обработка изображений: Графические Модели и Обработка изображений, Издание 54, Номер 3, стр 254-258, май 1992.

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

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

Функции

Объекты

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