grayconnected

Выберите смежную область изображения с аналогичными значениями серого цвета с помощью метода заливки-заливки

Описание

пример

BW = grayconnected(I,row,column) находит связанную область аналогичной интенсивности в полутоновом изображении I. Задайте row и column индексы начальной точки, seed. Функция возвращает двоичную маску, BW, что указывает, какие пиксели 8-соединены с начальным пикселем с аналогичной интенсивностью.

BW = grayconnected(I,row,column,tolerance) задает область значений значений интенсивности, включаемых в маску, как в [(seedvalue-tolerance),(seedvalue+tolerance)].

Примеры

свернуть все

Чтение и отображение полутонового изображения.

I = imread('cameraman.tif');
imshow(I)

Figure contains an axes. The axes contains an object of type image.

Сегментируйте небо в изображении с помощью метода заливки. Выберите пиксель в небе, чтобы быть seed местоположением. Этот пример использует пиксель с (строка, столбец) координатой (50, 50). Вызовите grayconnected функция, задающая изображение, которое должно быть сегментировано, и это начальное местоположение.

J = grayconnected(I,50,50);

Отобразите сегментированную область в цвете над оригинальным изображением при помощи labeloverlay функция. Сегментированная область включает пиксели неба, которые 8-соединены с seed. Область не включает пиксели аналогичной интенсивности, которые отключены, такие как небо, видимое между ногами штатива.

imshow(labeloverlay(I,J))

Figure contains an axes. The axes contains an object of type image.

Сегментируйте куртку оператора при помощи заливки. Выберите пиксель в куртке, который будет seed местоположением. Этот пример задает пиксель seed с координатой (строка, столбец) (110, 65). Вызовите grayconnected функция, задающая изображение, которое должно быть сегментировано, и это начальное местоположение.

J2 = grayconnected(I,110,65);

Отобразите сегментированное изображение в цвете над оригинальным изображением. Сегментированная область включает все пиксели, которые 8-соединены с начальным пикселем. Тренога и волосы оператора имеют одинаковую интенсивность с пиджаком, поэтому они входят в сегментированную область.

imshow(labeloverlay(I,J2))

Figure contains an axes. The axes contains an object of type image.

Создайте небольшой образец изображения.

I = uint8([20 22 24 23 25 20 100
           21 19 12 13 12 30 6
           22 11 13 12 24 25 5
           23 13 13 13 24 25 5
           24 27 13 12 12 13 5
           25 26  5 28 29 50 6]);

Укажите индексы строка и столбец расположения seed. Значение в местоположении seed 23.

seedrow = 4;
seedcol = 1;

Задайте допуск.

tol = 3;

Создайте масковое изображение, задав seed местоположение и допуск. Маска включает все пиксели, которые 8-соединены с начальным пикселем и имеют значение в области значений [20, 26]. Маска исключает пиксели со значениями полутонового цвета в области значений допусков, которые не связаны 8, такие как пиксель с координатой (строка, столбец) (3, 6).

BW = grayconnected(I,seedrow,seedcol,tol)
BW = 6x7 logical array

   1   1   1   1   1   1   0
   1   0   0   0   0   0   0
   1   0   0   0   0   0   0
   1   0   0   0   0   0   0
   1   0   0   0   0   0   0
   1   1   0   0   0   0   0

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

свернуть все

Полутоновое изображение, заданное как числовая матрица.

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

Индекс строки seed пикселя, заданный как положительное целое число.

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

Индекс столбца seed пикселя, заданный как положительное целое число.

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

Допуск значений интенсивности для включения в маску, заданный как числовой скаляр. Маска включает все пиксели со значением в области значений [(seedvalue-tolerance),(seedvalue+tolerance)]. По умолчанию допуск следующий 32 для целочисленных изображений и 0.1 для изображений с плавающей точкой.

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

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

свернуть все

Двоичная маска соединенной области, возвращенная как логический массив того же размера, что и I. Все пиксели переднего плана указывают пиксели изображения, которые 8-соединены с seed с аналогичной интенсивностью.

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

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

.

См. также

| |

Введенный в R2015b