在快码FOF的新版本中提供了百度云人脸识别的支持库,该支持库可以使用人脸注册、识别的功能【需要下载最新版的快码FOF】
本篇博客介绍一下如何使用人脸识别的相关功能
首先第一步是需要去创建百度云人脸识别的应用接口
创建地址:百度云人脸识别接口创建地址
下面是在百度云创建应用接口和配置的截图:
上面就把整个流程都配置完毕了,接下来编写相关的代码:
<!文档类型 网页类型>
<网页 语言代码="中文">
<网页头部>
<网页信息 文档编码="UTF8" />
<网页信息 名称="页面视图" 关联数据="视图宽度=填充视图宽度,初始缩放值=1,最大缩放值=1,用户缩放状态=假" />
<网页信息 关联HTTP="兼容模式" 关联数据="最高IE版本" />
<网页标题>Document</网页标题>
</网页头部>
<网页主体>
<按钮 点击回调="注册人脸()">注册人脸</按钮>
<按钮 点击回调="搜索人脸()">搜索人脸</按钮>
<脚本>
局部变量 测试账户标识对应信息 = [
{
//账户标识是你自己生成的标识,该标识代表该人脸;一般该标识你需要存入数据库;后续搜索人脸的时候就可以通过该标识获得人脸的相关信息
//这里模拟随便一个数据,用来注册人脸
"账户标识": "12345678912345",
"姓名": "刘亦菲",
"年龄": 25,
"评价": "女神"
}
];
//这里执行相关的JS代码
百度人脸识别类.初始化百度信息("NekKDk4eQhNhDxSsy0Qm6IAM", "V04dEHK6YVlzUJLEy0ifOWMCwyOOUnhC"); //填入AK和SK
定义函数 注册人脸() {
//参数二就是创建分组时的分组ID
//这里模拟注册了一个刘亦菲的人脸,实际业务里面这里应该是你们从摄像头中获得的截图信息
百度人脸识别类.注册人脸信息(测试账户标识对应信息[0]["账户标识"], "123456789", 文件操作类.读入文件到base64(文件操作类.取资源目录() + "/@名称_刘亦菲1.png"), (注册结果) => {
调试输出(注册结果);
如果 (注册结果["状态"] == "成功") {
如果 (注册结果["数据"]) {
如果 (注册结果["数据"]["error_msg"] == "SUCCESS") {
//注册人脸成功
}
}
}
});
}
定义函数 搜索人脸() {
//参数一就是创建分组时的分组ID
//这里的人脸数据我们用了一张跟之前不一样的刘亦菲照片,来搜索刘亦菲是否在人脸库中存在
百度人脸识别类.搜索人脸("123456789", 10, 文件操作类.读入文件到base64(文件操作类.取资源目录() + "/@名称_刘亦菲2.png"), (状态) => {
调试输出(状态);
如果 (状态["状态"] == "成功") {
如果 (状态["数据"]) {
如果 (状态["数据"]["result"]) {
如果 (状态["数据"]["result"]["user_list"]) {
如果 (状态["数据"]["result"]["user_list"].长度 >= 1) {
//搜索到人脸数据了
循环 (局部变量 索引 = 0; 索引 < 状态["数据"]["result"]["user_list"].长度; 索引++) {
如果 (状态["数据"]["result"]["user_list"][索引]["score"] >= 80) {
//只要人脸信息大于80就是可信的数据,我们就可以通过搜索到的账户标识来查询自己的数据库
局部变量 搜索到的人脸标识 = 状态["数据"]["result"]["user_list"][索引]["user_id"];
//这里模拟查询数据库获取了数据
循环 (局部变量 索引 = 0; 索引 < 测试账户标识对应信息.长度; 索引++) {
如果 (测试账户标识对应信息[索引]["账户标识"] == 搜索到的人脸标识) {
//找到这位客户的信息啦
调试输出(测试账户标识对应信息[索引],"搜索到人脸了")
}
}
}
}
}
}
}
}
}
});
}
</脚本>
</网页主体>
</网页>
JavaScript
Copy
下面是一个简单的案例源代码文件: