论文:https://ieeexplore.ieee.org/document/9157733
代码: https://github.com/shiyinzhang/Inside-Outside-Guidance
思想概述
作者利用画取一个BBOX 作为前、背景的快速区分,同时在BBOX内进行进行动手动在前景对象上进行交互,最终得到前景目标。 即: 利用边界框提供一个“外部”引导, 利用内部点给出一个“内部”引导。
此外, 内部的手动交互点同时避免了一个问题: 内部指导指的是在位于对象中心周围的内部点击, 这也同时消除了对象歧义, 可能在一个BBOX内部存在了多个对象问题。
网络
提出了一个由粗到细的分割,来解决上述问题【往往直接利用一个好的BackBone,不能对边界进行精细分割】。
粗网络结合了FPN思想和PSP思想。【比较简单,可以看博客FPN, DeepLabV3的相关内容】
细网络则是用来恢复图像的边界细节的, 即利用粗网络多尺度得到的信息进行不同的上采样后,融合得到的
该网络的贡献: 找到一个合适的网络继承由粗到细的思想
网络训练测试
训练
网络使用了端到端训练, 损失函数采用了CE损失, 同时, CoarseNet中以深监督的方式对side loss进行监督。
推理
在推理过程中,通过简单地对最终的网络预测进行阈值化,得到分割掩模。
额外
虽然网络只需要三次交互点就可以进行分割,但我们的框架支持在用户对分割效果不满意的情况下, 进行进一步优化。
我们添加了一个轻量的分支在PSP模块前, 来获取2个来自前景和背景的点击点产生的单通道高斯热力图。
巧的是, 我们发现这个方式更好的改变输入,而且更加高效【减少点击次数】
为了实现这个过程, 在训练期间, 我们使用了迭代训练策略来模拟交互过程【校正误分区域】。具体来说: 我们首先点击三个点【BBOX+物体中心点】, 然后结合一个新的点来自于错误区域的中心点
实现细节
模拟内外点
外部点: 我们从真实对象的最小BBOX上向外扩展10个像素点,该方式模拟人为标注的误差。
内部点: 我们采样一个远离对象边界的点, 同时加上一个随机扰动
消融研究
交互式的迭代训练
当用户不满意交互结果时, 这个时候需要进行迭代式的方式校正分割结果。 特别的, 我们添加一个新的点在最大的误分区域的中心,来实现类似的思想。
上述图得到几个结论:
- 增加点击次数不会对结果带来显著影响
- 增加点击层【refine】比直接进行多次点击效果更好
一个可能的原因是: 内部带你重视位于对象中心周围, 而新添加的校正点通常位于对象的边界, 这导致对象性能降低。
下一篇将怎么盘它~