如何用 Google 视觉 API 检测被剪掉的头部?

How to detect a cropped-off head with Google Vision API?

如何使用 Google Vision API 检测头部是否完全位于图像内部或部分被图像框截断?

3 个示例:

要缩小问题范围,应检测以下情况:

以下内容超出此问题的范围:

我已经查看了文档,但它没有说明任何关于头部裁剪检测的内容。

我不是要代码,而是要是否/如何将 API 用于所描述的目的。因此,问题既不包含任何代码,也不应包含任何代码的答案。如果您正在寻找 API 调用的代码示例,请查看 API 文档中的大量示例调用。

有一个meta discussion关于这个问题。

Image credit

API 确实提供了 boundingPolyfdBoundingPoly 来确定面部(不是头部)在图像中的位置。

即使 API 没有为 "head" 提供边界,下面的例子表明 boundingPoly 相当相当于更大的面部区域,显然可以用作替代。

这是 boundingPoly(红点)和 fdBoundingPoly(蓝点)的 API 结果:

  • 图 1:显示完全可见头部的面部边界。 boundingPoly 被描述为较大的面部区域显然与 "head" 区域相当。
  • 图 2:边界框缺少顶部 4 个点的 y 坐标(2 个红色,2 个蓝色;为了演示目的用 y=0 坐标描绘),可以用作指示剪短的头。
  • 图片 3:API 不会产生任何结果 faceAnnotations,因此可以很容易地将其检测为大幅裁剪的头部或没有任何部分可见头部的图像,这不会在这种情况下区分。