Viola-Jones如何面对多种尺寸的脸部探测器?

时间:2013-09-30 14:15:51

标签: haar-wavelet viola-jones

我正在实施Viola-Jones人脸检测器来检测静止图像中的脸部,并且它对于具有与我的训练大小相同大小的图像是可行的。但是我不知道面部检测器如何适用于多个尺寸的面孔?

如果我的图像的训练尺寸是24 * 24并且如果我想检测30 * 30的探测器窗口中的面部,我需要如何重新调整haar-feature以使其适用于30 * 30尺寸的探测器窗口工作具有相同的阈值。

还有一件事,哈尔特征的位置是否也随着不同大小的探测器窗口而变化,如果是的话怎么样?

1 个答案:

答案 0 :(得分:3)

假设您正在使用xywh变量表示在Haar小波内找到的矩形,其中x和{{1 }}表示矩形的左上角相对于探测器的左上边界y其宽度和w高度。您可以使用以下伪代码将每个Haar小波矩形的h因子重新缩放整个检测器:

s

因此,我们假设单个Haar-lke功能的基本大小为24x24像素。此特征由2个矩形for all rectangle i in the Haar wavelet do tempRectangle = rectangle[i]; tempRectangle.x = tempRectangle.x * s tempRectangle.y = tempRectangle.y * s tempRectangle.h = tempRectangle.h * s tempRectangle.w = tempRectangle.w * s //Read the pixels contained in tempRectangle region and //calculate this rectangle's contribution to the feature value //considering the respective weight of rectangle[i]. end for r1=(10,15,8,4)组成,其中r2=(4, 8, 8, 4)。当您将检测器重新缩放r=(x,y,w,h)因子时,此要素矩形应变为s=1.25r1=(12.5, 18.75, 10, 5)