bwareaopen

Удалите маленькие объекты из двухуровневого изображения

Синтаксис

BW2 = bwareaopen(BW,P)
BW2 = bwareaopen(BW,P,conn)

Описание

пример

BW2 = bwareaopen(BW,P) удаляет все связанные компоненты (объекты), которые имеют меньше, чем пиксели P из двухуровневого изображения BW, производя другое двухуровневое изображение, BW2. Эта операция известна как area opening.

BW2 = bwareaopen(BW,P,conn) удаляет все связанные компоненты, где conn задает желаемую возможность соединения.

Примеры

свернуть все

Считайте двухуровневое изображение.

BW = imread('text.png');

Удалите объекты, содержащие меньше чем 50 пикселей с помощью функции bwareaopen.

BW2 = bwareaopen(BW, 50);

Отобразите оригинальное изображение рядом с морфологически открытым изображением.

imshowpair(BW,BW2,'montage')

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

свернуть все

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

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический

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

Пример: 50

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

Пиксельная возможность соединения, заданная как одно из значений в этой таблице. Возможностью соединения по умолчанию является 8 для 2D изображений и 26 для 3-D изображений.

Значение

Значение

Двумерные возможности соединения

4

Пиксели соединяются, если их ребра затрагивают. Два смежных пикселя являются частью того же объекта, если они и включены и соединяются вдоль горизонтального или вертикального направления.

8

Пиксели соединяются, если их ребра или углы затрагивают. Два смежных пикселя являются частью того же объекта, если они и включены и соединяются вдоль горизонтали, вертикального, или диагонального направления.

3D возможности соединения

6

Пиксели соединяются, если их поверхности затрагивают. Два смежных пикселя являются частью того же объекта, если они и включены и соединяются в:

  • Одно из этих направлений: в, левый, правильный, и вниз

18

Пиксели соединяются, если их поверхности или ребра затрагивают. Два смежных пикселя являются частью того же объекта, если они и включены и соединяются в

  • Одно из этих направлений: в, левый, правильный, и вниз

  • Комбинация двух направлений, таких как право вниз или в -

26

Пиксели соединяются, если их поверхности, ребра или углы затрагивают. Два смежных пикселя являются частью того же объекта, если они и включены и соединяются в

  • Одно из этих направлений: в, левый, правильный, и вниз

  • Комбинация двух направлений, таких как право вниз или в -

  • Комбинация трех направлений, такой как "в праве" или "в сниженном"

Для более высоких размерностей bwareaopen использует значение по умолчанию conndef(ndims(BW),'maximal').

Возможность соединения может также быть задана более общим способом к любой размерности путем определения 3-by-3-by-... Матрица-by-3 0 s и 1 s. 1 - оцененные элементы задают местоположения окружения относительно центрального элемента conn. Обратите внимание на то, что conn должен быть симметричным о своем центральном элементе. Смотрите Задающие Пользовательские Возможности соединения для получения дополнительной информации.

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

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

свернуть все

Открытое для области изображение, возвращенное как логический массив, одного размера как BW.

Алгоритмы

Основные шаги

  1. Определите связанные компоненты:

    CC = bwconncomp(BW, conn);
  2. Вычислите область каждого компонента:

    S = regionprops(CC, 'Area');
  3. Удалите маленькие объекты:

    L = labelmatrix(CC);
    BW2 = ismember(L, find([S.Area] >= P));
    

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

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

|

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