我正在使用特征脸来处理我正在写的面部识别程序。我有几个关于如何实际生成特征脸的问题:
它们是由很多不同人物的照片或同一个人的很多照片生成的吗?
这些人是否需要包含您想要识别的人?如果没有,那么将如何进行任何类型的比较?
是否为您提供的每个图像确定了特征脸,或者是否创建了一个特征脸来创建一个特征脸?
这完全是关于特征脸的生成或学习阶段。感谢您的帮助或指导我朝着正确的方向前进!
答案 0 :(得分:2)
我实际上发现Eigenfaces on Wikipedia的描述非常有用。回答你的问题:
编辑:回答这个问题,Kevin在评论中添加了问题:
使用特征脸的背后的想法是,您可以通过将特征脸混合在一起来表达脸部的图像。假设您有三个特征脸ef_1, ef_2, ef_3
并且您有一张脸f_1 = a_1 * ef_1 + a_2 * ef_2 + a_3 * ef_3
的图像。无论你想用哪个面来表达,特征脸都不会改变,但系数a = (a_1, a_2, a_3)
是脸部的特征。这是您用来比较两个面孔的方法。
但是为了进入可以使用特征脸的阶段,首先必须将观察到的面与特征脸对齐(注册),这不是微不足道的,而是一个完全不同的主题(参见pxu's回答)。
P.S。:我建议您密切关注Area 51: Computer Vision,这是一个关于计算机视觉的Stack Overflow姐妹网站。
答案 1 :(得分:1)
Nota bene:你需要非常好的面部注册。特征脸在翻译/旋转不变性方面是非常糟糕的。除非你注册好,否则你的结果可能很糟糕。最初的Turk和Pentland论文是开创性的,不仅仅是因为这项技术,而且因为他们收集的数据集的规模和质量使得这种技术得以实现。