学习 closed-form solution image matting

     最近 在 学习 抠图, 网上 找到 不少资料

     抠图 需要 一定的 交互 操作: 一般 需要 一个  trimap 或 一些 scribble

          trimap是在 原图上,把前景(目标区域) 背景 以及 相交 部分 用 不同 的 颜色 笔试出来(一般为 白,黑,灰), 需要trimap的 这类算法 只需要

    利用 前景 和 背景 中 提供的 信息 来 处理 交互区域 就可以了。  不过  抠图 效果 依赖于 trimap的精确度, 而 一个 精确地 trimap 需要 大量时间绘制。

          Scribble 是在原图上用不同颜色(一般为白黑两色)把前景和背景表示出来。 然后 这类算法 以这些信息 来 对 剩余 的 图像部分 处理。 

          在应用上,scribble 方法显然更有 吸引力。 不过 这类 方法 的复杂度 要比 trimap类 高一些。而且 一般来说, 对 scribble的 标记 位置 要求 偏高, 另外

    可能还要 对 一些 参数 进行调节。

        

          Scribble 方法中,看了 lazy snapping 和 closed-form solution to natural image matting.

          因为 后者 有 原作者提供的 代码。 所以 我选择了 后者 进行学习。

          这个 方法 对 scribble 的 位置 很 ‘敏感’, 事实上, 在试验中, 发现 自己 scribble的 图片 都没法 得到 如 例子中 给出的 完美效果。

          而 论文中 给出了 eigenvectors as guide 方法 来 帮助 寻找 进行 scribble 的位置。

          

           不过 因为 相关 知识的 欠缺 和 数学 基础 不够。 还没有 找到 如何 利用 所谓的 ‘smallest  vectors’ 来 寻找 scribble 位置。

          不过 该 论文的作者 在 其 另一篇 关于 抠图 算法 的 论文中(spectral matting) 里大量 讲述 和 利用 eigen vector。

           目前 在 学习这篇论文,希望能 从中 学习 eigenvector的用法。


           推荐一些 论文 和 代码 (在 google中 直接 搜索 即可 ,最好用 google 英文)

                closed-form solution to natural image matting (有matlab 代码)

                lazy snapping (有 zhijie 所写的 c++ 代码 需opencv)

                另外 还有 KNN, learningbased, spectral matting。

                

            还可以在 这里找到很多信息 : http://www.alphamatting.com/

                   

你可能感兴趣的:(Image,Matting,(抠图))