CNN对象本地化预处理?

时间:2017-01-12 03:11:01

标签: machine-learning tensorflow computer-vision neural-network conv-neural-network

我试图在ImageNet数据的Tensorflow中使用预训练的VGG16作为对象定位器。在他们的论文中,该小组提到它们基本上只是剥离softmax层并且在4D / 4000D fc层上抛掷以进行边界框回归。我不想在这里做任何想象(滑动窗口,RCNN),只是得到一些平庸的结果。

我对此并不熟悉,我对这里为本地化所做的预处理感到困惑。在论文中,他们说他们将图像缩放到256最短边,然后采取中央224x224裁剪和训练。我看了一遍,无法找到关于如何处理本地化数据的简单解释。

问题:人们通常如何处理边界框?...

  • 你是否使用类似tf.sample_distorted_bounding_box命令的东西,然后根据它重新调整图像?
  • 您是仅重新缩放/裁剪图像本身,然后用变换后的刻度插入边界框?在某些情况下,这不会导致负框坐标吗?
  • 每个图像如何处理多个对象?

    • 您只是从一开始就选择一个边界框,裁剪到那个,然后在这个作物上训练?

    • 或者,您是否将整个(中央裁剪)图像提供给它,然后尝试以某种方式预测一个或多个方框?

  • 这是否会对检测或细分(如MS-CoCo)挑战产生任何影响,还是完全不同?

一切有帮助...... 感谢

1 个答案:

答案 0 :(得分:0)

本地化通常作为滑动窗口的交集来执行,其中网络识别所需对象的存在。

将其推广到多个对象的工作方式相同。

细分更复杂。您可以在填充对象的像素蒙版上训练模型,并尝试输出相同大小的像素蒙版