我在哪里可以找到与opencv一起使用的面部基准点haarcascade

时间:2012-09-04 06:14:11

标签: opencv face-detection face-recognition

我正在寻找已经训练过的面部基准点haarcascades(左眼左眼,左眼右角,右眼左眼,右眼右角,左眼角,右角,左眼,鼻子的中心和右侧。) 有谁知道我在哪里可以下载已经训练过的haarcascades用于OpenCV的VJ功能?

2 个答案:

答案 0 :(得分:2)

如果我没有错误的话,HaarCascade使用的对象不是特定点。在opencv数据文件夹中已经存在用于鼻子,眼睛和嘴巴的分类器。您可以使用它们检测眼睛,鼻子和嘴巴,而不是通过使用特别精心制作的智能检测算法(使用您的想象力和头脑)找到它们的角落。

这是一个例子;

CascadeClassifier cascade;  
cascade.load("haarcascade_eye.xml");

Mat im = imread("photo.jpg",0); //0 flag for grayscale

vector<Rect> eyes;
cascade.detectMultiScale(im, eyes, 1.2, 3);

for (int i = 0; i < eyes.size(); i++)
{
    Rect r = eyes[i];
    rectangle(im, Point(r.x, r.y), Point(r.x + r.width, r.y+r.height),CV_RGB(0,255,0));
}

imshow("im",im);

此示例在加载的图像中查找眼睛。寻找口鼻也很相似。它将它们视为矩形,我们将这些矩形绘制成图像。我不知道这些矩形是否足够你,但如果你想要更具体的点,如鼻子中心;你需要做更多的处理。

答案 1 :(得分:0)

In this Answer我找到两个图书馆链接,根据opencv查找面部特征点:

以下是两个库: