标题:Qt编写人脸识别人脸比对证件识别
作者:liudianwu
日期:2017-09-17 14:04
内容:
项目需要,将刷卡抓拍到的图像和身份证图像进行比对,判断出是否为同一人,用opencv或者离线SDK做,效率低识别率低,索性直接用web api,我采用的是face++,据说支付宝刷脸也是用的该公司的库,我测试了下,准确度100%。特意花了两天时间写了个类,将处理封装了下。该类已经集成在QFramework中。返回json数据解析使用QScript解析,没有使用qt5中的json类,因为我的目标运行平台为qt4.8。
运行效果:
主要功能:
/**
* face++ 证件识别+人脸识别+人脸比对等功能类 作者:feiyangqingyun(QQ:517216493) 2017-9-16
* 1:可识别身份证正面信息+背面信息
* 2:可识别银行卡信息
* 3:可识别驾驶证+行驶证信息
* 4:可进行人脸识别,人脸比对
* 5:可设置请求地址+用户密钥+应用密钥
* 6:直接传入图片即可,信号返回,毫秒级极速响应
* 7:通用Qt4-Qt5,windows linux 嵌入式linux
*/
核心代码:
void Face::sendData(const QList &parts)
{
//初始化消息体
QHttpMultiPart *multiPart = new QHttpMultiPart(QHttpMultiPart::FormDataType);
//添加用户密钥
QHttpPart keyPart = dataToHttpPart(key.toLatin1(), QVariant("form-data; name=\"api_key\""));
multiPart->append(keyPart);
//添加应用密钥
QHttpPart secretPart = dataToHttpPart(secret.toLatin1(), QVariant("form-data; name=\"api_secret\""));
multiPart->append(secretPart);
//逐个添加消息内容
foreach (QHttpPart part, parts) {
multiPart->append(part);
}
//初始化请求对象
QNetworkRequest request;
request.setUrl(QUrl(url));
//设置openssl签名配置,否则在ARM上会报错
QSslConfiguration conf = request.sslC ..
#1 [liudianwu 09-17 14:09]
#2 [仗剑天涯 09-17 14:41]
#3 [青春的年代 09-18 08:18]
求分享代码
#4 [九重水 09-18 08:40]
这个做演示例子的‘女子’很有意思
#5 [liuchangyin 09-18 10:40]