主要内容

测量灰度图像中的区域

此示例显示了如何在灰度图像中测量对象的属性。为此,首先将灰度图像段以获取对象的二进制图像。然后,使用地区企业函数分析与二进制图像中每个对象相对应的原始灰度像素值。

步骤1:创建合成图像

使用辅助功能,propssyntheSizeImage,创建一个包含五个不同区域的灰度图像。

i = propssyntheSizeImage;imshow(i)标题(“合成图像”

图包含一个轴对象。带有标题合成图像的轴对象包含类型图像的对象。

步骤2:创建二进制图像

通过创建包含原始图像中对象的二进制图像来分割灰度图像。

bw = i> 0;imshow(bw)标题(“二进制图像”

图包含一个轴对象。带有标题二进制图像的轴对象包含类型图像的对象。

步骤3:使用灰度图像的像素值计算对象属性

地区企业功能支持可以与灰度金宝app图像一起使用的几个属性,包括“加重中心剂”,,,,“平均强度”,,,,“矿物质”, 和“最大程度”。这些属性使用对象的原始像素值进行计算。

例如,您可以使用地区企业计算图像中物体的质心和加权质心。注意如何通过二进制图像(BW)包含您的对象和原始灰度图像()作为参数地区企业

s = regionprops(bw,i,{“质心”,,,,“加重中心剂”});

要将加权质心位置与未加权的质心位置进行比较,请显示原始图像,然后使用抓住阴谋功能,将质心叠加在图像上。

imshow(i)标题(“加权(红色)和未加权(蓝色)质心”);抓住numoBj = numel(s);为了k = 1:numobj图(s(k).weightedcentroid(1),s(k).WeightedCentroid(2),'r*')图(s(k).centroid(1),s(k).centroid(2),'bo'结尾抓住离开

图包含一个轴对象。带有标题加权(红色)和未加权(蓝色)质心的轴对象包含11个类型图像的对象。

步骤4:计算自定义基于像素值的属性

您可以使用“ PixelValues”基于原始灰度图像的像素值执行自定义计算的属性。这“ PixelValues”属性返回包含区域中像素的灰度值的向量。

例如,计算每个区域的标准偏差。

s = regionprops(bw,i,{“质心”,,,,“ PixelValues”,,,,“边界箱”});imshow(i)标题(“区域的标准偏差”) 抓住为了k = 1:numobj s(k).standardDeviation = std(double(s(k).pixelValues)));文本(s(k).centroid(1),s(k).centroid(2),...sprintf('%2.1F',s(k).StandardDeviation),...'edgeColor',,,,'b',,,,'颜色',,,,'r');结尾抓住离开

图包含一个轴对象。带有标题标准区域的轴对象包含6个类型图像,文本的对象。

该图显示了图像中每个对象上叠加的标准偏差测量。您还可以以其他方式查看结果,例如作为条形图显示标签编号的标准偏差。

图栏(1:numobj,[s.standarddeviation])xlabel(“区域标签号”)ylabel(“标准偏差”

图包含一个轴对象。轴对象包含类型栏的对象。

您可以使用图来确定如何分区数据。例如,以下代码标识标准偏差低于50的对象。

SSTD = [S.StandardDeviation];lowstd = find(sstd <50);imshow(i)标题(“具有标准偏差<50”的对象) 抓住为了k = 1:长度(lowstd)矩形('位置',s(lowstd(k))。边界箱,'edgeColor',,,,'y');结尾抓住离开

图包含一个轴对象。具有标准偏差<50的标题对象的轴对象包含2个类型图像的对象,矩形。

也可以看看