主要内容

jaccard

Jaccard相似系数用于图像分割

描述

例子

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

例子

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

相似= jaccard (C1C2计算分类图像中每个类别的Jaccard索引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”);

计算这个分段的Jaccard指数。

相似度= jaccard(BW, BW_groundTruth);

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

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

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

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

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

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进行可视化比较。

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

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

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

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

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

输入参数

全部折叠

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

数据类型:逻辑

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

数据类型:逻辑

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

数据类型:

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

数据类型:

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

数据类型:类别

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

数据类型:类别

输出参数

全部折叠

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

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

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

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

数据类型:

更多关于

全部折叠

杰卡德相似系数

两个集合的Jaccard相似系数一个而且B(也被称为交集超过联合或IoU)表示为:

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

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

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

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

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

版本历史

在R2017b中引入

另请参阅

|