主要内容

jaccard

用于图像分割的Jaccard相似系数

描述

例子

相似= jaccard (BW1BW2计算二值图像的交集BW1而且BW2的并集除以BW1而且BW2该指数也被称为Jaccard指数。这些图像可以是二值图像、标签图像或分类图像。

例子

相似= jaccard (L1L2计算标签图像中每个标签的Jaccard索引L1而且L2

相似= jaccard (C1C2计算分类图像中每个类别的Jaccard索引C1而且C2

例子

全部折叠

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

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

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

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

掩码= false(大小(I));面具(25:end-25 25: end-25) = true;BW = activecontour(I, mask, 300);

阅读基本真理,以比较分割。

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

计算这个分割的Jaccard指数。

相似度= jaccard(BW, BW_groundTruth);

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

图imshowpair(BW, BW_groundTruth) title([“杰卡德指数=”num2str(相似性)))

图中包含一个axes对象。标题为Jaccard Index = 0.72158的axes对象包含一个类型为image的对象。

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

读取有几个区域要分割的图像。

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”);标题(“种子区域”

图中包含一个axes对象。标题为Seed Regions的axis对象包含7个类型为line、image的对象。

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

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

加载图像的ground truth分割。

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

将分割结果与地面真实情况进行比较。

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

图中包含一个axes对象。标题为“分割结果比较”(左)和“Ground Truth”(右)的axis对象包含一个类型为image的对象。

计算每个分割区域的Jaccard相似指数(IoU)。

相似度= jaccard(L, L_groundTruth)
相似度=3×10.8861 0.5683 0.8414

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

输入参数

全部折叠

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

数据类型:逻辑

第二个二值图像,指定为大小相同的逻辑数组BW1

数据类型:逻辑

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

数据类型:

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

数据类型:

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

数据类型:类别

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

数据类型:类别

输出参数

全部折叠

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

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

  • 标签的图片,相似是一个向量,其中第一个系数是标签1的Jaccard指数,第二个系数是标签2的Jaccard指数,以此类推。

  • 分类图片,相似是一个向量,其中第一个系数是第一类的Jaccard指数,第二个系数是第二类的Jaccard指数,以此类推。

数据类型:

更多关于

全部折叠

Jaccard相似系数

两个集合的Jaccard相似系数一个而且B(也称为交集除以并集或IoU)表示为:

jaccard一个B) = |十字路口一个B) | / |联盟一个B) |

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

jaccard一个B) =TP/ (TP+《外交政策》+FN

Jaccard指数与Dice指数的关联是:

jaccard一个B) =骰子一个B) / (2 -骰子一个B) )

版本历史

介绍了R2017b

另请参阅

|

Baidu
map