LazySnapping

来源:互联网 发布:佛山市数据开放平台 编辑:程序博客网 时间:2024/06/07 13:14

    这个算法是交互式图像分割算法的改进,方法原理和上一篇写的很像,也需要用户标记出一些背景和前景的像素点种子,最大的改进之处在于它建图是的顶点不再是基于像素,而是基于一个个小的区域,我们可以采用分水岭算法和k-meas算法等方法先对图像进行预处理,将图像分割成很多的小区域,然后以这些小区域为顶点,相邻区域建立边,构建一个图,再采用s/t算法进行分割。这篇论文提出的方法主要分为两步:1、对象标记;2、边界编辑。


    原理:

    同理,也是要最小化以下的能量函数,为给顶点i分配标签xi的代价,为相邻顶点i,j分配标签xi,xj的代价:


    计算E1

    先用k-meas算法将用户已标记的背景和前景分别聚类成64簇(用表示),对于一个没有标签的顶点,我们计算它在RGB域的值C(i)到的最小距离,对比其C(i)到的最小距离,选择两者之中最小值所对应的标签作为自己的标签。



    计算E2

    E2 为两个相邻顶点分配不同标签时的代价,两个顶点相似度越大,则E2越大,则其边为目标边界的可能性越小。


            

    

    步骤:

    1、先采用分水岭算法对图像进行预处理,这样处理以后,我们后面进行的步骤就不再是基于像素点,而是基于超像素点来进行了,这也是这篇文章提出的方法一大亮点。

    2、计算E1和E2

    3、采用交互式图像分割中的方法来建图

    4、采用s/t算法分割

    5、边界编辑,优化分割边界

    优点:采用超像素,大大减小了处理的顶点的数目,加快了计算速度

    缺点:采用超像素后,误差会增大,会丢失一些边界的详细信息;需要人工交互,手动初始化对分割的结果影响很大





0 0