如何在Object Detection API中打印边界框位置

时间:2017-12-01 16:59:57

标签: tensorflow object-detection object-detection-api

我正在使用tensorflow和对象检测api。我想在测试图像中打印对象的边界框位置。这一行显示了vis_util.visualize_boxes_and_labels_on_image_array:

vis_util.visualize_boxes_and_labels_on_image_array(
      image_np,
      np.squeeze(boxes),
      np.squeeze(classes).astype(np.int32),
      np.squeeze(scores),
      category_index,
      use_normalized_coordinates=True,
      line_thickness=8)

我想看看'盒子'里面因为我猜'盒子'可能是商店边界盒位置。所以,我将'boxes'转换为list但是当我在cmd上打印它时,它太复杂了。

对此有何想法?

1 个答案:

答案 0 :(得分:1)

我找到了溶剂。

1)在你引用的代码行之后,写下print(方框)。

2)它将返回[N,4]数组,其中N是检测到的对象数,因此每行都是检测到的具有唯一检测分数的对象。

3)每行有4列,按检测分数的降序表示归一化的[ymin,xmin,ymax,xmax],即。

  • 第一行返回以最高分数检测到的对象的边界框坐标。
  • 第二行返回对象的边界框坐标,得分为第二高,依此类推。

4)要获得精确的坐标,将xmax和xmin乘以图像x轴的上限,并将ymax和ymin乘以y轴的相同值。