概述
文章目录
- 人脸注册
- 人脸加载
- 人脸比对
- 人脸识别
- 应用
人脸注册
tom = [...] # (1, 128)
jack = [...] # (1, 128)
np.savez('faces.npz', tom=tom, jack=jack)
人脸加载
def load_embeddings(path):
arrs = np.load(path)
names, embeddings = [], []
for name, embedding in arrs.items():
names.append(name)
embeddings.append(embedding)
embeddings = np.vstack(embeddings)
return np.array(names), embeddings
人脸比对
def compare(embedding, embeddings): # face: (1, 128), embeddings: (None, 128)
# Euclidean distance
return np.sqrt(np.sum(((embeddings - embedding) ** 2), axis=1))
人脸识别
def recognize(embedding, embeddings, names):
result = compare(embedding, embeddings)
index = np.argsort(result)[::-1]
score = result[index][0]
if score < 1.1:
return names[index][0], score
else:
return 'unknown', score
应用
names, embeddings = load_embeddings('faces.npz')
while 1:
faces = [...]
for face in faces:
embedding = [...]
name = recognize(embedding, embeddings, names)
最后
以上就是勤劳楼房为你收集整理的人脸识别后处理流程代码人脸注册人脸加载人脸比对人脸识别应用的全部内容,希望文章能够帮你解决人脸识别后处理流程代码人脸注册人脸加载人脸比对人脸识别应用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复