Dlib面部检测小物体尺寸

时间:2017-01-22 11:50:08

标签: image-processing dlib

我一直在评估dlib的性能。今天我已经意识到标准的面部检测器(即用dlib :: get_frontal_face_detector()方法创建)可以找到73x73的面。但是我知道,如果没有上采样,dlib可以找到至少80x80个对象。据我所知,标准人脸探测器没有上采样。

我知道dlib :: frontal_face_detector是一个typedef:

typedef object_detector<scan_fhog_pyramid<pyramid_down<6> > > frontal_face_detector;

因此,通过读取此typedef,可以得出结论,此检测器始终按比例缩小图像:5/6 = 0,83。

那么这种情况的解释是什么? 此致。

1 个答案:

答案 0 :(得分:1)

您需要注意上采样某些图像的时间。

如果您查看dlib-example fhog_object_detector_ex.cpp,您会看到它默认情况下将图像上采样2倍。这有时是基于任务的好主意。如果您要检测的对象很远并且您的图像输入很小(例如VGA-res),您应该执行类似的操作(因为您在检测10x10对象时获得了很多乐趣)。

你提到的例子是其他东西,它是这类物体探测器的基本要素。 5/6比率定义了image-pyramid的下采样率。这些是关于某些给定图像的多尺度表示。

为什么我们需要这个(因为它会产生更多的工作):

  • 我们希望以不同的比例检测物体(并非所有面部都是73x73;我们也想要检测面部,如果它是85x85)

当与滑动窗口结合使用时,我们对不同尺度和物体位置有一定的鲁棒性。