visboundaries

Постройте контуры области

Описание

пример

visboundaries(BW) проводит границы областей в бинарном изображении BW на текущей системе координат. BW 2D бинарное изображение, где пиксели, которые являются логическим true принадлежите области переднего плана и пикселям, которые являются логическим false составьте фон. visboundaries использование bwboundaries найти граничные пиксельные местоположения в изображении.

visboundaries(B) проводит границы области, заданные B, где B массив ячеек, содержащий граничные пиксельные местоположения областей, подобных в структуре к первому выходу от bwboundaries.

visboundaries(ax,___) проводит границы области на осях, заданных ax.

пример

visboundaries(___,Name,Value) аргументы пары "имя-значение" использования, чтобы задать дополнительные свойства контуров.

h = visboundaries(___) возвращает указатель h, для контуров.

Примеры

свернуть все

Readimage.

BW = imread('blobs.png');

Вычислите контуры.

B = bwboundaries(BW);

Изображение на дисплее и контуры графика на изображении.

imshow(BW)
hold on
visboundaries(B)

Figure contains an axes. The axes contains 3 objects of type line, image.

Считайте изображение и отобразите его.

I = imread('toyobjects.png');
imshow(I)
hold on

Сегментируйте изображение с помощью активных контуров (змеи) алгоритм. Во-первых, задайте начальное местоположение контура близко к объекту, который должен быть сегментирован.

mask = false(size(I));
mask(50:150,40:170) = true;

Отобразите начальный контур на оригинальном изображении синего цвета.

visboundaries(mask,'Color','b');

Figure contains an axes. The axes contains 3 objects of type line, image.

Сегментируйте изображение с помощью 'edge' метод с помощью 200 итераций.

bw = activecontour(I,mask,200,'edge');

Отобразите итоговый контур на оригинальном изображении красного цвета.

visboundaries(bw,'Color','r');
title('Blue - Initial Contour, Red - Final Contour');

Figure contains an axes. The axes with title Blue - Initial Contour, Red - Final Contour contains 5 objects of type line, image.

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

свернуть все

Бинарное изображение в виде логического массива.

Типы данных: логический

Граничные пиксельные местоположения в виде массива ячеек. Каждая ячейка содержит Q-by-2 матрица, где Q является количеством граничных пикселей для соответствующей области. Каждая строка их Q-by-2 матрицы содержит координаты строки и столбца граничного пикселя.

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

Отобразите, на котором можно провести границы в виде объекта осей.

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

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: visboundaries(bw,'Color','b');

Цвет контура в виде триплета RGB, шестнадцатеричного цветового кода, названия цвета или короткого названия цвета.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB® во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Пример: visboundaries(bw,'Color','r');

Пример: visboundaries(bw,'Color','green');

Пример: visboundaries(bw,'Color',[0 0 1]);

Пример: visboundaries(bw,'Color','#FF8800');

Стиль линии граничного ребра в виде разделенной запятой пары, состоящей из 'LineStyle' и любой спецификатор линии в приведенной ниже таблице.

Стиль линииОписаниеПолучившаяся линия
'-'Сплошная линия

'--'Пунктирная линия

':'Пунктирная линия

'-.'Штрих-пунктирная линия

'none'Никакая линияНикакая линия

Пример: visboundaries(bw,'LineStyle','-.');

Ширина линии используется для контура в виде положительного числа. Задайте это значение в точках, где одна точка = 1/72 дюйма.

Пример: visboundaries(bw,'LineWidth',4);

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

Увеличьте проведенную границу с контрастированием функций, чтобы улучшить видимость относительно различного фона в виде логического флага true или false.

Пример: visboundaries(bw,'EnhanceVisibility',true);

Типы данных: логический

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

свернуть все

Граница, возвращенная как hggroup объект. h дочерний элемент осей ax если задано, в противном случае h дочерний элемент текущей системы координат.

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

| | |

Представленный в R2015a
Для просмотра документации необходимо авторизоваться на сайте