strel

Элемент морфологического структурирования

Описание

A strel объект представляет собой плоскую морфологическую structuring element, являющуюся неотъемлемой частью морфологических расширительных и эрозионных операций.

Плоский элемент структурирования является двоичным соседством, 2-D или многомерным, в котором true пиксели включены в морфологические расчеты, и false пиксели не указаны. Центральный пиксель элемента структурирования, называемый источником, идентифицирует пиксель в обрабатываемом изображении. Используйте strel функция (описанная ниже) для создания плоского элемента структурирования. Можно использовать плоские элементы структурирования с двоичными и полутоновыми изображениями. Следующий рисунок иллюстрирует плоский структурный элемент.

Чтобы создать нефляционный структурный элемент, используйте offsetstrel.

Создание

Описание

SE = strel(nhood) создает плоский структурный элемент с заданным соседством nhood.

Можно также использовать синтаксис SE = strel('arbitrary',nhood) для создания плоского элемента структурирования с заданным соседством.

SE = strel('diamond',r) создает ромбовидный структурный элемент, где r задает расстояние от источника элемента структурирования до точек алмаза.

пример

SE = strel('disk',r,n) создает дискообразный элемент структурирования, где r задает радиус и n задает количество элементов структурирования линий, используемых для аппроксимации формы диска. Морфологические операции с использованием дисковых приближений выполняются намного быстрее, когда элемент структурирования использует приближения.

SE = strel('octagon',r) создает восьмиугольный структурный элемент, где r задает расстояние от источника элемента структурирования до сторон восьмиугольника, измеренное вдоль горизонтальной и вертикальной осей. r должно быть неотрицательным, кратным 3.

пример

SE = strel('line',len,deg) создает линейный структурный элемент, симметричный относительно центра окрестности с приблизительной длиной len и угловые deg.

SE = strel('rectangle',[m n]) создает прямоугольный структурный элемент размера [m n].

пример

SE = strel('square',w) создает квадратный элемент структурирования, ширина которого w пиксели.

SE = strel('cube',w) создает 3-D кубический структурный элемент, ширина которого w пиксели.

SE = strel('cuboid',[m n p]) создает 3-D кубоидный структурный элемент размера [m n p].

пример

SE = strel('sphere',r) создает 3-D сферический структурный элемент, радиус которого r пиксели.

Совместимость

Следующие синтаксисы все еще работают, но offsetstrel является предпочтительным способом создать эти формы нефляционных элементов структурирования:

  • SE = strel('arbitrary',nhood,h)

  • SE = strel('ball',r,h,n)

Следующие синтаксисы все еще работают, но не рекомендованы к использованию:

  • SE = strel('pair',offset)

  • SE = strel('periodicline',p,v)

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

расширить все

Окрестность, заданная как числовой массив любой размерности. Все ненулевые пиксели nhoodпринадлежат соседству для морфологической операции. Центр (или источник) nhood является его центральным элементом, заданным floor((size(nhood) + 1)/2).

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

Радиус элемента структурирования в плоскости x - y, заданный как положительное целое число.

  • Для формы диска r - расстояние от источника до ребра диска.

  • Для алмазной формы, r - расстояние от источника элемента структурирования до точек алмаза.

  • Для формы восьмиугольника r - расстояние от источника элемента структурирования до сторон восьмиугольника, измеренное вдоль горизонтальной и вертикальной осей. r должно быть кратно 3.

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

Количество периодических элементов структурирования линий, используемых для аппроксимации формы, заданное как 0, 4, 6, или 8. Когда n больше 0, дискообразный элемент структурирования аппроксимируется последовательностью n периодические элементы структурирования линий. Когда n является 0, strel не делает аппроксимации, и представители элемента структурирования содержат все пиксели, центры которых не больше r подальше от источник. Морфологические операции с использованием дисковых приближений выполняются намного быстрее, когда элемент структурирования использует приближения (n > 0). Иногда это необходимо для strel использовать два дополнительных элемента структурирования линий в приближении, и в этом случае количество используемых разложенных элементов структурирования n+2.

Значение nПоведение
n > 0strel использует последовательность n (или иногда n+2) периодические линейнообразные элементы структурирования для аппроксимации формы.
n = 0strel не использует никакого приближения. Представители элемента структурирования содержат все пиксели, центры которых не больше r от источника и соответствующие значения высоты определяются из формулы эллипсоида, заданной r и h.

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

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

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

Угол линейного элемента структурирования, в степени, задается как числовой скаляр. Угол измеряется в направлении против часовой стрелки от горизонтальной оси.

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

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

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

Ширина квадратного или кубического элемента структурирования, заданная как положительное целое число.

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

Размер кубоидного элемента структурирования, заданный как 3-элементный вектор положительных целых чисел. Элемент структурирования имеет m строки, n столбцы и p плоскости.

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

Свойства

расширить все

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

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

Размерности элемента структурирования, заданные как неотрицательный скаляр.

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

Функции объекта

imdilateРасширение изображения
imerodeЭродируйте изображение
imcloseМорфологически близкое изображение
imopenМорфологически открытое изображение
imbothatФильтрация в нижней шляпе
imtophatФильтрация верхних шляп
bwhitmissБинарная операция хит-мисс
decomposeВозвратная последовательность разложенных элементов структурирования
reflectОтражайте элемент структурирования
translateПеремещение элемента структурирования

Примеры

свернуть все

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

SE = strel('square', 11)
SE = 
strel is a square shaped structuring element with properties:

      Neighborhood: [11x11 logical]
    Dimensionality: 2

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

SE = strel('line', 10, 45)
SE = 
strel is a line shaped structuring element with properties:

      Neighborhood: [7x7 logical]
    Dimensionality: 2

Просмотрите элемент структурирования.

SE.Neighborhood
ans = 7x7 logical array

   0   0   0   0   0   0   1
   0   0   0   0   0   1   0
   0   0   0   0   1   0   0
   0   0   0   1   0   0   0
   0   0   1   0   0   0   0
   0   1   0   0   0   0   0
   1   0   0   0   0   0   0

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

SE3 = strel('disk', 15)
SE3 = 
strel is a disk shaped structuring element with properties:

      Neighborhood: [29x29 logical]
    Dimensionality: 2

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

figure
imshow(SE3.Neighborhood)

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

Создайте 3-D элемент структурирования в форме сферы с радиусом 15.

SE = strel('sphere', 15)
SE = 
strel is a sphere shaped structuring element with properties:

      Neighborhood: [31x31x31 logical]
    Dimensionality: 3

Отобразите элемент структурирования.

figure
isosurface(SE.Neighborhood)

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

Совет

  • Структурирование элементов, которые не используют приближений (n = 0) не подходят для вычисления гранулометрии.

Алгоритмы

Для всех форм, кроме 'arbitrary'Элементы структурирования сконструированы с использованием семейства методов, известных в совокупности как разложение элементов структурирования. Принцип заключается в том, что расширение некоторыми большими структурирующими элементами может быть вычислено быстрее путем расширения с последовательностью меньших структурирующих элементов. Для примера расширение с помощью элемента структурирования 11 на 11 квадратов может быть осуществлено путем расширения сначала с помощью элемента структурирования 1 на 11, а затем с помощью элемента структурирования 11 на 1. Это приводит к теоретическому улучшению эффективности коэффициента 5,5, хотя на практике фактическое улучшение эффективности несколько меньше. Декомпозиции элементов структурирования, используемые для 'disk' форма является приближениями - все другие разложения точны.

Вопросы совместимости

расширить все

Поведение изменено в R2017b

Ссылки

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

[2] Adams, R., «Radial Decomposition of Discs and Spheres», Компьютерное Зрение, Graphics, and Image Processing: Graphical Models and Image Processing, Vol. 55, Number 5, pp. 325-332, Sepember 1993.

[3] Jones, R. and P. Soille, «Periodic lines: Определение, cascades, and application to granulometrie», Pattern Recognition Letters, Vol. 17, pp. 1057-1063, 1996.

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

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