骰子
用于图像分割的Sørensen-Dice相似系数
描述
例子
计算骰子相似系数进行二进制分割
读取带有要分割的对象的图像。将图像转换为灰度,并显示结果。
A = imread(“hands1.jpg”);I = im2gray(A);图imshow(I)标题(原始图像的)
使用活动轮廓(蛇)分割手。
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相似系数。
读取包含多个区域的图像进行分割。
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”);标题(“种子区域”)
使用基于测地线距离的颜色分割将图像分割为三个区域。
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(右)的比较)
计算每个分割区域的Dice相似指数。第二个区域的Dice相似指数明显更小。这个结果与分割结果的视觉对比是一致的,分割结果将图像右下角的污物错误地归类为树叶。
相似度=骰子(L, L_groundTruth)
相似度=3×10.9396 0.7247 0.9139
输入参数
输出参数
相似
-骰子相似系数
数字标量|数字向量
骰子相似系数,以数值标量或数值向量的形式返回,值范围为[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))
版本历史
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。