骰子
用于图像分割的Sørensen-Dice相似系数
描述
例子
二值分割中计算骰子相似系数
读取带有要分割的对象的图像。将图像转换为灰度,并显示结果。
一个= imread (“hands1.jpg”);I = im2gray(一个);图imshow(我)标题(原始图像的)
使用主动轮廓(蛇形)分割手。
掩码= false(大小(I));面具(25:end-25 25: end-25) = true;BW = activecontour(I, mask, 300);
读在地面真理分割。
BW_groundTruth = imread (“hands1-mask.png”);
根据地面真相计算活动轮廓分割的Dice索引。
相似度=骰子(BW, BW_groundTruth);
把面具叠在一起展示。颜色表示面具的不同。
图imshowpair(BW, BW_groundTruth) title([“骰子指数=”num2str(相似性)))
计算多区域分割的骰子相似系数
这个例子展示了如何将一个图像分割成多个区域。然后,该示例计算每个区域的Dice相似系数。
读取有几个区域要分割的图像。
RGB = imread (“yellowlily.jpg”);
为三个区域创建涂鸦,区分它们的典型颜色特征。第一个区域将黄花分类。第二个区域对绿色茎叶进行分类。最后一个区域将棕色污垢分为图像的两个单独的小块。区域由一个4元素向量指定,其元素表示ROI左上角的x坐标和y坐标、ROI的宽度和ROI的高度。
Region1 = [350 700 425 120];% [x y w h]格式BW1 = false(大小(RGB, 1),大小(RGB, 2));BW1 (region1 (2): region1 region1 (2) + (4), region1 (1): region1 (1) + region1 (3)) = true;Region2 = [800 1124 120 230];BW2 = false(大小(RGB, 1),大小(RGB, 2));BW2 (region2 (2): region2 region2 (2) + (4), region2 (1): region2 (1) + region2 (3)) = true;Region3 = [20 1320 480 200;1010 290 180 240];BW3 = false(大小(RGB, 1),大小(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”);标题(“种子区域”)
利用基于测地线距离的颜色分割将图像分割为三个区域。
L = imseggeodesic (RGB, BW1、BW2 BW3,“AdaptiveChannelWeighting”,真正的);
加载图像的ground truth分割。
L_groundTruth =双(imread (“yellowlily-segmented.png”));
将分割结果与地面真实情况进行比较。
图蒙太奇({label2rgb (L), label2rgb (L_groundTruth)})标题(“分割结果(左)与Ground Truth(右)的比较”)
计算每个分割区域的Dice相似指数。第二个区域的Dice相似指数明显更小。这一结果与视觉对比的分割结果一致,将图像右下角的污垢错误地归类为树叶。
相似度=骰子(L, L_groundTruth)
相似度=3×10.9396 0.7247 0.9139
输入参数
输出参数
相似
-骰子相似系数
数字标量|数字向量
骰子相似系数,作为数值标量或数值向量返回,其值范围为[0,1]。一个相似
的1表示两幅图像的分割是完全匹配的。如果输入数组为:
二进制图像,
相似
是一个标量。标签的图片,
相似
是一个向量,其中第一个系数是标签1的Dice index,第二个系数是标签2的Dice index,依此类推。分类图片,
相似
是一个向量,其中第一个系数是第一类的Dice指数,第二个系数是第二类的Dice指数,依此类推。
数据类型:双
更多关于
骰子相似系数
两组骰子的相似系数一个而且B表示为:
骰子
(一个,B) = 2 * |十字路口
(一个,B) | / (|一个| + |B|)
在|一个|表示集合的基数一个.Dice指数也可以用真阳性表示(TP)、假阳性(《外交政策》)和假阴性(FN):
骰子
(一个,B) = 2 *TP/ (2 *TP+《外交政策》+FN)
Dice指数与Jaccard指数的关联是:
骰子
(一个,B) = 2 *jaccard
(一个,B) / (1 +jaccard
(一个,B) )
版本历史
介绍了R2017b
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。