Найти периметр объектов в двоичном изображении
Чтение двоичного изображения в рабочую область.
BW = imread('circles.png');Вычислите периметры объектов на изображении.
BW2 = bwperim(BW,8);
Отображение исходного изображения и периметров рядом.
imshowpair(BW,BW2,'montage')
В этом примере показано, как найти пикселы периметра в двоичном изображении с помощью bwperim функция.
Чтение двоичного изображения в рабочую область.
BW1 = imread('circbw.tif');Найдите периметры объектов на изображении.
BW2 = bwperim(BW1);
Отображение исходного изображения и изображения с периметрами рядом.
montage({BW1,BW2},'BackgroundColor','blue','BorderSize',5)![]()
BW - Входное двоичное изображениеВходной двоичный образ, заданный как 2-D числовая или логическая матрица.
Пример: BW = imread('circles.png');
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
conn - Пиксельная связь4 | 8 | 6 | 18 | 26 | 3-за-3-за-... -по-3 матрицы 0s и 1sПиксельная связность, указанная как одно из значений в этой таблице. Подключение по умолчанию: 4 для 2-D изображений, и 6 для 3-D изображений.
Стоимость | Значение | |
|---|---|---|
Двумерные связи | ||
4-подключенные | Пикселы соединяются, если их края соприкасаются. Два соседних пикселя являются частью одного и того же объекта, если они оба включены и соединены вдоль горизонтального или вертикального направления. |
|
8-подключенных | Пикселы соединяются, если их края или углы соприкасаются. Два соседних пикселя являются частью одного и того же объекта, если они оба включены и соединены вдоль горизонтального, вертикального или диагонального направления. |
|
Трехмерные связи | ||
6-подключенных | Пиксели соединяются, если их лица соприкасаются. Два соседних пикселя являются частью одного и того же объекта, если они оба включены и соединены в:
|
|
18-подключенных | Пикселы соединяются, если их грани или края соприкасаются. Два соседних пикселя являются частью одного и того же объекта, если они оба включены и соединены в
|
|
26-подключенных | Пикселы соединяются, если их грани, края или углы соприкасаются. Два соседних пикселя являются частью одного и того же объекта, если они оба включены и соединены в
|
|
Для более высоких размеров bwperim использует значение по умолчанию .conndef(ndims(BW),'minimal')
Связность также можно определить более общим образом для любого измерения, указав 3 на 3 -... -по-3 матрицы 0s и 1с. 1-значимые элементы определяют расположения окрестностей относительно центрального элемента conn. Обратите внимание, что conn должен быть симметричным относительно его центрального элемента. Дополнительные сведения см. в разделе Определение пользовательских подключений.
Типы данных: double | logical
BW2 - Вывод двоичного изображения, содержащего только пикселы периметра объектовВыходное изображение, содержащее только пикселы периметра объектов, возвращаемое в виде логического массива.
Примечания и ограничения по использованию:
bwperim поддерживает генерацию кода C (требуется MATLAB ® Coder™). Обратите внимание, что при выборе родовогоMATLAB Host Computer целевая платформа, bwperim создает код, использующий предварительно скомпилированную общую библиотеку для конкретной платформы. Использование общей библиотеки сохраняет оптимизацию производительности, но ограничивает целевые платформы, для которых может быть создан код. Дополнительные сведения см. в разделе Создание кода с помощью общей библиотеки.
bwperim поддерживает только 2-D изображения.
bwperim не поддерживает синтаксис no-output-argument.
Входной аргумент матрицы связности, conn, должно быть константой.
Примечания и ограничения по использованию:
bwperim поддерживает только 2-D изображения.
bwperim не поддерживает синтаксис no-output-argument.
Входной аргумент матрицы связности, conn, должно быть константой.
bwarea | bwboundaries | bweuler | bwferet | bwtraceboundary | conndef | imfill
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.