还是想测试一下效果,腾讯的早开始收费了……

0x00.前言

SDK包实在是在方便了,也不用自己去请求api了……

0x01.开工

地址,创建应用,应用名称我设的“人脸识别”,记录AppIDAPI KeySecret Key之后SDK包初始化需要用到
pip3 install baidu-aip

人脸库为了方便管理写的“年级名”

0x02.新建AipFace

详见文档

1
from aip import AipFace
2
3
""" 你的 APPID AK SK """
4
APP_ID = '你的 App ID'
5
API_KEY = '你的 Api Key'
6
SECRET_KEY = '你的 Secret Key'
7
8
client = AipFace(APP_ID, API_KEY, SECRET_KEY)

人脸检测的返回数据倒是可以存一下,虽然以后也不一定会用上,接口有限制的话就sleep(1)一下即可,代码不详细贴了。

0.03.人脸注册

真正意义上的人脸识别需要先人脸注册

1
import os
2
dir = '***'
3
4
from aip import AipFace
5
""" 你的 APPID AK SK """
6
APP_ID = '***'
7
API_KEY = '***'
8
SECRET_KEY = '***'
9
client = AipFace(APP_ID, API_KEY, SECRET_KEY)
10
groupId = '2015'
11
12
""" 读取图片 """
13
def get_file_content(filePath):
14
    with open(filePath, 'rb') as fp:
15
        return fp.read()
16
17
""" 如果有可选参数 """
18
options = {}
19
options['action_type'] = 'replace'
20
21
if os.path.exists(dir):
22
    dirs = os.listdir(dir)
23
    for dirc in dirs:
24
        if 'py' not in dirc:
25
            print(dirc)
26
            uid = dirc[:-4]
27
            userInfo = ''
28
            image = get_file_content()
29
            client.addUser(uid, userInfo, groupId, image, options)
30
else :
31
    print('dir not exists')

0.04.人脸识别

1
groupId = "group1,group2"
2
3
""" 读取图片 """
4
def get_file_content(filePath):
5
    with open(filePath, 'rb') as fp:
6
        return fp.read()
7
8
image = get_file_content('example.jpg')
9
10
""" 调用人脸识别 """
11
client.identifyUser(groupId, image);
12
13
""" 如果有可选参数 """
14
options = {}
15
options["ext_fields"] = "faceliveness"
16
options["user_top_num"] = 3
17
18
""" 带参数调用人脸识别 """
19
client.identifyUser(groupId, image, options)