【问题标题】:How to increase the size of a detected rectangle for openCV in python?如何在python中增加openCV检测到的矩形的大小?
【发布时间】:2018-05-08 20:02:36
【问题描述】:

我在 Python3.6 中使用 openCV 来检测图像中的人脸。 它可以很好地检测面部,但我希望矩形包含更多面部(下巴、头发等),因为这些部分对于识别人很重要。我正在使用this code。

如何让程序选择更多人脸?

这是我得到的一个例子(当然是为了隐私而审查的)

【问题讨论】:

  • 使用适当的人脸标志检测方案。例如。 dlib 中的一个(我也认为与 opencv 相比,在可用的人脸处理模型和数据方面更有趣)可以找到像 this 这样的点。找到这些点后,很容易找到周围的矩形。

标签: python python-3.x opencv image-processing face-recognition


【解决方案1】:

创建矩形时,只需设置偏移/填充

padding = 10
cv2.rectangle(img,(x-padding,y-padding),(x+w+padding,y+h+padding),(255,0,0),2)

【讨论】:

  • 是否有内容感知的方法来做到这一点?如果我错了,请纠正我,但这不会在我的示例中包含右侧的部分背景吗?
  • 您可以检测到facial landmarks 并组合矩形以获得更大的bbox,但这需要更多的工作。内部人脸检测执行类似的操作并填充矩形
猜你喜欢
  • 2011-04-19
  • 1970-01-01
  • 2014-02-22
  • 1970-01-01
  • 2023-03-12
  • 1970-01-01
  • 1970-01-01
  • 2020-07-24
  • 2021-06-05
相关资源
最近更新 更多