当前位置 博文首页 > python 使用百度AI接口进行人脸对比的步骤

    python 使用百度AI接口进行人脸对比的步骤

    作者:可爱的黑精灵 时间:2021-05-08 18:24

    1. 注册百度云账号

    注册百度智能云,提交申请。

    创建应用获取AppID,API Key,Secret Key。

    2. 安装baidu python api

    人脸对比 API 文档

    pip install baidu-aip

    调用:

    import base64
    from aip import AipFace
    
    APP_ID = '你的 App ID'
    API_KEY = '你的 Api Key'
    SECRET_KEY = '你的 Secret Key'
    
    client = AipFace(APP_ID, API_KEY, SECRET_KEY)
    
    result = client.match([
      {
       'image': str(base64.b64encode(open('D:/chenjy/1.png', 'rb').read()), 'utf-8'),
       'image_type': 'BASE64',
      },
      {
       'image': str(base64.b64encode(open('D:/chenjy/2.png', 'rb').read()), 'utf-8'),
       'image_type': 'BASE64',
      }
     ])
    
    print(result)

    返回值:

    返回主要参数说明:

    参数名 必选 类型 说明
    score float 人脸相似度得分,推荐阈值80分
    face_list array 人脸信息列表
    face_token string 人脸的唯一标志

    3.调用摄像头

    import cv2
    
    cap = cv2.VideoCapture(0) # 打开摄像头
    
    while True:
     ret, frame = cap.read()
     frame = cv2.flip(frame, 1)
    
     cv2.imshow('window', frame)
     cv2.imwrite('D:/chenjy/2.png', frame) # 保存路径
    
     cv2.waitKey(2000)
    
    cap.release()
    cv2.destroyAllWindows()

    4.完整测试程序

    import cv2
    import base64
    from aip import AipFace
    
    APP_ID = '你的 App ID'
    API_KEY = '你的 Api Key'
    SECRET_KEY = '你的 Secret Key'
    
    
    client = AipFace(APP_ID, API_KEY, SECRET_KEY)
    
    
    def get_result():
     result = client.match([
      {
       'image': str(base64.b64encode(open('D:/chenjy/1.png', 'rb').read()), 'utf-8'),
       'image_type': 'BASE64',
      },
      {
       'image': str(base64.b64encode(open('D:/chenjy/2.png', 'rb').read()), 'utf-8'),
       'image_type': 'BASE64',
      }
     ])
    
     if result['error_msg'] == 'SUCCESS':
      score = result['result']['score']
      print(result)
      print('相似度:'+str(score))
     else:
      print('服务器错误')
    
    
    cap = cv2.VideoCapture(0) # 打开摄像头
    
    while True:
     ret, frame = cap.read()
     frame = cv2.flip(frame, 1)
    
     cv2.imshow('window', frame)
     cv2.imwrite('D:/chenjy/2.png', frame) # 保存路径
    
     cv2.waitKey(2000)
    
     get_result()
    
    cap.release()
    cv2.destroyAllWindows()

    结果:

    照片加了模糊处理

    js
    下一篇:没有了