Pyhton之人脸比对
2020-03-14
臭逼话少,先把代码上了
创建应用的方式跟上一篇帖子类似:http://www.anyuer.club/?id=111
源代码如下
import json from urllib import request import base64 # client_id 为官网获取的AK, client_secret 为官网获取的SK # 获取token def gettoken(): # client_id 为官网获取的AK, client_secret 为官网获取的SK host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=fidimLjFuQuf3FIwodbRTN6f' \ '&client_secret=M4oW3SVd2uhzQldgdVLIRPcYjIyFCDdw' my_request = request.Request(host) my_request.add_header('Content-Type', 'application/json; charset=UTF-8') response = request.urlopen(my_request) content = response.read() content = bytes.decode(content) # 转化为字典 content = eval(content[:-1]) return content['access_token'] def imgencode(filepath1, filepath2): f1 = open(filepath1, 'rb') f2 = open(filepath2, 'rb') #参数image:图像base64编码 分别base64编码后的2张图片数据 img1 = base64.b64encode(f1.read()) img2 = base64.b64encode(f2.read()) image_1 = str(img1, 'utf-8') image_2 = str(img2, 'utf-8') return image_1, image_2 def facematch(imagr_1, image_2, access_token): request_url = "https://aip.baidubce.com/rest/2.0/face/v3/match" params = json.dumps( [{"image": image_1, "image_type": "BASE64", "face_type": "LIVE", "quality_control": "LOW"}, {"image": image_2, "image_type": "BASE64", "face_type": "CERT", "quality_control": "LOW"}]).encode(encoding='UTF8') request_url = request_url + "?access_token=" + access_token my_request = request.Request(url=request_url, data=params) my_request.add_header('Content-Type', 'json') response = request.urlopen(my_request) content = response.read() content = bytes.decode(content) content = eval(content) result = content['result'] score = result['score'] return result if __name__ == '__main__': token = gettoken() image_1, image_2 = imgencode('D://001.JPG', 'D://002.JPG') result = facematch(image_1, image_2, token) print(result)
发表评论: