主要内容

bfscore

图像分割的轮廓匹配评分

描述

例子

分数= bfscore (预测groundTruth计算预测分割之间的BF (Boundary F1)轮廓匹配分数预测真正的分割groundTruth预测而且groundTruth可以是一对用于二进制分割的逻辑数组,也可以是一对用于多类分割的标签或类别数组。

分数精度回忆= bfscore(预测groundTruth属性的精度和召回值预测图像与groundTruth的形象。

___= bfscore(预测groundTruth阈值以指定的阈值作为距离容错,计算BF值,判断边界点是否匹配。

例子

全部折叠

读取带有要分割的对象的图像。将图像转换为灰度,并显示结果。

A = imread(“hands1.jpg”);I = im2gray(A);图imshow(I)标题(原始图像的

图中包含一个轴对象。标题为Original Image的axes对象包含一个Image类型的对象。

使用活动轮廓(蛇)方法分割手。

mask = false(size(I));掩码(25:end-25,25:end-25) = true;BW = activecontour(I, mask, 300);

阅读地面真相分割。

BW_groundTruth = imread(“hands1-mask.png”);

根据地面真实值计算活动轮廓分割的BF分数。

相似度= bfscore(BW, BW_groundTruth);

把面具叠在一起。不同的颜色表示面具的不同。

figure imshowpair(BW, BW_groundTruth) title([“BF分数=”num2str(相似性)))

图中包含一个轴对象。标题为BF Score = 0.76266的axes对象包含一个image类型的对象。

这个例子展示了如何将图像分割成多个区域。然后,该示例计算每个区域的BF分数。

读取包含多个区域的图像进行分割。

RGB = imread(“yellowlily.jpg”);

为三个区域创建区分其典型颜色特征的涂鸦。第一个区域是黄花的分类。第二个区域是绿色的茎和叶。最后一个区域将棕色污垢划分为图像的两个独立补丁。区域由一个4元素向量指定,其元素表示ROI左上角的x坐标和y坐标、ROI的宽度和高度。

Region1 = [350 700 425 120];% [x y w h]格式BW1 = false(size(RGB,1),size(RGB,2));BW1(region1(2):region1(2)+region1(4),region1(1):region1(1)+region1(3)) = true;Region2 = [800 1124 120 230];BW2 = false(size(RGB,1),size(RGB,2));BW2(region2(2):region2(2)+region2(4),region2(1):region2(1)+region2(3)) = true;Region3 = [20 1320 480 200;1010 290 180 240];BW3 = false(size(RGB,1),size(RGB,2));BW3(region3(1,2):region3(1,2)+region3(1,4),region3(1,1):region3(1,1)+region3(1,3)) = true;BW3 (region3 (2, 2): region3 (2, 2) + region3(2、4),region3 (2, 1): region3 (2, 1) + region3(2、3))= true;

在图像上方显示种子区域。

图imshow(RGB)等待visboundaries (BW1“颜色”“r”);visboundaries (BW2“颜色”‘g’);visboundaries (BW3“颜色”“b”);标题(“种子区域”

图中包含一个轴对象。带有标题Seed区域的坐标轴对象包含7个类型为line, image的对象。

使用基于测地线距离的颜色分割将图像分割为三个区域。

L = imseggeodesic(RGB,BW1,BW2,BW3,“AdaptiveChannelWeighting”,真正的);

加载图像的ground truth分割。

L_groundTruth = double(imread(“yellowlily-segmented.png”));

将分割结果与ground truth进行可视化比较。

图imshowpair (label2rgb (L), label2rgb (L_groundTruth),“蒙太奇”)标题(分割结果(左)和Ground Truth(右)的比较

图中包含一个轴对象。标题为Comparison of Segmentation Results(左)和Ground Truth(右)的坐标轴对象包含一个image类型的对象。

计算每个分割区域的BF分数。

相似度= bfscore(L, L_groundTruth)
相似度=3×10.7992 0.5333 0.7466

第二区域的BF分数明显较小。这个结果与分割结果的视觉对比是一致的,分割结果将图像右下角的污物错误地归类为树叶。

输入参数

全部折叠

预测分割,指定为2-D或3-D逻辑、数字或分类数组中。如果预测是数值数组,那么它表示一个标签数组,必须包含数据类型的非负整数

数据类型:逻辑||分类

地面真相分割,指定为2-D或3-D逻辑、数字或分类的大小和数据类型相同的数组预测.如果groundTruth是数值数组,那么它表示一个标签数组,必须包含数据类型的非负整数

数据类型:逻辑||分类

距离容错阈值(以像素为单位),指定为正标量。阈值用于确定边界点是否匹配。如果阈值未指定时,则默认值为图像对角线长度的0.75%。

例子:3.

数据类型:

输出参数

全部折叠

BF分数,作为数值标量或值范围为[0,1]的向量返回。一个分数为1表示物体的轮廓在相应的类中预测而且groundTruth都是天生一对。如果输入数组是:

  • 逻辑阵列,分数为标量,表示前景BF分数。

  • 标签或分类数组,分数是一个向量。的第一个系数分数为第一个前景类的BF分数,第二个系数为第二个前景类的分数,以此类推。

精度,作为数值范围为[0,1]的数值标量或数值向量返回。每个元素表示对象轮廓在相应前景类中的精度。

精度是预测分割边界上足够接近ground truth分割边界的点数与预测边界长度的比值。换句话说,精确度是检测到的真阳性而不是假阳性的比例。

回想一下,作为值范围为[0,1]的数值标量或数值向量返回。每个元素表示对象轮廓在相应前景类中的回忆。

回忆是地面真相分割边界上足够接近预测分割边界的点数与地面真相边界长度的比值。换句话说,回忆率是检测到的真阳性的比例,而不是错过的比例。

更多关于

全部折叠

BF(边界F1)得分

BF分数衡量的是一个对象的预测边界与真实边界的匹配程度。

BF分数被定义为谐波平均值(F1-measure)精度而且回忆具有距离容错的值,以确定预测边界上的点是否与地面真值边界匹配。

分数= 2 *精度回忆/ (回忆+精度

参考文献

[1]克苏尔卡,G., D.拉勒斯,F.佩罗宁。“什么是一个好的语义分割评价指标?”英国机器视觉会议论文集, 2013, pp. 32.1-32.11。

扩展功能

版本历史

在R2017b中引入

全部展开

另请参阅

|

Baidu
map