人脸检测和比较

时间:2009-11-08 18:58:31

标签: c# opencv computer-vision face-detection face-recognition

我正在为我的文章进行面部检测和比较的小型研究。 目前,我正在使用基于类似基于OpenCV级联的功能的快速人脸检测(我稍后将实施学习)。下一步是进行面部比较。有没有熟知的算法?它会很棒,如果有一些C#代码,解释它们或一些实现它们的dll。

3 个答案:

答案 0 :(得分:8)

Eigenfaces

  

要生成一组特征脸,a   大量的人体数字化图像   在相同的照明下拍摄的脸   条件,归一化为排队   眼睛和嘴巴。他们就是全部   在同一像素重新采样   解析度。特征脸可以   通过提取出的图像数据   称为数学工具的手段   主成分分析(PCA)。

     

现在可以使用特征脸   代表新面孔:我们可以投射一个   新的(平均减去的)图像   特征脸,从而记录如何   新面孔与平均面孔不同。   与每个特征值相关联的特征值   特征脸代表了多少   训练集中的图像不同   那个方向的平均图像。我们   通过投射来丢失信息   特征向量子集上的图像,   但我们通过保持最小化这种损失   那些最大的特征脸   本征值。

Fisherfaces and Eigenfaces

如果您的脸部未对齐,我建议您阅读以下文章:

Support Vector Machines

  

摘要:我们提出了一个基于组件的方法   和面部的两种全球方法   用它来识别和评估它们   尊重对姿势的坚定性   变化。在组件系统中我们   首先找到面部组件,   提取它们并将它们组合成一个   单个特征向量是   由支持向量机分类   (SVM)。

     

两个全球系统识别面孔   通过分类单个特征向量   由灰度值组成   全脸形象。在第一个全球   系统我们训练了一个SVM   每个人的分类器   数据库。第二个系统包括   特定于视点的SVM集合   分类器并涉及聚类   在培训期间。

答案 1 :(得分:6)

我编写了一个教程和演示程序,其中包含免费的源代码,可以通过网络摄像头(也在OpenCV中)实时进行人脸检测和人脸识别:

http://www.shervinemami.info/faceRecognition.html

答案 2 :(得分:1)

来自Beveridge的评估系统。他们实现了三种具有不同指标的人脸识别算法算法是为了实现的 对此进行评估可能很难将它们用于您自己的程序。

我的Question可以在面部识别中找到一些Java API和常规链接。