一.设计流程
1.导入模块
from aip import AipFace
import base64
import matplotlib.pyplot as plt
Aipface模块:调用百度AipFace做人脸检测
base64模块:对图片数据进行base64格式转码
plt模块:“plt”的设计是为了在不了解python的情况下使用matplotlib轻松绘制科学图形。当前实现将使用json配置文件。
2.网页请求
""" 你的APPID,API_KEY和SECRET_KEY """
APP_ID = '【】'# 你的APP_ID
API_KEY = '【】'# 你的API_KEY
SECRET_KEY = '【】'# 你的SECRET_KEY# 封装成函数,返回获取的client对象
def get_client(APP_ID, API_KEY, SECRET_KEY):
"""
返回client对象
:param APP_ID:
:param API_KEY:
:param SECRET_KEY:
:return:
"""
return AipFace(APP_ID, API_KEY, SECRET_KEY)
这块直接调用AipFace()函数,直接获取网络应答。
(本次所用结构与前两次不太一样,但是思路都一样
如果想用获取access_token的方法,可以参考其他文章:
视频人脸锁定、人脸融合、人数识别+标记)
3.解析网络回执
pic1 = "T.jpg"
pic2 = "Y.jpg"
client = get_client(APP_ID, API_KEY, SECRET_KEY)
result = client.match([
{
'image': str(base64.b64encode(open(pic1, 'rb').read()), 'utf-8'),
'image_type': 'BASE64',
},
{
'image': str(base64.b64encode(open(pic2, 'rb').read()), 'utf-8'),
'image_type': 'BASE64',
}
])
print(result)if result['error_msg'] == 'SUCCESS':
score = result['result']['score']
print('两张图片相似度:', score)
else:
print('错误信息:', result['error_msg'])pc1 = plt.imread(pic1)
pc2 = plt.imread(pic2)
plt.imshow(pc1)
plt.show()
plt.imshow(pc2)
plt.show()
二.结果测试
文章图片
【python学习|python+opencv+百度智能云 人脸识别——人脸相似度对比】三.总结
推荐阅读
- python学习|python+opencv+百度智能云 人脸识别——人数识别+标记
- python|10个非常有趣的Python库,可以玩上一整天
- python|Python数据可视化的3大步骤,你知道吗()
- 大数据|Python的打包神器—Nuitka
- python|Python+AI智能编辑人脸
- python
- 大数据|大消费企业怎样做数字化转型()
- 人工智能|2021 年终总结 和 2022 年 flag
- python|docker-compose命令及yaml文件