面部识别的在线指标学习

时间:2016-06-30 11:19:02

标签: algorithm machine-learning face-recognition euclidean-distance mahalanobis

我使用OpenFace计算在无约束条件下拍摄的图像中的面部表示(在128D中),这些图像显示照明,时间等方面的显着变化。

根据他们的网站和演示,具有适当阈值的标准欧几里德距离足以能够将这些表示用于"相同 - 不相同"方案。也就是说,给定具有表示v1和v2的两个面,如果eucDist(v1,v2)< 1,则可以确定它们是否属于同一个人。 S.

在实践中,结果并不差,但绝对不是完美的。我想在我的应用程序中做的是使用用户输入来改进预测。

理想情况下,我想执行以下程序:

  • 假设我已经提取了N个面,每个我都有一个表示,它是R ^ 128中的向量。假设这些面属于n个个体(当n明显小于N时)。

  • 我随机选择k个面(当k是一个小数字,比如说10个)并将它们显示给用户,要求她为属于同一个人的面部标记这些面孔。

  • 我现在想要使用用户输入来"调整"欧几里德距离使其表现更好:在她标记为"不相同的面部之间建立距离"她标记为"相同"小。显然,我想以一种概括为N面的整个数据集的方式来做到这一点。

  • "患者#34;用户可以继续标记照片以改善效果。

我知道这涉及"度量学习"我读过马哈拉诺比斯距离之类的东西,但我不确定如何在这个"在线"场景。我想知道是否有人有任何这样的任务的经验,并可以提供一些亮点或给我任何指示。我应该提一下,我并不是真的在寻找"重数学&#34 ;;理想情况下,我想知道是否存在可以根据用户输入提高性能的算法(最好是我可以使用的一些现有实现)。对于初学者,我会对任何改进感到满意,因此它不一定是最好的方法。

谢谢!

0 个答案:

没有答案