我们收到技能节项目的通知是在两周之前,项目要求做个人脸评分系统。
两周时间写一个"人脸评分系统",好像时间比较紧了,还好我们完成了~这个项目是将摄像头捕获到的包含人脸的图像传输到百度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发送检测请求}
③将检测数据返回到页面
项目的下载链接稍后会分享到评论区中