regionprops3

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

Описание

пример

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

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

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

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

stats = regionprops3(___,V,properties) измеряет набор свойств для каждой помеченной области в 3-D объемном полутоновом изображении V. Первый вход (BWcc , или 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     {[4 5 6]}    {[4 5 6]}    {[1 2 3]}    {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 логического массива.

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

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

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

Пометьте изображение в виде одного из следующих.

  • 3-D числовой массив. Воксели пометили 0 фон. Воксели пометили 1 составьте один объект; воксели пометили 2 составьте второй объект; и так далее. regionprops3 обрабатывает воксели с отрицательным знаком как фон и округляет в меньшую сторону входные воксели, которые не являются целыми числами. Можно получить числовое изображение метки от маркировки функций такой как watershed или labelmatrix.

  • 3-D категориальный массив. Каждая категория соответствует различной области.

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

Тип измерения в виде списка, разделенного запятыми строк или векторов символов, массива ячеек строк или векторов символов, 'all' или 'basic'.

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

  • Если вы задаете 'basic' или не задавайте properties аргумент, затем regionprops3 вычисляет только 'Volume'центроид, и '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'

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

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

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

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

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

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

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

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

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

свернуть все

Значения измерения, возвращенные как таблица. Количество строк в таблице соответствует количеству объектов в BWcc .NumObjects, или макс. (L(:)). Переменные (столбцы) в каждой строке таблицы обозначают свойства, вычисленные для каждой области, как задано properties. Если входное изображение является категориальным изображением метки L, затем stats включает дополнительную переменную со свойством 'LabelName'.

Ссылки

[1] Леманн, Гэетэн и Дэвид Леглэнд. Эффективное N-мерное поверхностное использование оценки формула Crofton и кодирование по длинам серий, Журнал Понимания, 2012. (https://insight-journal.org/browse/publication/852)

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

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

| | |

Введенный в R2017b