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


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()


结果:

照片加了模糊处理


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM