Сегментируйте изображение в передний план и фон с помощью метода роста области активных контуров (змей)
Метод active contours, также названный snakes, является итеративным алгоритмом сегментации изображений с растущей областью. Используя активный алгоритм контура, вы задаете начальные кривые на изображении, а затем используете activecontour
функция для эволюции кривых к контурам объекта.
сегментирует изображение BW
= activecontour(A
,mask
)A
в области переднего плана (объект) и области фона с помощью активных контуров.
The mask
аргумент является бинарным изображением, которое задает начальное состояние активного контура. Контуры областей объекта (белый) в mask
задайте начальное положение контура, используемое для эволюции контура, для сегментации изображения. Выходное изображение BW
является бинарным изображением, где передний план является белым (логический true), а фон - черным (логический false).
Чтобы получить более быстрые и точные результаты сегментации, задайте начальное положение контура, которое близко к требуемым контурам объекта.
задает аргументы пары "имя-значение", которые управляют различными аспектами сегментации.BW
= activecontour(___,Name,Value
)
activecontour
использует контуры областей в mask
как начальное состояние контура, с которого начинается эволюция. Отверстия в маске могут привести к непредсказуемым результатам. Использовать imfill
чтобы заполнить все отверстия в областях в mask
.
Если область касается границ изображения, то activecontour
удаляет слой с одним пикселем из области перед дальнейшей обработкой так, чтобы область не касалась границы изображения.
Чтобы получить более быстрые и точные результаты, задайте начальное положение контура, которое близко к желаемым контурам объекта, особенно для 'edge'
способ.
Для 'edge'
способ, активный контур естественно смещен в сторону усадки внутрь (свертывания). При отсутствии какого-либо градиента изображения активный контур сжимается самостоятельно. И наоборот, с 'Chan-Vese'
способ, в котором контур объективен, контур свободен для усадки или расширения на основе функций изображения.
Чтобы достичь точной сегментации с 'edge'
метод, задайте начальный контур, который находится вне границ объекта. Активный контур с 'edge'
метод смещен, чтобы сжаться, по умолчанию.
Если области объектов имеют значительно разную интенсивность в полутоновом цвете, то 'Chan-Vese'
метод [1] может не сегментировать все объекты в изображении. Например, если изображение содержит объекты, которые ярче фона, и некоторые из них темнее, 'Chan-Vese'
метод обычно сегментирует либо темные, либо только яркие объекты.
activecontour
использует метод Sparse-Field level-set, подобный методу, описанному в [3], для реализации активной эволюции контура.
[1] Т. Ф. Чан, Л. А. Везе, Активные контуры без ребер. Транзакции IEEE по обработке изображений, том 10, выпуск 2, стр. 266-277, 2001.
[2] В. Касельес, Р. Киммель, Г. Сапиро, Геодезические активные контуры. International Journal of Компьютерное Зрение, том 22, выпуск 1, стр. 61-79, 1997.
[3] Р. Т. Уитакер, подход с набором уровней к 3d реконструкции из данных области значений. International Journal of Компьютерное Зрение, том 29, выпуск 3, стр. 203-231, 1998.
drawellipse
| drawfreehand
| drawpolygon
| Image Segmenter | multithresh
| poly2mask
| roipoly