【物联网树莓派毕设03】树莓派4B调用百度API快速实现人脸识别
·
一、获取三元组AppID、API Key、Secret Key
2、注册账号并登录
3、打开人脸识别并创建应用



4、添加人脸信息



二、树莓派调用API实现人脸识别
1、前期已经实现了通过VNC连接树莓派,并安装了python3.7 环境
【物联网树莓派毕设02】树莓派4B安装Pyhton3及opencv
2、安装sdk
pip install baidu-aip

3、准备一张人脸图片,可以通过VNC直接将发送到树莓派桌面

4、调用API实现人脸识别
from aip import AipFace
import base64
""" 输入刚刚让记住的3元组 """
APP_ID = '251*******'
API_KEY = 'Foeqm************'
SECRET_KEY = 'tIst***********************'
imageType = "BASE64"
groupIdList = "Admin"#人脸组
filePath="/home/pi/Desktop/1.jpg"#照片路径
client = AipFace(APP_ID, API_KEY, SECRET_KEY)
f=open(filePath,"rb")
data = base64.b64encode(f.read())
f.close()
image=str(data,'UTF-8')
result = client.search(image, imageType, groupIdList)
if result["error_msg"] in "SUCCESS":
print("人脸组:",result["result"]["user_list"][0]["group_id"])
print("用户ID:",result["result"]["user_list"][0]["user_id"])
print("置信度:",result["result"]["user_list"][0]["score"])
else:
print("Error:",result["error_msg"])
5、如果树莓派有连接摄像头,直接用摄像头拍一张进行验证,按下“q”键即可拍照
from aip import AipFace
import base64
import cv2
""" 输入刚刚让记住的3元组 """
APP_ID = '251*******'
API_KEY = 'Foeqm************'
SECRET_KEY = 'tIst***********************'
imageType = "BASE64"
groupIdList = "Admin"#人脸组
cap = cv2.VideoCapture(0)
while(1):
ret,frame = cap.read()
cv2.imshow("capture",frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
cv2.imwrite("camera.jpg",frame)
filePath="/home/pi/Desktop/camera.jpg"#照片路径
client = AipFace(APP_ID, API_KEY, SECRET_KEY)
f=open(filePath,"rb")
data = base64.b64encode(f.read())
f.close()
image=str(data,'UTF-8')
result = client.search(image, imageType, groupIdList)
if result["error_msg"] in "SUCCESS":
print("人脸组:",result["result"]["user_list"][0]["group_id"])
print("用户ID:",result["result"]["user_list"][0]["user_id"])
print("置信度:",result["result"]["user_list"][0]["score"])
else:
print("Error:",result["error_msg"])
break;
cap.release()
cv2.destroyAllWindows()

三、说明
百度有关人脸识别的API还有很多很多,大家可以根据官方文档进行学习。
官方文档: https://ai.baidu.com/ai-doc/FACE/ek37c1qiz
如果有帮助的话,希望大家多多点赞支持一下,感谢!!!
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)