前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >face++人脸识别与人脸库匹配python实现笔记二

face++人脸识别与人脸库匹配python实现笔记二

作者头像
十四君
发布2019-11-27 23:56:15
1.1K0
发布2019-11-27 23:56:15
举报
文章被收录于专栏:UrlteamUrlteam

本文测试了person管理部分,具体的api手册请去官网学习。目标是实现刷脸签到系统。测试功能的源码可以在github上看到https://github.com/luyishisi/The_python_code.git 文件夹是python_face++,测试文件名为test_person.py

零.创建一个人:/person/create

创建一个Faceset

一个Faceset最多允许包含10000个Face。

开发版最多允许创建5个Faceset。

参数

参数名

参数说明

必须

api_key

App的Face++ API Key

api_secret

APP的Face++ API Secret

可选

faceset_name

Faceset的Name信息,必须在App中全局唯一。Name不能包含^@,&=*'”等非法字符,且长度不得超过255。Name也可以不指定,此时系统将产生一个随机的name。

face_id

一组用逗号分隔的face_id, 表示将这些Face加入到该Faceset中

tag

Faceset相关的tag,不需要全局唯一,不能包含^@,&=*'”等非法字符,长度不能超过255。

返回值说明

字段

类型

说明

added_face

int

成功加入的face数量

tag

string

Faceset相关的tag

faceset_name

string

相应Faceset的name

faceset_id

string

相应Faceset的id

测试代码是:
代码语言:javascript
复制
# 步骤2:引用face_id,创建新的person,这里原始的文件有错误,在新的官方文档中,person_name该名为,faceset_name
for name, face in FACES.iteritems():
    rst = api.person.create(api_key=API_KEY,api_secret=API_SECRET,
                            face_id = face['face'][0]['face_id'],faceset_name=name)
    print_result('create person {}'.format(name), rst)

从运行结果可以看到

1
1

返回的数值中,也是一样的字典读取。

一.删除一个人/person/delete

值得注意的是为了从for中获取刚刚插入一个人的person_id我是从定义一个全局变量dic从而获取的,

代码语言:javascript
复制
dic={}
# 步骤2:引用face_id,创建新的person,这里原始的文件有错误,在新的官方文档中,perso
for name, face in FACES.iteritems():
    rst = api.person.create(api_key=API_KEY,api_secret=API_SECRET,
                            face_id = face['face'][0]['face_id'],faceset_name=name
    p = print_result('create person {}'.format(name), rst)
    print('person_id:',rst['person_id'])
    dic = rst
print('person_id2:',dic['person_id'])

# 步骤2.1:引用person_id,删除person,j for name, face in FACES.iteritems(): rst = api.person.delete(api_key=API_KEY,api_secret=API_SECRET, person_id = dic[‘person_id’]) print(rst

)

3
3

他的返回值会给成功与否的信息

二.添加一个人的脸/person/add_face

将一组Face加入到一个Person中。

注意,一个Face只能被加入到一个Person中。

一个Person最多允许包含10000个Face。

参数

参数名

参数说明

必须

api_key

App的Face++ API Key

api_secret

APP的Face++ API Secret

person_name 或 person_id

相应Person的name或者id

face_id

一组用逗号分隔的face_id,表示将这些Face加入到相应Person中。

返回值说明

字段

类型

说明

added

int

成功加入的face数量

success

bool

表示操作是否成功

这个和之前的差别不大了。不做演示。

三.删除Person中的一个或多个Face。/person/remove_face

参数

参数名

参数说明

必须

api_key

App的Face++ API Key

api_secret

APP的Face++ API Secret

person_name 或 person_id

相应Person的name或者id

face_id

一组用逗号分隔的face_id列表,表示将这些face从该Person中删除。开发者也可以指定face_id=all, 表示删除该Person所有相关Face。

返回值说明

字段

类型

说明

removed

int

成功删除的face数量

success

bool

表示操作是否成功

也差不多,主要在于需要列表指定清楚。

四:获取一个person的信息 /person/get_info

应该早点看到这个函数的,这样就不用前面那样全局变量来获取person_id了。

描述

获取一个Person的信息, 包括name, id, tag, 相关的face, 以及groups等信息

参数

参数名

参数说明

必须

api_key

App的Face++ API Key

api_secret

APP的Face++ API Secret

person_id 或 person_name

相应Person的id或name

返回值说明

grouparray含有该Person的Group信息facearray属于该person的face信息

字段

类型

说明

tag

string

person相关的tag

person_name

string

相应person的name

person_id

string

相应person的id

代码语言:javascript
复制
for name, face in FACES.iteritems():
    rst = api.person.get_info(api_key=API_KEY,api_secret=API_SECRET,
                            person_id = dic['person_id'])
    p = print_result('create person {}'.format(name), rst)

代码语言:javascript
复制
这里也是先用person_id来进行查询的,反馈的数据是如下:
4
4

五。重新设置person信息/person/set_info

很简单也类似,不做说明了。

参数

参数名

参数说明

必须

api_key

App的Face++ API Key

api_secret

APP的Face++ API Secret

person_id 或 person_name

相应Person的id或name

可选

name

新的name

tag

新的tag

返回值说明

字段

类型

说明

tag

string

person相关的tag

person_name

string

相应person的name

person_id

string

相应person的id

原创文章,转载请注明: 转载自URl-team

本文链接地址: face++人脸识别与人脸库匹配python实现笔记二

Related posts:

  1. python_face++ 上传本地图片进行解析
  2. 人脸识别考勤系统-第二版本研发手札
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-02-122,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 零.创建一个人:/person/create
    • 参数
      • 返回值说明
        • 测试代码是:
        • 一.删除一个人/person/delete
        • 二.添加一个人的脸/person/add_face
          • 参数
            • 返回值说明
            • 三.删除Person中的一个或多个Face。/person/remove_face
            • 参数
            • 返回值说明
            • 四:获取一个person的信息 /person/get_info
            • 描述
            • 参数
            • 返回值说明
            • 五。重新设置person信息/person/set_info
            • 参数
            • 返回值说明
              • Related posts:
              相关产品与服务
              人脸识别
              腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档