传统图像分割

参考:https://zhuanlan.zhihu.com/p/70758906

发展历史

  1. 1970s - 1980s:早期的图像分割方法主要基于图像的像素值和阈值分割。这些方法简单直观,但对于复杂的图像分割任务效果有限。
  2. 1980s - 1990s:引入基于边缘的分割方法,如Canny边缘检测算法。这些方法通过检测图像中的边缘信息来实现分割,为后续的分割算法提供了基础。
  3. 1990s - 2000s:出现了基于区域的分割方法,如区域生长法和区域分裂与合并法。这些方法通过对相邻像素的合并或分裂实现分割,相比边缘检测方法具有更好的连通性和鲁棒性。
  4. 2000s - 2010s:传统方法中引入了基于图论的分割方法。这些方法将图像转化为图的形式,通过最小割/最大流等算法进行分割。基于图论的方法在图像分割中取得了一定的成功。
  5. 2010s - 至今:深度学习技术的兴起为图像分割带来了革命性的进展。深度学习模型(如卷积神经网络)在图像分割任务中取得了巨大的突破,如全卷积网络(FCN)、语义分割网络(SegNet)、U-Net等。这些方法利用深度学习模型对图像进行端到端的像素级别分割。

传统分割

1.基于阈值的分割方法

该方法主要是给定一个值,将灰度图中大于这个值的像素分为一类,小于这个值的像素分为一类,这样就完成了对图像的分割

阈值法的基本思想是基于图像的灰度特征来计算一个或多个灰度阈值,并将图像中每个像素的灰度值与阈值作比较,最后将像素根据比较结果分到合适的类别中。因此,该方法最为关键的一步就是按照某个准则函数来求解最佳灰度阈值。
阈值法特别适用于目标和背景占据不同灰度级范围的图。
图像若只有目标和背景两大类,那么只需要选取一个阈值进行分割,此方法成为单阈值分割;但是如果图像中有多个目标需要提取,单一阈值的分割就会出现作物,在这种情况下就需要选取多个阈值将每个目标分隔开,这种分割方法相应的成为多阈值分割。

如图所示即为对数字的一种阈值分割方法。
阀值分割方法的优缺点:

  • 计算简单,效率较高;
  • 只考虑像素点灰度值本身的特征,一般不考虑空间特征,因此对噪声比较敏感,鲁棒性不高。

从前面的介绍里我们可以看出,阈值分割方法的最关键就在于阈值的选择。若将智能遗传算法应用在阀值筛选上,选取能最优分割图像的阀值,这可能是基于阀值分割的图像分割法的发展趋势。

2.基于区域的图像分割方法

可以简单理解为,将图像按照给定的区间进行像素点的分类,例如给定0-100为第一类,101-200为第二类,其他为第三类,然后查看图像中的像素点,根据像素点的值满足哪一个条件,就是哪一类

基于区域的分割方法是以直接寻找区域为基础的分割技术,基于区域提取方法有两种基本形式:一种是区域生长,从单个像素出发,逐步合并以形成所需要的分割区域;另一种是从全局出发,逐步切割至所需的分割区域。

2.1种子区域生长

区域生长是从一组代表不同生长区域的种子像素开始,接下来将种子像素邻域里符合条件的像素合并到种子像素所代表的生长区域中,并将新添加的像素作为新的种子像素继续合并过程,知道找不到符合条件的新像素为止,该方法的关键是选择合适的初始种子像素以及合理的生长准则。
区域生长算法需要解决的三个问题:
(1)选择或确定一组能正确代表所需区域的种子像素;
(2)确定在生长过程中能将相邻像素包括进来的准则;
(3)指定让生长过程停止的条件或规则。

2.2区域分裂合并

区域生长是从某个或者某些像素点出发,最终得到整个区域,进而实现目标的提取。而分裂合并可以说是区域生长的逆过程,从整幅图像出发,不断的分裂得到各个子区域,然后再把前景区域合并,得到需要分割的前景目标,进而实现目标的提取。其实如果理解了上面的区域生长算法这个区域分裂合并算法就比较好理解啦。
四叉树分解法就是一种典型的区域分裂合并法,基本算法如下:
(1)对于任一区域,如果H(Ri)=FALSE就将其分裂成不重叠的四等分直到对任意Ri,P(Ri)= TRUE;
(2)对相邻的两个区域Ri和Rj,它们也可以大小不同(即不在同一层),如果条件H(RiURj)=TURE满足,就将它们合并起来;
(3)如果进一步的分裂或合并都不可能,则结束。
其中R代表整个正方形图像区域,P代表逻辑词。
区域分裂合并算法优缺点:
(1)对复杂图像分割效果好;
(2)算法复杂,计算量大;
(3)分裂有可能破怪区域的边界。
在实际应用当中通常将区域生长算法和区域分裂合并算法结合使用,该类算法对某些复杂物体定义的复杂场景的分割或者对某些自然景物的分割等类似先验知识不足的图像分割效果较为理想。

2.3分水岭算法

分水岭算法是一个非常好理解的算法,它根据分水岭的构成来考虑图像的分割,现实中我们可以想象成有山和湖的景象,那么一定是如下图的,水绕山山围水的景象。
分水岭分割方法,是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭。分水岭的概念和形成可以通过模拟浸入过程来说明。在每一个局部极小值表面,刺穿一个小孔,然后把整个模型慢慢浸入水中,随着浸入的加深,每一个局部极小值的影响域慢慢向外扩展,在两个集水盆汇合处构筑大坝,即形成分水岭。
分水岭对微弱边缘具有良好的响应,图像中的噪声、物体表面细微的灰度变化都有可能产生过度分割的现象,但是这也同时能够保证得到封闭连续边缘。同时,分水岭算法得到的封闭的集水盆也为分析图像的区域特征提供了可能。

3.基于边缘检测的分割方法

将边缘检测出来后,选取合适的边缘进行连接。根据连接后的曲线,将图像划分为多个区域,并为每个区域分配标签完成分割

通常不同区域的边界上像素的灰度值变化比较剧烈,如果将图片从空间域通过傅里叶变换到频率域,边缘就对应着高频部分,这是一种非常简单的边缘检测算法。
边缘检测技术通常可以按照处理的技术分为串行边缘检测并行边缘检测

  • 串行边缘检测是要想确定当前像素点是否属于检测边缘上的一点,取决于先前像素的验证结果。
  • 并行边缘检测是一个像素点是否属于检测边缘的一点取决于当前正在检测的像素点以及与该像素点的一些临近像素点。

最简单的边缘检测方法是并行微分算子法,它利用相邻区域的像素值不连续的性质,采用一阶或者二阶导数来检测边缘点。近年来还提出了基于曲面拟合的方法、基于边界曲线拟合的方法、基于反应-扩散方程的方法、串行边界查找、基于变形模型的方法。

image.png

边缘检测的优缺点:
(1)边缘定位准确;
(2)速度快;
(3)不能保证边缘的连续性和封闭性;
(4)在高细节区域存在大量的碎边缘,难以形成一个大区域,但是又不宜将高细节区域分成小碎片;
由于上述的(3)(4)两个难点,边缘检测只能产生边缘点,而非完整意义上的图像分割过程。这也就是说,在边缘点信息获取到之后还需要后续的处理或者其他相关算法相结合才能完成分割任务。
在以后的研究当中,用于提取初始边缘点的自适应阈值选取、用于图像的层次分割的更大区域的选取以及如何确认重要边缘以去除假边缘将变得非常重要。

4.基于图论的分割方法

我们将图像转化为一个特殊的图,一个像素点变为特殊图中的一个顶点,将所有的顶点按照他们之间的关系(如相邻关系)用边连接起来,每条边都有属于自身的权值,我们需要把这些顶点分为背景和目标集合,通过删除权值最小的边,用最小的代价完成顶点的分割。

此类方法把图像分割问题与图的最小割(min cut)问题相关联。首先将图像映射为带权无向图G=,图中每个节点N∈V对应于图像中的每个像素,每条边∈E连接着一对相邻的像素,边的权值表示了相邻像素之间在灰度、颜色或纹理方面的非负相似度。而对图像的一个分割s就是对图的一个剪切,被分割的每个区域C∈S对应着图中的一个子图。而分割的最优原则就是使划分后的子图在内部保持相似度最大,而子图之间的相似度保持最小。基于图论的分割方法的本质就是移除特定的边,将图划分为若干子图从而实现分割。目前所了解到的基于图论的方法有GraphCut,GrabCut和Random Walk等

GraphCut 图割

  • 非常有用和流行的能量优化算法,在计算机视觉领域普遍应用于前背景分割(Image segmentation)、立体视觉(stereo vision)、抠图(Image matting)等。
  • 将一幅图像分为目标和背景两个不相交的部分,那就相当于完成了图像分割。
  • 此类方法把图像分割问题与图的最小割(min cut)问题相关联。最小割把图的顶点划分为两个不相交的子集S和T。这两个子集就对应于图像的前景像素集和背景像素集。可以通过最小化图割来最小化能量函数得到。能量函数由区域项(regional term)和边界项(boundary term)构成。
  • 整个流程的限制是:
    • 算法基于灰度图;
    • 需要人工标注至少一个前景点和一个背景点;
    • 结果为硬分割结果,未考虑边缘介于0~1之间的透明度。

GrabCut分割和抠图

  • 是Graphcut图割的改进版,是迭代的GraphCut。改进包括:
    • 将基于灰度分布的模型替换为高斯混合模型(Gaussian Mixture Model,GMM)以支持彩色图片;
    • 将能一次性得到结果的算法改成了『强大的』迭代流程;将用户的交互简化到只需要框选前景物体即可。
  • 与Graph Cut不同处:
    • Graph Cut的目标和背景的模型是灰度直方图,Grab Cut取代为RGB三通道的混合高斯模型GMM;
    • Graph Cut的能量最小化(分割)是一次达到的,而Grab Cut取代为一个不断进行分割估计和模型参数学习的交互迭代过程;
    • Graph Cut需要用户指定目标和背景的一些种子点,但是Grab Cut只需要提供背景区域的像素集就可以了。也就是说你只需要框选目标,那么在方框外的像素全部当成背景,这时候就可以对GMM进行建模和完成良好的分割了。即Grab Cut允许不完全的标注(incomplete labelling)。
  • 彩色像素值的稀疏问题比灰度图要严重得多(256 vs 17M),所以,继续使用histogram是不现实的,需要信息压缩得更好一点的模型,作者在这里参考前人,对前景和背景各建了K=5的高斯混合模型。
  • GrabCut是按颜色分布和边缘对比度来分割图片的,对一些常见的与此原则相悖的图片,效果确实不好。比如前景人物的帽子、鞋、墨镜,通常颜色跟前景主体有较大区别;再如前景中的孔,有可能由于颜色区分和边缘的对比度不足,导致边缘的惩罚占上风,而没有扣出来背景。所以,GrabCut还是保留了人工修正的操作,定义了两种标记:绝对是背景和可能是前景。对分割错误人工修正后,分割还是可以比较准确的。对自然场景图片的分割,比Bayes matte等方法得到的边缘明显看起来舒服得多。

Random Walk

随机游走算法将图像分割问题转换为无限电阻网络的模型,通过在图上的节点上进行随机游走,根据不同区域的局部相似性来计算像素节点的概率,最终得到分割结果。随机游走算法对于具有复杂纹理和边界的图像分割表现较好。

5.基于能量泛函的分割方法

该方法通常是使用闭合的曲线(轮廓线)把目标包裹进去,通过不断的迭代让轮廓线不断的拟合目标的轮廓来达到分割的目的

该类方法主要指的是活动轮廓模型(active contour model)以及在其基础上发展出来的算法,其基本思想是使用连续曲线来表达目标边缘,并定义一个能量泛函使得其自变量包括边缘曲线,因此分割过程就转变为求解能量泛函的最小值的过程,一般可通过求解函数对应的欧拉(Euler.Lagrange)方程来实现,能量达到最小时的曲线位置就是目标的轮廓所在。按照模型中曲线表达形式的不同,活动轮廓模型可以分为两大类:参数活动轮廓模型(parametric active contour model)和几何活动轮廓模型(geometric active contour model)。

参数活动轮廓模型(parametric active contour model)

   参数活动轮廓模型是基于Lagrange框架,直接以曲线的参数化形式来表达曲线,最具代表性的是由Kasset a1(1987)所提出的Snake模型。该类模型在早期的生物图像分割领域得到了成功的应用,但其存在着分割结果受初始轮廓的设置影响较大以及难以处理曲线拓扑结构变化等缺点,此外其能量泛函只依赖于曲线参数的选择,与物体的几何形状无关,这也限制了其进一步的应用。
Snake模型
  • 参考

  • 在处理如边缘检测、角点识别、动态跟踪以及立体匹配等任务上非常成功。

  • SNAKE模型就是一条可变形的参数曲线及相应的能量函数,以最小化能量目标函数为目标,控制参数曲线变形,具有最小能量的闭合曲线就是目标轮廓。模型的形变受到同时作用在模型上的许多不同的力所控制,每一种力所产生一部分能量,这部分能量表示为活动轮廓模型的能量函数的一个独立的能量项。

  • 基本Snakes模型的能量函数由三项组成,弹性能量和弯曲能量合称内部能量(内部力),用于控制轮廓线的弹性形变,起到保持轮廓连续性和平滑性的作用。而第三项代表外部能量,也被称为图像能量,表示变形曲线与图像局部特征吻合的情况。内部能量仅仅跟snake的形状有关,而跟图像数据无关。而外部能量仅仅跟图像数据有关。在某一点的α和β的值决定曲线可以在这一点伸展和弯曲的程度。最终对图像的分割转化为求解能量函数Etotal(v)极小化(最小化轮廓的能量)。在能量函数极小化过程中,弹性能量迅速把轮廓线压缩成一个光滑的圆,弯曲能量驱使轮廓线成为光滑曲线或直线,而图像力则使轮廓线向图像的高梯度位置靠拢。基本Snakes模型就是在这3个力的联合作用下工作的。

  • snake相对于经典的特征提取方法有以下优点

    • 通过正确设置和项前系数,可交互方式控制snake;
    • 容易操控,因为图像力是以直观的方式表现;
    • 在寻找最小能量状态的时候它们是自主的和自适应的;
    • 可以通过在图像能量函数中加入高斯平滑而对图像尺度敏感;
    • 可以用于跟踪时间或者空间维度上的动态目标。
  • snake的缺点

    • 初始位置不同使得结果不同;
    • 经常陷入局部最小状态,这也许可以通过使用模拟退火技术来克服,代价就是计算时间增加;
    • 在最小化整个轮廓路径上的能量过程中经常忽略微小特征;
    • 精度由能量最小化技术中使用的收敛标准控制;更高的精度要求更严格的收敛标准,因此需要更长的计算时间。
    • 梯度依赖
GVF Snake

几何活动轮廓模型(geometric active contour model)

  • 参考
  • 几何活动轮廓模型的曲线运动过程是基于曲线的几何度量参数而非曲线的表达参数,因此可以较好地处理拓扑结构的变化,并可以解决参数活动轮廓模型难以解决的问题。而水平集(Level Set)方法(Osher,1988)的引入,则极大地推动了几何活动轮廓模型的发展,因此几何活动轮廓模型一般也可被称为水平集方法。
  • 几何活动轮廓模型(Geometric Active Contours Model)是以曲线演化理论和水平集方法为理论基础,继参数活动轮廓模型后形变模型的又一发展,是图像分割和边界提取的重要工具之一。相对于参数活动轮廓模型,几何活动轮廓模型具有很多优点,如可以处理曲线的拓扑变化、对初始位置不敏感、具有稳定的数值解等.
  • 几何活动轮廓模型又可分为基于边界的活动轮廓模型基于区域的活动轮廓模型。基于边界的活动轮廓模型主要依赖图像的边缘信息控制曲线的运动速度。在图像边缘强度较弱或是远离边缘的地方,轮廓曲线运动速度较大,而在图像边缘强度较强的地方,轮廓曲线运动速度较小甚至停止,使得最终的轮廓曲线运动到边缘位置.
CV模型
  • 简洁有效,易于实现
  • CV模型可看作是带边界光滑正则的K-Means两类聚类模型,主要基于图像全局的信息,遇到弱边界容易leak。
  • 水平集演化过程中需要重新初始化
  • 更具水平集方程的离散化迭代 ϕ \phi ϕ的过程中,可能会不稳定,需要进行设置步长

针对上面的三个缺点,有几个经典的改进工作

  • Li C, Kao C Y, GoreJ C, et al.Minimization of region-scalable fittingenergy for image segmentation[J].IEEE transactions on image processing,2008,17(10):1940-1949.
  • Lankton S,Tannenbaum A.Localizingregion-based active contours[J].IEEE transactions on image processing,2008,17(11):2029-2039.
  • Li C, Xu C, Gui C,et al. Distanceregularized level set evolution and itsapplication to image segmentation[J].IEEE transactions on image processing,2010,19(12):3243-3254.
  • Marquez-Neila P,Baumela L, AlvarezL.A morphological approach to curvature-based evolution of curvesand surfaces[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2013,36(1): 2-17.
LBF模型
LIF模型

6.基于聚类的图像分割方法

该方法和K-means的思想类似,只不过聚类的对象变成了像素点,按照样本集合的特征的相似性划分为若干类,以此达到分割的目的。

聚类方法的思想是将样本集合按照其特征的相似性划分为若干类别,使同一类别样本的特征具有较高的相似性,不同类别样本的特征具有较大的差异性。令{z1, z2, z3 …, zn}是样本集合,在图像分割中,样本向量z的每个分量表示一个数值像素属性。例如,分割只基于灰度尺度时,z是一个表示像素灰度的标量。分割的如果是RGB彩色图像,z通常是一个三维向量,这个三维向量的每个分量是RGB三通道的灰度值。k均值聚类的目的就是将样本集合划分为k个满足如下最优准则的不相交的聚类集合C={C1, C2, …, Ck}:
image.png
式中,mi是集合Ci中样本的均值向量(或质心),||z-mi||项是Ci中的一个样本到均值mi的欧式距离。换言之,这个公式说,我们感兴趣的是找到集合C={C1, C2, …, Ck},集合中的每个点到该集合的均值的距离之和是最小的。
基于聚类的区域分割,就是基于图像的
灰度
颜色纹理形状等特征,用聚类算法把图像分成若干类别或区域,使每个点到聚类中心的均值最小。k 均值(k-means)是一种无监督聚类算法。基于 k 均值聚类算法的区域分割,算法步骤为:
(1)初始化算法:规定一组初始均值
(2)将样本分配给聚类:对所有的像素点,计算像素到每个聚类中心的距离,将像素分类到距离最小的一个聚类中;
(3)更新聚类中心:根据分类结果计算出新的聚类中心;
(4)完备性验证:计算当前步骤和前几步中平均向量之间的差的欧几里得范数。计算残差E,即k个范数之和。若E≤T,其中T是一个规定的非负阈值,则停止。否则,返回步骤2。

7.基于超像素的图像分割方法

【概念理解】超像素分割
超像素就是将一张图像划分成若干个连在一起的像素块,这些像素块内的像素彼此相似,而不同块之间的像素差异较大。可以把超像素理解为图像中的“区域”,每个区域内的像素具有相似的颜色、纹理或者其他特征。

超像素图像分割基于依赖于图像的颜色信息空间关系信息将图像分割为远超于目标个数、远小于像素数量的超像素块,达到尽可能保留图像中所有目标的边缘信息的目的,从而更好的辅助后续视觉任务(如目标检测、目标跟踪、语义分割等)。
超像素是由一系列位置相邻,颜色、亮度、纹理等特征相似的像素点组成的小区域,我们将其视为具有代表性的大“像素”,称为超像素。超像素技术通过像素的组合得到少量(相对于像素数量)具有感知意义的超像素区域,代替大量原始像素表达图像特征,可以极大地降低图像处理的复杂度、减小计算量。超像素分割的结果是覆盖整个图像的子区域的集合,或从图像中提取的轮廓线的集合。 超像素的数量越少,丧失的细节特征越多,但仍然能基本保留主要区域之间的边界及图像的基本拓扑
image.png
常用的超像素分割方法有:简单线性迭代聚类(Simple Linear Iterative Clustering,SLIC)、能量驱动采样(Super-pixels Extracted via Energy-Driven Sampling,SEEDS)和线性谱聚类(Linear Spectral Clustering,LSC)。SLIC超像素算法是对上节讨论的k均值算法的一种改进,通常使用(但不限于)包含三个颜色分量和两个空间坐标的五维向量。

SLIC

这个算法突破性的地方有二 :
  1. 它是2010年提出的一种思想简单、实现方便的算法,将彩色图像转化为CIELAB颜色空间和XY坐标下的5维特征向量,然后对5维特征向量构造距离度量标准,对图像像素进行局部聚类的过程。
  2. SLIC算法能生成紧凑、近似均匀的超像素,在运算速度,物体轮廓保持、超像素形状方面具有较高的综合评价,比较符合人们期望的分割效果。其实是从k-means算法演化的,算法复杂度是O(n),只与图像的像素点数有关,而与k值无关。而常规的k均值算法的复杂度是O(kni),i为迭代次数
SLIC主要优点如下:
  1. 生成的超像素如同细胞一般紧凑整齐,邻域特征比较容易表达。这样基于像素的方法可以比较容易的改造为基于超像素的方法。
  2. 不仅可以分割彩色图,也可以兼容分割灰度图。
  3. 需要设置的参数非常少,默认情况下只需要设置一个预分割的超像素的数量。
  4. 相比其他的超像素分割方法,SLIC在运行速度、生成超像素的紧凑度、轮廓保持方面都比较理想。
SLIC算法步骤
  1. 种子像素初始化。将K个超像素中心分布到图像的像素点上。
  2. 微调种子的位置。以K为中心的3×3范围内,移动超像素中心到这9个点中梯度最小的点上。这样是为了避免超像素点落到噪点或者边界上。
  3. 初始化数据。取一个数组label保存每一个像素点属于哪个超像素。dis数组保存像素点到它属于的那个超像素中心的距离。
  4. 对每一个超像素中心x,它2S范围内的点:如果点到超像素中心x的距离(5维)小于这个点到它原来属于的超像素中心的距离,那么说明这个点属于超像素x。更新dis,更新label。
  5. 对每一个超像素中心,重新计算它的位置。
  6. 重复4 5 两步。

SEEDS(Superpixels Extracted via Energy-Driven Sampling)

算法流程:

  1. 初始化设置superpixel,初始设置的即为St
  2. 以block-level或是pixel-level更新St得S,若是E(S)>E(St),则St=S(文中好像写错了,写成了E(S<E(St),这样就变成了能量函数取最小值)
  3. 迭代步骤2,直到次数上限,这时的St即是最终的分割结果

LSC

线性谱聚类(Linear Spectral Clustering,LSC)是 SLIC 的改进方案,可以生成紧凑且均匀的超像素,将图像分割成大小均匀,边界光滑的小块。
LSC 可以生成具有低计算成本的紧凑且均匀的超像素。
谱聚类是从图论中演化出来的算法,其基本思想是把所有数据看做空间中的点,点之间可以用边连接。距离较远的点之间的边权重值较低,而距离较近的点之间的边权重值较高。通过对所有数据点组成的图进行切图,让切图后不同的子图间边权重和尽可能的低,而子图内的边权重和尽可能的高,从而达到聚类的目的。

LSC 具有线性计算复杂性和高内存效率,并且能够保留图像的全局属性。

8.评价指标

k k k:类别总数,如果包括背景的话就是 k k k+1
p i j p_{ij} pij :真实像素类别为 i i i的像素被预测为类别 j j j 的总数量,换句话说,就是对于类别为 i i i 的像素来说,被错分成类别 j j j 的数量有多少。
P i i P_{ii} Pii :真实像素类别为 i i i 的像素被预测为类别 i i i 的总数量,换句话说,就是对于真实类别为 i i i 的像素来说,分对的像素总数有多少。

像素准确率(Pixel Accuracy,PA)

PA的意义很简单,和我们常规的分类准确率计算没有区别,就是把分对的像素总量除以像素总数。

平均像素准确率(mean pixel accuracy, MPA)

MPA是对PA的改进,它是先对每个类计算PA,然后再对所有类的PA求平均。

交并比 (Intersection over Union,IoU)

计算公式为:
I o U = A ∩ B A ∪ B ​ IoU= \frac{A∩B}{A∪B} ​ IoU=ABAB
两个框可以看成是两个像素的集合,它们的交并比等于两个框重合部分的面积除以它们合并起来的面积。
图“交集”中青色区域是两个框的重合面积,
图“并集”中蓝色区域是两个框的相并面积。
用这两个面积相除即可得到它们之间的交并比,如 下图所示。

平均IOU(Mean Intersection over Union,MIoU)

它是分别对每个类计算(真实标签和预测结果的交并比)IOU,然后再对所有类别的IOU求均值。

Dice score

Dice对mask的内部填充比较敏感,它是一种集合相似度度量指标,通常用于计算两个样本的相似度,值阈为[0, 1]。计算公式如下:
image.png
乘以2是因为分母存在重复计算pred和true之间的共同元素的原因。分母为pred和true的并集。
当然Dice也有另一个表达方式,是利用混淆矩阵重的TP,FP,FN来表达:
D i c e = 2 ∗ T P F P + 2 ∗ T P + F N Dice=\frac{2∗TP}{FP+2∗TP+FN} Dice=FP+2TP+FN2TP
该公式原理如下图:

豪斯多夫距离(Hausdorff distance )

Hausdorff distance是描述两组点集之间相似程度的一种量度。它是两个点集之间距离的一种定义形式:假设有两组集合A={a1,…,ap},B={b1,…,bq},则这两个点集合之间的Hausdorff distance定义为:
image.png
其中,
image.png
image.png
‖·‖是点集A和B点集间的距离范式。(如:L2或Euclidean距离).
这里,

  • 式(1)称为双向Hausdorff distance,是Hausdorff distance的最基本形式;
  • 式(2)中的h(A,B)和h(B,A)分别称为从A集合到B集合和从B集合到A集合的单向Hausdorff距离。即h(A,B)实际上首先对点集A中的每个点ai到距离此点ai最近的B集合中点bj之间的距离‖ai-bj‖进行排序,然后取该距离中的最大值作为h(A,B)的值;
  • h(B,A)同理可得。
  • 由式(1)知,双向Hausdorff距离H(A,B)是单向距离h(A,B)和h(B,A)两者中的较大者,它度量了两个点集间的最大不匹配程度。

计算流程

  • 取A集合中的一点a0,计算a0到B集合中所有点的距离,保留最短的距离d0
  • 遍历A集合中所有点,图中一共两点a0和a1,计算出d0和d1
  • 比较所有的距离{ d0, d1 },选出最长的距离d1
  • 这个最长的距离就是h,它是A→B的单向豪斯多夫距离,记为h( A, B )
  • 对于A集合中任意一点a,我们可以确定,以点a为圆心,h为半径的圆内部必有B集合中的
  • 交换A集合和B集合的角色,计算B→A的单向豪斯多夫距离h( B, A ),选出h( A, B )和h( B, A )中最长的距离,就是A,B集合的双向豪斯多夫距离

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值