CV | Interactive Image Segmentation 图割法分割图像

来源:互联网 发布:ubuntu 添加启动脚本 编辑:程序博客网 时间:2024/05/29 11:12



题外话:最近作息有些混乱,再加上下午的讲座,所以。。。昨天居然忘记更 = =,不过好在一切都过去了,慢慢来!回归正常!


今天看了一篇文章是关于交互式图像分割的,其中提到交互式图像分割算法比较常用的一种形式的能量方程。

E( A ) = lamda · R( A ) + B( A )

其中R是区域项,B为边界项,lamda为权值实数。


然后搜了下相关文献,就找到了以下:

Interactive Graph Cuts for Optimal Boundary & Region Segmentation of Objects in N-D Images

中文译名:N维图像的优化目标边界和区域的交互式图割算法。

这篇文章在谷歌学术上的引用次数是3000+(所以是很值得学习的文章啊!),文章开头就给出了交互式图像分割的能量方程介绍。参考文献如下:(留着接着读)

Exact Maximum a Posteriori Estimation for Binary Images

中文译名:二值图像的精确最大化后验估计。


这两篇文章所用到的能量方程形式大致相似,而后又被很多人效仿。文中提到该能量方程是基于MRF的背景提出的,关于MRF(Markov Random Field)的介绍:点击打开链接 (留着接着读)


下面细说一下该能量方程,假设待分割的图像I,可转化为图结构中的P节点集(节点可以是图中的像素,也可以超像素超体素),p与q节点间的无向边为{ p, q },N为图中所有边的集合。图像分割的结果就是将图像分为前景(object)和背景(background),即转化为二分类问题,图I中的所有节点P中的每个像素不是前景就是背景,分割的结果即每个像素的标签Label值,0表示背景,1为前景。A = ( A1, A2, ... Ap_num )记录整张图的所有节点的标签值,p_num为节点集P中的节点总个数,A中的每个元素为布尔值(非0即1),A则表示分割结果。


文中提到,交互式分割中比较关键的两个要素是区域性和边界性,因而转化为两个软约束得到以下能量方程:


其中,

并且,



公式(1)中的R即为区域项,体现分割中区域性特征的重要性,B为边界项,体现分割中边界的重要性。参数lamda ( >=0 ) 权衡R与B两者之间的关系。R( A )对A中的单一量进行计算,即对每个像素p为前景obj或是背景bkg时,得出的罚值(penalty),对应为Rp( 'obj' )和Rp( 'bkg' )。Rp( · )反映的是像素p,在根据前景或背景得到的某已知强度模型(如,直方图)中的适应度,即p更适合充当前景还是背景。


公式(1)中的B主要体现边界特征在分割A中的重要性。与R不同的是,B{ p, q }反映的是像素p与q之间的不连续性,是一种相关性罚值(penalty)。通常来说,B{ p, q }越大则说明像素p与q越相似,反之B{ p, q }越小则说明p与q越不相似。这种相似性可以简单地用像素点的强度值(intensity:色彩、灰度)来衡量,也可以通过计算p与q的距离来衡量,或是局部的梯度特征等等。


公式(2)可以理解为,对于P中的每个像素(节点)p,分别计算其Rp值,最后加和得到全部分割结果A的区域性特征重要性。公式(3)是基于图中无向边集合的所有边{ p, q },计算两两节点间的相似性,主要依赖可以体现边界特征的衡量方法,如梯度差或强度差等。区域项主要体现在像素自身与整体图的关系,而边界项强调的是两两相邻节点间的关系,这可以理解为相邻节点间的差异也就是梯度(求差)的一种体现,而梯度(求差)是体现边界的重要特征之一。


根据这个能量方程,如何得到分割结果?最小化该能量方程,求出以上能量方程的最终值最小,即可得到相应的分割结果A,从而达到图像分割的效果。












1 0
原创粉丝点击