调整张量流中的边界框,以适应不同大小的输入图像

时间:2018-05-12 20:45:08

标签: python tensorflow

我正在研究图像问题中的物体检测,我正在使用tensorflow进行神经网络计算。我的图像尺寸为650x650像素,以及一组与这些图像对应的标签。标签只是图像中对象的边界框,框坐标对应于650x650像素图像中的坐标。

现在,我想将这些图像调整为1280x1280。好像我可以使用tf.image.resize_images()函数将图像大小调整为我想要的大小。但是,我仍然需要将边界框的大小调整为新坐标。

tensorflow是否有相应的功能来调整图像标签的大小?我想另一种方法是通过将标签框乘以某种比例因子等手动调整标签框的大小。

1 个答案:

答案 0 :(得分:1)

您应该像大多数对象检测算法一样,根据输入大小缩放边界框坐标:(x, y) --> (x/w, y/h)

这样,

  • 您可以动态更改输入大小(但保持相同的宽高比),而无需更改边界框标签。
  • 由于输出在[0-1]之间缩放,因此网络更容易预测这些分数,而不是绝对值。

你也应该试验,

  • 使用预定义的一组具有特定高度纵横比的边界框,并使用它们的偏移量作为标签。

您可能希望了解当前的艺术算法如何处理其边界框逻辑。 yolo v2 example