主要内容

骰子

用于图像分割的Sørensen-Dice相似系数

描述

例子

相似=骰子(BW1BW2)计算二值图像之间的Sørensen-Dice相似系数BW1而且BW2

例子

相似=骰子(L1L2)计算标签图像中每个标签的Dice索引L1而且L2

相似=骰子(C1C2)计算分类图像中每个类别的Dice索引C1而且C2

例子

全部折叠

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

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”);

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

相似度=骰子(BW, BW_groundTruth);

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

figure imshowpair(BW, BW_groundTruth) title(['骰子指数= 'num2str(相似性)))

图中包含一个轴对象。标题为Dice Index = 0.83828的axes对象包含一个image类型的对象。

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

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

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 Regions的axes对象包含7个类型为line、image的对象。

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

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

加载图像的ground truth分割。

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

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

图蒙太奇({label2rgb(L),label2rgb(L_groundTruth)}) title(分割结果(左)和Ground Truth(右)的比较)

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

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

相似度=骰子(L, L_groundTruth)
相似度=3×10.9396 0.7247 0.9139

输入参数

全部折叠

第一个二进制图像,指定为任意维度的逻辑数组。

数据类型:逻辑

第二个二进制映像,指定为大小相同的逻辑数组BW1

数据类型:逻辑

第一个标签图像,指定为任意维的非负整数数组。

数据类型:

第二个标签图像,指定为大小相同的非负整数数组L1

数据类型:

第一个分类图像,指定为a分类任意维数的数组。

数据类型:类别

第二类图像,指定为a分类相同大小的数组C1

数据类型:类别

输出参数

全部折叠

骰子相似系数,以数值标量或数值向量的形式返回,值范围为[0,1]。一个相似Of 1表示两幅图像中的分割是完全匹配的。如果输入数组是:

  • 二进制图像,相似是标量。

  • 标签的图片,相似是一个向量,其中第一个系数是标签1的Dice索引,第二个系数是标签2的Dice索引,依此类推。

  • 分类图片,相似是一个向量,其中第一个系数是第一个类别的Dice索引,第二个系数是第二个类别的Dice索引,依此类推。

数据类型:

更多关于

全部折叠

骰子相似系数

两组骰子的相似系数一个而且B表示为:

骰子一个B) = 2 * |十字路口一个B| / (| .一个| + |B|)

在|一个|表示set的基数一个.Dice指数也可以用真阳性来表示(TP)、误报(《外交政策》)和假阴性(FN):

骰子一个B) = 2 *TP/ (2 *TP+《外交政策》+FN)

Dice指数与Jaccard指数相关,根据:

骰子一个B) = 2 *jaccard一个B) / (1 +jaccard一个B))

版本历史

在R2017b中引入

另请参阅

|