基于百度云的人脸识别打卡系统设计

  • Post author:
  • Post category:其他


				***QT人脸识别打卡系统设计***
  1. 系统设计需求

    计划做一个基于人脸识别的打卡系统,软件开发平台借助QT软件,人脸识别的模型直接调用百度人脸识别算法,使用在线API的调用,完成人脸识别分析。人脸库是整个设计的核心,借助百度云搭建自己的人脸库。打卡记录使用了SQLlite轻型数据库,完成对打卡记录的存储。
  2. 功能设计

    1.管理员用户模块设计,即可对打卡记录进行可视化增删改查操作

    2.普通用户模块,只可查看自己的打卡记录

    3.人脸识别模块设计,完成对人脸的分析,并提取用户相应关键属性,判断是否为人脸库用户,是则打卡并添加记录到数据库。
  3. 系统核心点

    设计的核心点在于如何使用百度人脸识别API,下面我将一步一步分享自己使用方法。

    1.首先注册一个百度云账号,注册完成后就可使用不需要别的验证。打开百度云,选择管理控制台。

    在这里插入图片描述

    打开后选择

    在这里插入图片描述

    进入后点击创建应用

    在这里插入图片描述

    点击创建应用后可以看到,人脸识别检测等接口默认就选择了,因为这是免费的。底下的其他技术,如果还想用别的就可以选上。点击创建。

    在这里插入图片描述

    创建完成后可以得到如下,APIkey和Secret Key是我们后面进行接口调用的核心。

    在这里插入图片描述

    下面我们要添加自己的人脸数据库。点击如下,创建自己的人脸库

    在这里插入图片描述

    先添加用户组,再在里面添加我们的人脸图片,因为,后期的API接口的返回值中,会有我们的对比最相似的人脸所在的位置,即哪个用户组下,叫什么名字(添加人脸图片时只能用英文和下滑线组成)

    在这里插入图片描述

    人脸库添加完成后,我们就可以阅读技术文档了。人脸打卡的核心就是搜索当前人脸是否处在我们的人脸库中,所以我们来看人脸搜索的文档,其他的API调用基本一致,只是参数不同而已。

    在这里插入图片描述

    人脸搜索API简介:请求为URL格式,使用post方法发送。这里说到URL参数必须带上access_token,而access_token的生成要用到如下:

    这里就用到了我们之前说的重点

    APIkey和Secret Key 这是我们进行应用创建时产生的
    在这里插入图片描述

    我们先去生成自己的access_token,这里使用在线工具生成。打开http://coolaf.com/,填写如下:将 【百度云AK】换成自己的APIkey

【百度应用的SK】换成自己的 Secret Key。

在这里插入图片描述

输入完成后点击提交,成功则会出现如下:复制access_token,并保留,百度云在线接口的access_token有效期只有一个月,过期的话我们就得重新自己生成了,不然则无法调用相应的接口。

在这里插入图片描述

在这里插入图片描述

access_token生成完成后,我们接着阅读其下内容:

在这里插入图片描述

请求的URL为 查找,我们可以对照着 下图进行自己需要的URL

在这里插入图片描述

在这里插入图片描述

如下是我们进行发送的参数设置,包头需采用添加 application/json ,这是百度云的规定

在这里插入图片描述

将相关参数设置完成并打包发送后,我们会获得如下:

在这里插入图片描述

在这里插入图片描述

这里我们就先使用 1:m的搜索模型,下面的就先不看了,到这里1:m的搜索文档已经阅读完毕,下面我们来看代码。

4. 部分代码

在这里插入图片描述

在这里插入图片描述

头文件的定义:

在这里插入图片描述
在这里插入图片描述

搜索完成后进行 JSON数据格式的提取;可以先 qDebug出来查看下,

在这里插入图片描述

搜索成功会看到类似于如下数据:
在这里插入图片描述

进行数据提取:

在这里插入图片描述

在这里插入图片描述

5. 分析总结

这里的整个项目并没有写完,后面我会将整个工程拿出来供大家学习。



版权声明:本文为weixin_45817855原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。