使用渐变上升进行图像分割

时间:2017-06-02 17:10:06

标签: deep-learning conv-neural-network gradient-descent crf

我正在使用通过渐变上升的显着图进行图像分割。 以下是该过程的图片:http://imgur.com/a/h8vBZ

我有一个训练有素的模型可以准确预测我的课程。然后,该模型用于计算具有梯度上升损失的输入图像的梯度。对我来说,这里产生的梯度是模型在预测中所关注的内容的表示。

我运行分位数滤波器来挑选与该类最相关的梯度值(像素),然后从中生成二进制掩码。这很有效,但发现地图在图像中的类周围可以更准确和更紧密。我读到条件随机场作为一种机制来生成更准确和平滑的分割结果,并试图实现这一点,但感觉好像我不完全理解这里产生的梯度。

我的问题是:在这种情况下,渐变究竟代表什么?我的猜测是这些值基本上是像素级预测/像素标签。这相当于一元电位吗?

2 个答案:

答案 0 :(得分:0)

有一种端到端的训练方法,可以将神经网络与CRF结合起来,完全按照您的意愿行事。论文是这样的:https://arxiv.org/pdf/1611.10229.pdf

答案 1 :(得分:0)

根据您的示例图片,我有两条建议。像素标签和电位之间的差异在本教程中有很好的描述:Demo Train

  1. 分位数滤波器在对象上溢出。我怀疑你将图像值标准化到范围[0..255]并且具有这种"波效应"代替感兴趣的对象。如果您首先将图像值缩小某个小于1的因子(例如0,5或0,1),则可以将它们正确地归一化到[0..255]范围并使用阈值提取更准确的类区域。
  2. 您可以为CRF尝试高级成对电位。例如对比敏感电位,甚至concatenated edge potentials。它们可以帮助更准确地细化类对象。 此外,值得尝试添加更多功能来训练一元电位。 HOG或稀疏编码功能可能会有所帮助。