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

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

目标:

     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)
  • 11
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值