主要内容

Poly2label.

从roi集合创建标签矩阵

    描述

    例子

    l= poly2label(ROIpositionsroilabelids.图象尺寸创建一个数字标签矩阵l中定义的感兴趣区域(roi)ROIpositionsroilabelids.指定每个ROI的数字IDROIpositions图象尺寸指定输出标签矩阵的大小。

    l= poly2label(ROIpositionsroilabelids.R在空间引用对象中创建一个数字标签矩阵R指定中ROI位置所使用的坐标系统ROIpositions。该功能假定ROI位置是由世界限制定义的R。的图象尺寸的属性R指定标签矩阵的大小l

    例子

    全部折叠

    将图像读入工作区并显示它。

    figure I = imread(“baby.jpg”);imshow(我)

    初始化感兴趣区域的位置单元阵列和图像大小变量。如果你通过Poly2label.包含三个维度的尺寸值,它只使用前两个,-经过-n

    numPolygon = 3;roiPositions =细胞(numPolygon, 1);imSize =大小(I);

    指定三个ROI的坐标roiPositions单元阵列。在本例中,第一个ROI是一个三角形,需要三个角的坐标。另外两个roi是四边形,需要四个角的坐标。

    roiPositions{1} = [500 500;250 1300;1000 500);roiPositions{2} = [1500 1100;1500 1400;2000 1400;2000 700);roiPositions{3} = [80 2600;480 2700;470 3000; 100 3000];

    创建一个标签ID的数组与相同的大小roiPositions单元阵列。

    roilabelid = zeros(numpolygon,1,“uint8”);

    指定与列出roi的顺序对应的标签ID值roiPositions。第一个ROI是一个三角形,所以给它一个标签1。接下来的两个roi都是四边形,所以给它们贴上标签2

    roilabelid(1)= 1;roilabelid(2)= 2;roilabelid(3)= 2;

    在图上画三个rois。

    id = 1:numPolygon drawpolygon('位置', roiPositions {id});结束

    图中包含一个轴对象。axis对象包含4个类型为image, images.roi.polygon的对象。

    根据roi创建标签矩阵。标签矩阵大小相同,-经过-n,作为原始图像。

    L = poly2label (roiPositions roilabelID imSize);

    显示标签矩阵叠加在原始图像上。

    图;B = labeloverlay(左);imshow (B);

    图中包含一个轴对象。axis对象包含一个image类型的对象。

    输入参数

    全部折叠

    坐标向量,指定为1 × -P数值坐标向量的单元格数组,其中P为roi的总数。每个单元格数组元素是年代这种形式的坐标向量[(x1, y1;…;x y],在那里年代为该ROI的顶点总数。每一个xy对定义ROI的顶点。如果ROI形状尚未关闭,则Poly2label.函数自动关闭形状。您可以指定任意数量的roi。

    数据类型:|细胞

    每个ROI的标签,指定为与相同长度的数字矢量ROIpositions论点。向量中的每个标签对应的ROI在关联位置ROIpositions单元阵列。

    Poly2label.指定的值0到输出图像中的所有背景像素。

    数据类型:||int8|int16|INT32.|uint8|uint16|uint32

    输出标签矩阵的大小,指定为2或3元数字矢量。如果您指定了3个元素矢量,则Poly2label.函数只使用前两个维度,-经过-n

    数据类型:

    空间参考信息,指定为imref2d目的。

    输出参数

    全部折叠

    标签矩阵,返回为-经过-n非负值的矩阵,相同的类ROIlabelIDs。像素标记0是背景。

    提示

    • Poly2label.函数将ROI中的像素设置为标签值。了解如何Poly2label.处理仅部分在ROI内的像素,参见poly2mask函数。

    • 当几个ROI的位置相互重叠时,ROI标签具有最低的索引号ROIpositions单元格阵列将覆盖其他ROI。

    介绍了R2020b