1

大家好,我正在使用谷歌的新人脸 API(链接在这里),它与改进的 FaceDetection 一起使用。您得到的其中一件事是一个地标对象列表,每个对象都有一个 X 和 Y 坐标可供使用。

使用这些坐标,我试图找出图片的中心,但事实证明很难找出正确的数字。

到目前为止,这是我所知道的:

1)与旧方式不同,它不再是 1000、1000 乘 -1000、-1000

2)返回的坐标为浮点格式,为“...地标的(x,y)位置,其中(0, 0)是图像的左上角。该点保证为在图像的范围内。” (来源

3)当我在日志中打印出这些坐标时,我得到的数字似乎与我的屏幕尺寸(1440w,2368h)不匹配。我打印出来的职位的一些例子是:

  • 464.90558,1112.7573
  • -19.159714,218.88104
  • 28.383072,196.1712
  • -130.06908,1071.8779

这是没有意义的,因为我不明白如果左上角是(0,0),坐标如何为负。

所以问题是,这些坐标是如何确定的?是否以某种方式与屏幕尺寸有关?他们是否正在以某种方式使用 DP 进行转换?他们有静电帽吗?

谢谢大家,

PGMac

4

1 回答 1

2

坐标是图像的像素坐标。

如果面部超出图像的顶部和/或左侧边缘,则这些坐标可能为负值。即使头部可能不完全在照片中,人脸检测器也会根据可见的内容估计超出图像边界的人脸边界框。

于 2016-09-06T15:22:34.577 回答