pythonopencv人脸比对_使用OpenCV和Keras进行人脸比较(不是识别或检测)?

您可以使用面嵌入的思想,例如,这是在被高度引用的论文FaceNet中提出的,并在OpenFace中实现(这也是经过预先训练的)。

总体思路是:取一些预处理过的人脸(正面,裁剪,…)嵌入到一个具有特征的低维上,即输入中的相似人脸在输出中的欧几里德距离应较低。

所以在你的例子中:使用嵌入的CNN将你的脸映射到缩小的空间(通常是128大小的向量)并计算欧几里德空间中的距离。当然,你也会聚集人脸,但那不是你的任务。

除了一般的想法之外,这里还有一个好处:openface是一个很好的可供使用的实现,它的主页也解释了这个想法:Use a deep neural network to represent (or embed) the face on a 128-dimensional unit hypersphere.

The embedding is a generic representation for anybody's face. Unlike other face representations, this embedding has the nice property that a larger distance between two face embeddings means that the faces are likely not of the same person.

This property makes clustering, similarity detection, and classification tasks easier than other face recognition techniques where the Euclidean distance between features is not meaningful.

他们甚至有一个比较演示here。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值