regionprops3

Измерьте свойства 3-D объемных областей изображений

Синтаксис

stats = regionprops3(BW,properties)
stats = regionprops3(CC,properties)
stats = regionprops3(L,properties)
stats = regionprops3(___,V,properties)

Описание

пример

stats = regionprops3(BW,properties) измеряет набор свойств для каждого связанного компонента (объект) в 3-D объемном двухуровневом изображении BW. Вывод stats является таблицей с высотой (количество строк) равный количеству объектов в BW. Переменные (столбцы) таблицы обозначают различные свойства для каждой области, как задано properties.

Для всех синтаксисов, если вы не задаете аргумент properties, regionprops3 возвращает 'Volume', 'Centroid' и измерения 'BoundingBox'.

stats = regionprops3(CC,properties) измеряет набор свойств для каждого связанного компонента (объект) в CC, который является структурой, возвращенной bwconncomp.

stats = regionprops3(L,properties) измеряет набор свойств для каждой маркированной области в 3-D матрице метки L.

stats = regionprops3(___,V,properties) измеряет набор свойств для каждой маркированной области в 3-D объемном полутоновом изображении V. Первый вход (BW, CC или L) идентифицирует области в V.

Примеры

свернуть все

Создайте двухуровневое изображение с двумя сферами.

[x,y,z] = meshgrid(1:50,1:50,1:50);
bw1 = sqrt((x-10).^2 + (y-15).^2 + (z-35).^2) < 5;
bw2 = sqrt((x-20).^2 + (y-30).^2 + (z-15).^2) < 10;
bw = bw1 | bw2;

Получите центры и радиусы этих двух сфер.

s = regionprops3(bw,"Centroid","PrincipalAxisLength");
centers = s.Centroid
centers = 2×3

    20    30    15
    10    15    35

diameters = mean(s.PrincipalAxisLength,2)
diameters = 2×1

   17.8564
    8.7869

radii = diameters/2
radii = 2×1

    8.9282
    4.3935

Сделайте 9 9 куб 0s, который содержит 3х3 куб 1 с в ее центре.

innercube = ones(3,3,3);
cube_in_cube = padarray(innercube,[3 3],0,'both');

Получите всю статистику по кубу в кубе.

stats = regionprops3(cube_in_cube,'all')
stats=1×18 table
    Volume     Centroid      BoundingBox                     SubarrayIdx                          Image         EquivDiameter    Extent    VoxelIdxList       VoxelList         PrincipalAxisLength        Orientation    EigenVectors    EigenValues      ConvexHull        ConvexImage      ConvexVolume    Solidity    SurfaceArea
    ______    ___________    ____________    ____________________________________________    _______________    _____________    ______    _____________    _____________    __________________________    ___________    ____________    ____________    _____________    _______________    ____________    ________    ___________

      27      5    5    2    [1x6 double]    [1x3 double]    [1x3 double]    [1x3 double]    [3x3x3 logical]       3.7221          1       [27x1 double]    [27x3 double]    3.4641    3.4641    3.4641    0    0    0    [3x3 double]    [3x1 double]    [24x3 double]    [3x3x3 logical]         27            1           41.07   

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

свернуть все

Объемное двухуровневое изображение, заданное как 3-D логический массив.

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

Связанные компоненты, заданные как структура, возвращенная bwconncomp. Структура CC должна представлять 3-D изображение, то есть, CC.ImageSize должен быть 1 3 вектор. Структура CC, должно быть, также была создана с помощью 3-D значения возможности соединения, такой как 6, 18, или 26.

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

Матрица метки, заданная как 3-D числовой массив. regionprops3 обрабатывает пиксели с отрицательным знаком как фон и округляет в меньшую сторону входные пиксели, которые не являются целыми числами. Положительные целочисленные элементы L соответствуют различным областям. Например, набор элементов L, равного 1, соответствует области 1; набор элементов L, равного 2, соответствует области 2; и так далее.

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

Тип измерения, заданного как список, разделенный запятыми строк или векторов символов, массива ячеек строк или векторов символов, 'all' или 'basic'. Имена свойства являются нечувствительными к регистру и могут быть сокращены.

  • Если вы задаете 'all', regionprops3 вычисляет все измерения формы и, если вы задали полутоновое изображение, все измерения пиксельного значения.

  • Если вы задаете 'basic' или не задаете аргумент properties, то regionprops3 вычисляет только 'Volume', 'Centroid' и измерения 'BoundingBox'.

В следующей таблице перечислены все свойства, которые обеспечивают измерения формы. Таблица Voxel Value Measurements приводит дополнительные свойства, которые допустимы только, когда вы задаете полутоновое изображение.

Сформируйте измерения

PropertyName Описание
'BoundingBox'Самый маленький кубоид, содержащий область, возвращенную как 1 6 вектор формы [ulf_x ulf_y ulf_z width_x width_y width_z]. ulf_x, ulf_y и ulf_z задают верхний левый передний угол кубоида. width_x, width_y и width_z задают ширину кубоида по каждому измерению.
'Centroid'

Центр массы области, возвращенной как 1 3 вектор формы [centroid_x centroid_y and centroid_z]. Первый элемент, centroid_x, является горизонтальной координатой (или x-координата) центра массы. Второй элемент, centroid_y, является вертикальной координатой (или y-координата). Третий элемент, centroid_z, является плоской координатой (или z-координатой).

'ConvexHull'Самый маленький выпуклый полигон, который может содержать область, возвратился как p-by-3 матрица. Каждая строка матрицы содержит x-, y-, и z-координаты одной вершины полигона.
'ConvexImage'Изображение выпуклой оболочки, возвращенной как объемное двухуровневое изображение (logical) со всеми вокселами в заполненной оболочке (набор к on). Изображение является размером ограничительной рамки области.
'ConvexVolume'Количество вокселов в 'ConvexImage', возвращенном как скаляр.
'EigenValues'Собственные значения вокселов, представляющих область, возвращенную как вектор 3 на 1. regionprops3 использует собственные значения, чтобы вычислить основные длины осей.
'EigenVectors'Собственные вектора вокселов, представляющих область, возвращенную как 3х3 вектор. regionprops3 использует собственные вектора, чтобы вычислить ориентацию эллипсоида, который имеет те же нормированные вторые центральные моменты как область.
'EquivDiameter'Диаметр сферы с тем же объемом как область, возвращенная как скаляр. Вычисленный как (6*Volume/pi)^(1/3).
'Extent'Отношение вокселов в области к вокселам в общей ограничительной рамке, возвращенной как скаляр. Вычисленный как значение Volume, разделенного на объем ограничительной рамки. [Volume/(bounding box width * bounding box height * bounding box depth)]
'Image'Ограничительная рамка области, возвращенной как объемное двухуровневое изображение (logical), который одного размера как ограничительная рамка области. Вокселы on соответствуют области, и всеми другими вокселами является off.
'Orientation'

Углы Эйлера, возвращенные как 1 3 вектор. Углы основаны на правиле правой руки. regionprops3 интерпретирует углы путем рассмотрения источника вдоль x-, y-, и списка представления оси z, подачи и отклонения от курса соответственно. Положительный угол представляет вращение в направлении против часовой стрелки. Операции вращения не являются коммутативными, таким образом, они должны быть применены в правильном порядке, чтобы иметь намеченный эффект. Для получения дополнительной информации смотрите Ссылки.

'PrincipalAxisLength'Длина (в вокселах) главных осей эллипсоида, которые имеют те же нормированные вторые центральные моменты как область, возвратилась как 1 3 вектор. regionprops3 сортирует значения от самого высокого до самого низкого.
'Solidity'Пропорция вокселов в выпуклой оболочке, которые находятся также в области, возвратилась как скаляр. Вычисленный как Volume/ConvexVolume.
'SubarrayIdx'Индексы, используемые, чтобы извлечь элементы в объектной ограничительной рамке, возвратились как массив ячеек, таким образом, что L(idx{:}) извлекает элементы L в объектной ограничительной рамке.
'SurfaceArea'Расстояние вокруг контура области, возвращенной как скаляр. Для получения дополнительной информации смотрите Ссылки.
'Volume'Количество фактического количества вокселов 'on' в области, возвращенной как скаляр. Объем представляет метрику или меру количества вокселов в областях в рамках объемного двухуровневого изображения, BW.
'VoxelIdxList'Линейные индексы вокселов в области, возвращенной как p - вектор элемента.
'VoxelList'Местоположения вокселов в области, возвращенной как p-by-3 матрица. Каждая строка матрицы имеет форму [x y z] и задает координаты одного воксела в области.

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

Измерения значения воксела

PropertyName Описание
'MaxIntensity'Значение воксела с самой большой интенсивностью в области, возвращенной как скаляр.
'MeanIntensity'Среднее значение всех значений интенсивности в области, возвращенной как скаляр.
'MinIntensity'Значение воксела с самой низкой интенсивностью в области, возвращенной как скаляр.
'VoxelValues'Значение вокселов в области, возвращенной как p-by-1 вектор, где p является количеством вокселов в области. Каждый элемент в векторе содержит значение воксела в области.
'WeightedCentroid'Центр области на основе местоположения и значения интенсивности, возвращенного как p-by-3 вектор координат. Первый элемент WeightedCentroid является горизонтальной координатой (или x-координата) взвешенного центроида. Второй элемент является вертикальной координатой (или y-координата). Третий элемент является плоской координатой (или z-координатой).

Типы данных: char | string | cell

Объемное полутоновое изображение, заданное как 3-D числовой массив. Размер изображения должен совпадать с размером двухуровневого изображения BW, связанная структура компонента CC или матрица метки L.

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

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

свернуть все

Значения измерения, возвращенные как таблица. Количество строк в таблице соответствует количеству объектов в BW, CC.NumObjects или max(L(:)). Переменные (столбцы) в каждой строке таблицы обозначают свойства, вычисленные для каждой области, как задано properties.

Ссылки

[1] Леманн, Гэетэн и Дэвид Леглэнд, Эффективное N-мерное поверхностное использование оценки формула Crofton и кодирование по длинам серий, https://hdl.handle.net/10380/3342

[2] Shoemake, Кен, графический IV драгоценных камней, отредактированный Полом С. Хекбертом, Морганом Кофманном, 1994, Pg 222-229.

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

| | |

Введенный в R2017b