如何使用Google的Object Detection API的推理脚本获取生成的边界框的坐标?我知道打印框[0] [i]返回图像中第i个检测的预测但这些返回数字的含义究竟是什么?有没有办法可以得到xmin,ymin,xmax,ymax?提前谢谢。
答案 0 :(得分:12)
Google Object Detection API以[ymin,xmin,ymax,xmax]格式和标准化格式(完整说明here)返回边界框。要找到(x,y)像素坐标,我们需要将结果乘以图像的宽度和高度。首先得到图像的宽度和高度:
width, height = image.size
然后,从boxes
对象中提取ymin,xmin,ymax,xmax并乘以得到(x,y)坐标:
ymin = boxes[0][i][0]*height
xmin = boxes[0][i][1]*width
ymax = boxes[0][i][2]*height
xmax = boxes[0][i][3]*width
最后打印方框角的坐标:
print 'Top left'
print (xmin,ymin,)
print 'Bottom right'
print (xmax,ymax)
答案 1 :(得分:3)
您提到的box数组包含此信息,格式为[N,4]数组,其中每行的格式如下: 相对于输入图像大小的标准化坐标中的[ymin,xmin,ymax,xmax]。