exponenta event banner

imsegkmeans3

K-означает сегментацию томов на основе кластеризации

Описание

пример

L = imsegkmeans3(V,k) объем сегментов V в k кластеры, выполняя кластеризацию k-means и возвращая сегментированные помеченные выходные данные в L.

[L,centers] = imsegkmeans3(V,k) также возвращает местоположения центроидов кластера, centers.

L = imsegkmeans3(V,k,Name,Value) использует пары имя-значение для управления аспектами алгоритма кластеризации k-средств.

Примеры

свернуть все

Загрузить 3-D объем МРТ в градациях серого и отобразить его с помощью volshow.

load mristack
volshow(mristack);

Сегментируйте том на три кластера.

L = imsegkmeans3(mristack,3);

Отображение сегментированного тома с помощью volshow. Чтобы просмотреть фрагменты сегментированного тома, используйте приложение «Просмотр томов».

figure
volshow(L);

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

свернуть все

Объем в сегмент, заданный как 3-D объем в градациях серого размера m-by-n-by-p или 3-D мультиспектральный объем размера m-by-n-by-p-by-c, где p - количество плоскостей, а c - количество каналов.

Примечание

imsegkmeans3 обрабатывает 2-D цветные изображения как 3-D объемы размером m-by-n-by-3. Если вы хотите 2-D поведение, то используйте imsegkmeans функция.

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

Число создаваемых кластеров, указанное как положительное целое число.

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

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

Пример: 'NumAttempts',5

Нормализовать входные данные до нулевого среднего и единичной дисперсии, указанной как разделенная запятыми пара, состоящая из 'NormalizeInput' и числовой или логический 1 (true) или 0 (false).. При указании true, то imsegkmeans3 нормализует каждый канал входа по отдельности.

Количество повторений процесса кластеризации с использованием новых начальных позиций центроида кластера, указанных как пара, разделенная запятыми, состоящая из 'NumAttempts' и положительное целое число.

Максимальное количество итераций, указанное как пара, разделенная запятыми, состоящая из 'MaxIterations' и положительное целое число.

Порог точности, указанный как пара, разделенная запятыми, состоящая из 'Threshold' и положительное число. Алгоритм останавливается, когда каждый из центров кластера перемещается меньше порогового значения в последовательных итерациях.

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

свернуть все

Матрица меток, заданная как матрица положительных целых чисел. Пикселы с меткой 1 принадлежат первому кластеру, метка 2 принадлежит второму кластеру и так далее для каждого из k кластеры. L имеет те же первые три размера, что и объем V. Класс L зависит от количества кластеров.

Класс LКоличество кластеров
'uint8'k <= 255
'uint16'256 <= k <= 65535
'uint32'65536 <= k <= 2^32-1
'double'2^32 <= k

Местоположение центроида кластера, возвращаемое как числовая матрица размера k-by-c, где k - количество кластеров, а c - количество каналов. centers является тем же классом, что и изображение I.

Совет

  • Функция дает воспроизводимые результаты. Выходные данные не будут изменяться в нескольких прогонах, учитывая одни и те же входные аргументы.

Ссылки

[1] Артур, Д. и С. Васильвицкие. «k-означает + +: Преимущества тщательного посева». СОДА '07: Материалы восемнадцатого ежегодного симпозиума ACM-SIAM по дискретным алгоритмам. Новый Орлеан, Лос-Анджелес, январь 2007 года, стр. 1027-1035.

Представлен в R2018b