前言

看此文之前,建议先看一下另一篇文章:基于 qt c++和百度智能云API的人脸图像识别应用实例
本文仅对人脸对比部分做描述。

人脸对比概述

上传两张图像数据,计算人脸的相似度。

效果图

接口代码

1、Qimage转base64编码,构造json数据,发起post请求。

void BaiduFaceOnline::FaceMatch(const QImage& image1, const QImage& image2)
{QString img1_base64 = image2base64_str(image1);QString img2_base64 = image2base64_str(image2);QJsonObject post_data1;post_data1.insert("image", img1_base64);post_data1.insert("image_type", "BASE64");QJsonObject post_data2;post_data2.insert("image", img2_base64);post_data2.insert("image_type", "BASE64");QJsonArray img_array;img_array.append(post_data1);img_array.append(post_data2);QJsonDocument document;document.setArray(img_array);QByteArray post_param = document.toJson(QJsonDocument::Indented);QUrl url(FaceMatchUrl + "?access_token=" + AccToken);NetRequest.setUrl(url);NetRequest.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json")); //接口固定connect(NetAccManager,&QNetworkAccessManager::finished,this,&BaiduFaceOnline::FaceMatchReply);NetAccManager->post(NetRequest,post_param);
}

2、接收反馈,解析json数据,使用信号发送至UI。

void BaiduFaceOnline::FaceMatchReply(QNetworkReply* reply)
{if (reply->error() != QNetworkReply::NoError){QMessageBox::warning(0,"","请求错误!");return;}else{QByteArray content = reply->readAll();QJsonParseError jsonError;QJsonDocument doucment = QJsonDocument::fromJson(content, &jsonError);  // 转化为 JSON 文档if (!doucment.isNull() && (jsonError.error == QJsonParseError::NoError)){if (doucment.isObject()){QJsonObject root_object = doucment.object();if (root_object.take("error_code").toInt() == 0 && root_object.take("error_msg").toString() == "SUCCESS"){QJsonObject result_object = root_object.take("result").toObject();emit MatchReply("相似度:" + QString::number(result_object.take("score").toDouble()));}}}reply->deleteLater();}disconnect(NetAccManager,&QNetworkAccessManager::finished,this,&BaiduFaceOnline::FaceMatchReply);
}

源码地址

人脸检测、对比、识别示例源码
无需积分,关注我即可下载。欢迎在评论区提出您的意见和建议,一起探讨。

软件版本

qt 5.12.10

QT + 百度智能云之人脸对比相关推荐

  1. QT + 百度智能云之人脸识别

    人脸识别 如果您对百度的API接口还没有一点点了解的话,建议在看本文之前先看一下AI接入指南和这篇. 基于qt+百度智能云API写的一个人脸识别示例,在用户的人脸库中进行搜索,用户需要创建人脸库和注册 ...

  2. 基于百度智能云的人脸识别登陆系统

    基于百度智能云的人脸识别登陆系统 设计说明 后端项目结构 前端页面 项目版本1下载 使用说明 项目版本1的Gitee链接 项目版本2--基于人脸对比的登陆系统 项目2下载链接 版本2的Gitee链接 ...

  3. 人脸识别(1)----百度智能云接入人脸离别识别SDK(离线采集SDK) 开通文字识别服务

    人脸识别(1)----百度智能云接入人脸离别识别SDK(离线采集SDK)&& 开通文字识别服务 1.打开百度智能云的官网,进行登录,https://console.bce.baidu. ...

  4. Linux下基于百度智能云平台人脸识别

    Linux下基于百度智能云平台人脸识别 1.百度智能云接口及简介 https://cloud.baidu.com/product/face   接口技术文档: 2.人脸检测属性分析项目示例  硬件平台 ...

  5. 微信小程序通过百度智能云实现人脸检测

    可通过微信小程序[在线颜值检测]功能,查看最终效果. 1.注册登录百度智能云 百度智能云-登录 链接 1.1 注册登录登录之后,进入人脸识别页面. 2.创建应用,获取key 2.1 打开[公有云服务] ...

  6. 基于百度智能云的人脸识别系统

    演示视频: [人脸识别]没想到自己做个人脸识别软件居然这么简单! 树莓派人脸识别代码: from picamera.array import PiRGBArray from picamera impo ...

  7. 百度智能云-创建人脸识别应用

    网址:百度AI开放平台-全球领先的人工智能服务平台 (baidu.com) 1. 2.点击立即使用创建应用 3.点击公有云API创建应用 4.输入应用名称与描述,完成创建.

  8. 百度智能云一口气发布 14 个新产品,三大视频解决方案,产品最高降价 50%

    产业智能化的浪潮正在加速传统互联网行业的升级,视频行业将成为最大的受益者.4 月 11 日,在 2019ABC INSPIRE 百度云智峰会上,百度副总裁.百度智能云总经理尹世明宣布,"百度 ...

  9. 百度智能云发布14个新产品 推动互联网基础技术智能升级

    产业智能化的浪潮正在加速传统互联网行业的升级,视频行业将成为最大的受益者.4月11日,在2019ABC INSPIRE百度云智峰会上,百度副总裁.百度智能云总经理尹世明宣布,"百度云&quo ...

最新文章

  1. 一块V100运行上千个智能体、数千个环境,这个「曲率引擎」框架实现RL百倍提速...
  2. POJ2391(最大流Isap+Floyd+二分)
  3. 分支合并 Fork-Join 框架
  4. Cpp 对象模型探索 / delete 运算符内部调用过程分析
  5. python selenium 点击开始按钮_使用Selenium和Python单击一个按钮
  6. php中文歌词,html如何制作滚动歌词
  7. php sql慢查询,一个用户SQL慢查询分析,原因及优化_MySQL
  8. python3速查参考- python基础 3 - - while循环实例 + Continue break的应用 + 列表的初步学习...
  9. 在大项目中,实施顾问主要负责什么具体工作?
  10. android电商组件化分配,android电商组件化设计(含源码):MVP+dagger+组件化
  11. php指令,php命令行下的常用命令
  12. 【爬虫】python爬取微信公众号
  13. 电脑维修常用检修软件技术
  14. 香港流行乐坛三十年(很好的回忆)
  15. 国内quora_处理Quora不真诚问题分类问题
  16. Word删除空白页的方法
  17. python多进程传递参数_Python进程,多进程,获取进程id,给子进程传递参数操作示例...
  18. 配置访问路径自定义的swagger接口说明文档api
  19. 平板电脑:apple、中国挑大梁
  20. unity 转盘记录

热门文章

  1. 一篇文章牢记C/C++指针和引用区别
  2. Android 接入GVoice语音 常见问题
  3. 给elementui的dialog标题下方添加一条线提升观感效果
  4. HDU 2059 龟兔赛跑(DP)
  5. eclipse给mysql修改表数据_Eclipse中java向数据库中添加数据,更新数据,删除数据...
  6. ImportError: cannot import name ‘FLAX_WEIGHTS_NAME‘ from ‘transformers.utils‘ (/root/miniconda3/envs
  7. 如何使用Jpcap 包实现网络监听
  8. 野火A7学习第十一次(驱动无源蜂鸣器)
  9. 克隆虚拟机Centos7,更改各虚拟机IP地址,导致各虚拟机右上角网络标识不见
  10. 小说阅读Autojs源码学习