调用百度人脸识别接口实现人脸识别

工程实践 专栏收录该内容
10 篇文章 0 订阅

 调用百度人脸识别接口实现人脸识别

目标:

     1.学习使用百度AI开放平台进行人脸识别

     2.将学到的内容:JSON数据,HTTP API调用,base64图片编码与解码

import json
import requests
api1 = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=lVfov6E1oaWZR9f4qIhd9Hjy&client_secret=Gubrc6RnMTdA3Eb8WumHIGrz4vHgCTdy"

api2 = "https://aip.baidubce.com/rest/2.0/face/v3/match?access_token="

# 1. 读取图片数据
def get_img(img1, img2):
    import base64
    with open(img1, "rb") as f:
        pic1 = f.read()
    with open(img2, "rb") as f:
        pic2 = f.read()

    params = json.dumps([
        {"image": str(base64.b64encode(pic1), "utf-8"), "image_type": "BASE64", "face_type": "LIVE", "quality_control": "LOW"},
        {"image": str(base64.b64encode(pic2), "utf-8"), "image_type": "BASE64", "face_type": "IDCARD","quality_control": "LOW"},
    ])
    return params

# 2. 获取token值 拼接API
def get_token():
    response = requests.get(api1)
    access_token = eval(response.text)['access_token']
    api_url = api2 + access_token
    return api_url

# 3. 请求API拿到最终结果
def than_img(img1, img2):
    api_url = get_token()
    params = get_img(img1, img2)

    content = requests.post(api_url, params).text
    score = eval(content)['result']['score']

    if score > 80:
        print("图片相似度:" + str(score) + ",同一个人")
    else:
        print("图片相似度:" + str(score) + ",不是同一个人")
img1="D:\document\mayun1.jpeg"
img2="D:\document\mayun2.jpg"
img3="D:\document\image2.jpg"
than_img(img1, img3)
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

来路与归途

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

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值