对300x300以上的图像使用OpenCV DNN检测

时间:2019-01-04 13:53:56

标签: python-3.x opencv caffe detection face

我在这里是因为我需要一些建议...

我正在使用面部检测。我已经尝试了一些方法,例如de DLIB Detector,HoG等...

目前,我开始使用基于ResNet .caffemodel的OpenCV DNN检测,但是经过大量尝试,我意识到这种模型对于300x300(HxW)以上的图像不是很好。

请注意,我的图片是1520x2592(HxW)。当我应用调整大小时,几乎所有的面部信息都会丢失,因为原始图像中的面部大约为150x150像素,使用DNN进行尺寸调整以进行检测时,其尺寸大约为30x20(大约)。

我已经尝试过的一些方法: -细分数字 -背景减法

我需要达到的目标: -快速检测 -减少丢脸(未检测到)的数量

挑战: -带有小脸的大图像 -图片中的很多区域都没有使用(但是我无法更改相机的位置)

1 个答案:

答案 0 :(得分:0)

基于SSD的网络是完全卷积的,这意味着您可以更改输入大小。尝试传递不同大小的输入,然后选择一种具有令人满意的性能和准确性的输入。这里有一个示例:http://answers.opencv.org/question/202995/dnn-module-face-detection-poor-results-open-cv-343/

input = blobFromImage(img, 1.0, Size(1296, 760));  // x0.5
要么
input = blobFromImage(img, 1.0, Size(648, 380));  // x0.25