我们收到技能节项目的通知是在两周之前,项目要求做个人脸评分系统。

两周时间写一个"人脸评分系统",好像时间比较紧了,还好我们完成了~这个项目是将摄像头捕获到的包含人脸的图像传输到百度AI的云服务器中,然后调用运用了百度AI的人脸对比API分析图中的数据,最后将分析出的数据传送回来,  在使用这个项目时需要连接互联网。

当然百度AI的人脸对比API不会让你免费使用,你必须要成为百度AI的开发者,在搜索栏中输入(AI,baidu,com),在控制台中选择人脸识别,然后注册登录,接着在左边的导航栏中选择需要用的API接口,然后百度就会发给你API Key、Secret Key、AppID。

UI展示:

这个是一个比较浮夸的UI界面,使用的是Boostrapt

项目结构图

Com.detect包中 FaceDetect(人脸检测)

模块功能:

1、通过JAVA程序将图片/照片信息传递到百度AI的人脸识别的(人脸检测)接口

2、获取人脸检测的数据信息

在detect方法中:

①先获取了百度AI人脸识别接口的访问路径

②调用AuthService类中的getAuth方法获取令牌

③准备人脸检测请求所需要的参数(图片数据,图片数据类型)

④向百度AI发送检测请求

Com.face_lib 包中

FaceAdd方法:向人脸库添加用户信息

步骤:①准备添加人脸的url(路径)

②准备添加人脸需要的参数

③获取token

④向百度发送请求

GroupAdd方法:向百度创建用户组

步骤:①准备百度创建用户组请求的url

②准备百度创建用户组需要的数据(参数)

③获取百度令牌

④向百度发送请求

Com.match包中

FaceMatch方法:向百度AI发送人脸对比请求

步骤: ①准备百度AI接口人脸识别的请求路径

②获取百度令牌

③准备人脸对比需要的参数

④向百度AI发送人脸对比的请求

Com.search包中

FaceSearch方法:查找制定的人脸,在一个特定的集合中更像谁?

步骤:   ①准备人脸搜索功能的URL

②准备人脸搜索功能需要的参数

③获取token

④发送人脸搜索请求,获取结果

Com.servlets包中

UploadImageAjax方法:

步骤:①接受图片数据

②将图片数据发送到百度AI:{

1、获取人脸识别接口的访问路径

2、调用AuthService类中的getAuth方法获取令牌

3、准备人脸检测请求所需要的参数

4、设置返回属性

5、向百度AI发送检测请求}     

③将检测数据返回到页面

项目的下载链接稍后会分享到评论区中

技能节-AI人脸识别的更多相关文章

  1. 基于百度AI人脸识别技术的Demo

    编写demo之前首先浏览官方API:http://ai.baidu.com/docs#/Face-API/top 下面是源码: package com.examsafety.test; import ...

  2. AI人脸识别SDK接入 — 参数优化篇(虹软)

    引言 使用了虹软公司免费的人脸识别算法,感觉还是很不错的,当然,如果是初次接触的话会对一些接口的参数有些疑问的.这里分享一下我对一些参数的验证结果(这里以windows版本为例,linux.andro ...

  3. 虹软AI 人脸识别SDK接入 — 参数优化篇

    引言 使用了免费的人脸识别算法,感觉还是很不错的,但是初次接触的话会对一些接口的参数有些疑问的.这里分享一下我对一些参数的验证结果(这里以windows版本为例,linux.android基本一样), ...

  4. 百度AI人脸识别的学习总结

    本文主要分以下几个模块进行总结分析 项目要求:运用百度AI(人脸识别)通过本地与外网之间的信息交互(MQService),从而通过刷脸实现登陆.签字.会议签到等: 1.准备工作: 内网:单击事件按钮— ...

  5. 基于C# 调用百度AI 人脸识别

    一.设置 登录百度云控制台,添加应用-添加人脸识别,查找,对比等. 记住API Key和Secret Key 二.创建Demo程序 1.使用Nuget安装 Baidu.AI 和 Newtonsoft. ...

  6. AI人脸识别的测试重点

    最常见的 AI应用就是人脸识别,因此这篇文章从人脸识别的架构和核心上,来讲讲测试的重点. 测试之前需要先了解人脸识别的整个流程,红色标识代表的是对应AI架构中的各个阶段 首先是人脸采集. 安装拍照摄像 ...

  7. 干货 | AI人脸识别之人脸搜索

    本文档将利用京东云AI SDK来实践人脸识别中的人脸搜索功能,主要涉及到分组创建/删除.分组列表获取.人脸创建/删除.人脸搜索,本次实操的最终效果是:创建一个人脸库,拿一张图片在人脸库中搜索出相似度最 ...

  8. AI人脸识别+换脸

    视频换脸可参考 https://github.com/iperov/DeepFaceLab import dlib.dlib as dlib import numpy import sys impor ...

  9. 体验京东云 Serverless+AI 人脸属性识别

    云原生计算基金会CNCF(Cloud Native Computing Foundation, CNCF)Serverless Whitepaper v1.0对无服务器计算作了如下定义: Server ...

随机推荐

  1. Spring Boot中的事务管理 隔离级别

    在声明事务时,只需要通过value属性指定配置的事务管理器名即可,例如:@Transactional(value="transactionManagerPrimary"). 除了指 ...

  2. 7. 使用Hystrix实现微服务的容错处理

                  使用Hystrix实现微服务的容错处理 7.1. 实现容错的手段 7.1.1. 雪崩效应 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整 ...

  3. Eratos筛法(筛选素数)

    对于n以内的非素数必有k*n1=n(n1<n)  所以 可有p1,2p2,3p3把非素数筛选掉 实现代码: #include<iostream> #include<string ...

  4. How to get full path of StreamWriter

     How to get full path of StreamWriter   In my version of the framework, this seems to work: string f ...

  5. Kafka Eagle 安装

    Kafka Eagle 是一款开源的 Kafka 集群监控系统. 一.下载 https://download.kafka-eagle.org/ 二.安装 # 解压 .tar.gz -C /opt/ / ...

  6. 【8583】ISO8583各域段的说明

    [ISO8583各域段的说明] 1,信息类型(message type)定义位图位置:-格式:定长类型:N4描述:数据包的第一部分,定义数据包的类型.数据类型由数据包的发起者设定,应遵循以下要求:数据 ...

  7. css清除浮动的几种方式,哪种最合适?

    细心的人可能发现了,写的导航条中存在一个问题,那就是使用了float之后,父级盒子的高度变为0了. 我们来写一个例子来看一下,创建一个父级div,并设置border属性,然后下边创建两个子元素span ...

  8. RabbitMQ学习之:(十)AMQP和RabbitMQ介绍 (转贴+我的评论)

    From: http://www.infoq.com/cn/articles/AMQP-RabbitMQ 准备开始 高级消息队列协议(AMQP1)是一个异步消息传递所使用的应用层协议规范.作为线路层协 ...

  9. 一百一十九:CMS系统之将短信验证码和图形验证码放到memcached缓存中

    将两个验证码的视图都放到common蓝图下 from flask import Blueprint, request, make_responsefrom exts import alidayufro ...

  10. Linux高级命令 ==> find、grep、sed、awk

    一.find find命令用来在指定目录下查找文件.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进行显示. 语法 find path ...