从零开始玩人工智能—人脸 API

前文介绍了人脸API,但没有一个完整的功能实现,各个功能的API始终如散开的珍珠一样,不能串成珠链。到底这套API是如何工作的呢?Person、Person Group、FaceList、Face这些不同的对象是怎么发生联系的呢?

     于是,我决定写一个相对完整的简单程序,完成一个对人脸进行识别的功能。

     仔细看了看文档,琢磨了一下。为了实现人脸识别,需要实现以下几个步骤:

1、创建一个Person Group。人需要通过组来进行管理组织。每个组最多有1000个人,免费的每个订阅最多1000人,S0订阅的每个组10000人,每个订阅上限1M组、100M人。

2、创建一个Person。人是Face的拥有着。每个人最多有248张脸的图片。和人关联的脸是持久化的persistedFace,而使用detect等api读取的是非持久的Face。

3、为Person提供几张不同的Face。除了Face,还有FaceList对象,但更多用于分辨类似的脸。我估计要进行人脸识别,用Face对象就可以。

4、对提供的几张Face进行训练。人工智能需要对输入进行训练,利用认知服务进行分析并得到结果。理论上提供训练的数据越多,结果越准确。

5、提供一张用于比对的Face。上传一张图片,让人工智能判断是不是同一个人。

    开始之前我要首先熟悉一下示例代码。前文提供的示例代码和Face API的示例代码使用了不同的模块。示例代码引入了requests这个库,使用它可以更灵活的完成有关HTTP的各类方法特别是传递数据。所以:

     pip install requests

     因为有两种不同的数据headers提交方式json和octet-steam,所以分开写了两个不同的headers头部定义。为了便于使用,把订阅的Key和访问的基础链接分别使用变量进行提供。

    正式开干~首先是创建Person Group。和别的对象不同,PersonGroup的名字和ID都是字符串,只接受小写英文字符和‘-’、‘_’,不多于64个字符。

本文章转载自51CTO博客,如需阅读全文请点击>>>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,174评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,138评论 25 709
  • 《宁向东的清华管理学课》已经更新至110篇,自订购以来我貌似都没有好好学习过,甚至曾想每天一篇思维导图,作为输出,...
    我在时光深处等你阅读 637评论 2 0
  • 我从来不去想明天要怎样?后天又要怎样? 或许人生就是这样重复的过程 ,日复一日.年复一年,有人规划了自己的人生 在...
    北北biu阅读 214评论 0 0