Сегментируйте изображение в передний план и фон с помощью метода роста области активных контуров (змей)
Метод 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