利用百度进行人脸搜索

  

感谢优秀的你打开了小白的文章

希望在看文章的你今天又进步了一点点,离美好生活更近一步!

目录

前言        

实例代码

 返回结果

选择要识别的人脸照片

 人脸搜索

前言        

在上一篇文章利用百度进行人脸注册_am_student的博客-CSDN博客进行人脸注册之后,我们可以将要识别的人脸进行搜索,若在自己的数据库中,那么返回注册号以及姓名,并得出相似得分。如果没有则返回没有此用户。

实例代码

# -*- coding: utf-8 -*-

from aip import AipFace
import cv2
import base64
import sys
from graphics import*
import tkinter as tk
from tkinter import filedialog
from time import sleep
sys.setrecursionlimit(1000000) 
 

APP_ID = '16290061'
API_KEY = '4uKwGeC2Ci7aHbn6dHuYIrGc'
SECRET_KEY = 'KRdPZdtYwLsdEthIGu03jb7GEeRtTUMF'
 
aipFace = AipFace(APP_ID, API_KEY, SECRET_KEY)


def face_search(filepath):  
    with open(filepath, 'rb') as fp:
        base64_data = base64.b64encode(fp.read())
    image = str(base64_data, 'utf-8')
    imageType="BASE64"
    groupIdList='face'
    result=aipFace.search(image,imageType,groupIdList)
    img = cv2.imread(filepath)
    cv2.imshow('img', img)
    if (result['result']['user_list'][0]['score']>=70):
        win = GraphWin('人脸搜索结果',300,300)
        Text(Point(win.getWidth()/2, 40), "搜索结果:").draw(win)
        Text(Point(win.getWidth()/2, 65), result['result']['user_list'][0]['user_info']).draw(win)
        Text(Point(win.getWidth()/2, 120), "相似得分为:").draw(win)
        Text(Point(win.getWidth()/2, 145), result['result']['user_list'][0]['score']).draw(win)
        win.getMouse()
        win.close()
    else:
        win = GraphWin('人脸搜索结果',300,300)
        Text(Point(win.getWidth()/2, 40), "查找无结果……").draw(win)
        Text(Point(win.getWidth()/2, 120), "建议您先在人脸库中注册").draw(win)       
        win.getMouse()
        win.close()

if __name__=='__main__':
    
    filepath = "C:\\Users\\ZXY13\\Desktop\\train_face\\1.jpg"
    win = GraphWin('人脸搜索', 500, 90)
    win.setBackground("yellow")
    Text(Point(win.getWidth()/2, 40), "请在文件夹中选择要搜索的人脸图片").draw(win)
    sleep(1)
    filepath = filedialog.askopenfilename()
    face_search(filepath)

  

 返回结果

选择要识别的人脸照片

 

 人脸搜索

我们在上一次已经进行了人脸注册,在信息库中已经包含了此人的照片以及名称,那么我们在搜索时候就可以得到我们所需要此人的信息。此人的名字为小白,与在数据库中存储的信息的照片相似度为96.45%.

 本代码可以通过公众号获取

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进步小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值