imerode

Эродируйте изображение

Описание

пример

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

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

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

J = imerode(___,packopt,m) определяет, вводится ли изображение I является упакованным бинарным изображением. m задает размерность строки для исходного распакованного изображения.

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

Примеры

свернуть все

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

originalBW = imread('text.png');

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

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

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

erodedBW = imerode(originalBW,se);

Просмотр оригинального изображения и размытого изображения.

figure
imshow(originalBW)

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

figure
imshow(erodedBW)

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

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

originalI = imread('cameraman.tif');

Создайте нефлятный объект offsetstrel.

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

Размыть изображение.

erodedI = imerode(originalI,se);

Отображение оригинального изображения и размытого изображения.

figure
imshow(originalI)

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

figure
imshow(erodedI)

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

Создайте двоичный том.

load mristack
BW = mristack < 100;

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

se = strel('cube',3)
se = 
strel is a cube shaped structuring element with properties:

      Neighborhood: [3x3x3 logical]
    Dimensionality: 3

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

erodedBW = imerode(BW, se);

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

свернуть все

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

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

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

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

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

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

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

Значение

Описание

'notpacked'

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

'ispacked'

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

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

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

Типы данных: double

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

Значение

Описание

'same'

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

'full'

Вычислите полную эрозию.

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

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

свернуть все

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

Подробнее о

свернуть все

Двоичная эрозия

Двойная эрозия A B, обозначенным <reservedrangesplaceholder9> ϴ <reservedrangesplaceholder8>, определена как операция <reservedrangesplaceholder7> ϴ <reservedrangesplaceholder6> набора = {z | (Bz ⊆ <reservedrangesplaceholder3>}. Другими словами, это набор z пиксельных местоположений, где элемент структурирования, переведенный в положение z перекрывается только с пикселями переднего плана в A.

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

Эрозия полутонового цвета

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

(A ϴ <reservedrangesplaceholder13>) (x, y) = минута {A (x + <reservedrangesplaceholder8> , y + <reservedrangesplaceholder6> ) − <reservedrangesplaceholder5> (x ′, <reservedrangesplaceholder3> ) | (x ′, <reservedrangesplaceholder1> ) ∊ <reservedrangesplaceholder0>},

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

Чаще всего эрозию полутонового цвета выполняют плоским структурирующим элементом (B (x, y) = 0). Эрозия серого с использованием такого элемента структурирования эквивалентна локально-минимальному оператору:

(A ϴ <reservedrangesplaceholder10>) (x, y) = минута {A (x + <reservedrangesplaceholder5> , y + <reservedrangesplaceholder3> ) | (x ′, <reservedrangesplaceholder1> ) ∊ <reservedrangesplaceholder0>}.

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

Алгоритмы

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

Эрозия с использованием набивки долота описана в [3].

Ссылки

[1] Gonsalez, R. C., R. E. Woods, and S. L. Eddins, Digital Image Processing Using MATLAB, Gatesmark Publishing, 2009.

[2] Haralick, Robert M., and Linda G. Shapiro, Computer and Robot Vision, Vol. I, Addison-Wesley, 1992, pp. 158-205.

[3] van den Boomgard, R, and R. van Balen, «Methods for Fast Morphological Image Transform Using Bitmapped Images», Computer Vision, Graphics and Image Processing: Graphical Models and, Vol. 54, NUmer 3, pp.

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

..

См. также

Функции

Объекты

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