阿里云人脸比对API封装

微信小程序_阿里云api人脸识别 敲黑板!基本步骤主要代码实现CompareFaceCompareFacegithub链接 说明: 本微信小程序旨在利用 阿里云人脸人体api:CompareFace、DetectBodyCount、DetectLivingFace等实现人脸识别、人脸数目检测、活体检测等功能~ 基本步骤 1.开通阿里云oss,并把权限设置为公共读【私密的话得想办法搞到加密的url,但是因为我比较菜,只能曲线救国,设... 阅读详情

这是根据封装是根据阿里云官方给的Demo进行修改的,当时是因为编写微信小程序云函数需要使用到阿里云人脸比对接口,才对其进行封装的。

记录下来,方便下次使用。

复制下来可以直接使用。

用到的依赖如下,使用npm安装:

  • request
  • url
  • crypto
/**
 * 文件说明:阿里云人脸比对API封装
 */

var request = require('request');
var url = require('url');
var crypto = require('crypto');
var date = new Date().toUTCString()

/////////////////////////////////////////////////////////////////////////
/**
 * 配置信息
 * ak_id :阿里云控制台获取的AccessKey
 * ak_secret :阿里云控制台获取的AccessKeySecret 
 * Api_Url :阿里云控制台获取Api接口地址
 */
// AccessKey
var ak_id = '';
// AccessKeySecret 
var ak_secret = '';
// APIURL
var Api_Url = ''

/**
 * 读取本地图片并转base64编码
 */
// 图片1
var fs = require("fs");
var filePath = "01.jpg";
var imageData = fs.readFileSync(filePath);
var imageBase64 = imageData.toString("base64");
//图片2
var fs = require("fs");
var filePath = "02.jpg";
var imageData = fs.readFileSync(filePath);
var imageBase64_2 = imageData.toString("base64");

var options = {
    url: Api_Url,
    method: 'POST',
    body: '{"type": "1", "content_1":"' + imageBase64 + '","content_2":"' + imageBase64 + '"}',
    headers: {
        'accept': 'application/json',
        'content-type': 'application/json',
        'date': date,
        'Authorization': ''
    }
};
/////////////////////////////////////////////////////////////////////////


md5 = function (buffer) {
    var hash;
    hash = crypto.createHash('md5');
    hash.update(buffer);
    return hash.digest('base64');
};

sha1 = function (stringToSign, secret) {
    var signature;
    return signature = crypto.createHmac('sha1', secret).update(stringToSign).digest().toString('base64');
};

var body = options.body || '';
var bodymd5;
if (body === void 0 || body === '') {
    bodymd5 = body;
} else {
    bodymd5 = md5(new Buffer(body));
}

var stringToSign = options.method + "\n" + options.headers.accept + "\n" + bodymd5 + "\n" + options.headers['content-type'] + "\n" + options.headers.date + "\n" + url.parse(options.url).path;

var signature = sha1(stringToSign, ak_secret);
var authHeader = "Dataplus " + ak_id + ":" + signature;
options.headers.Authorization = authHeader;

// 封装函数
function AliFace(options) {
    let promise = new Promise(function (resolve, reject) {
        request(options, (error, response, body) => {
            // 失败
            if (error) {
                console.log("error", error)
                reject()
            }
            console.log("step4-response body:", response.statusCode, body)
            console.log(typeof (body))
            // 成功
            // 注意:这里的body是string类型
            resolve(body)
        })
    })
    return promise;
}



/**
 * 调用接口进行测试
 */
AliFace(options).then(
    function (res) {
        console.log(res)
    }
)
微信小程序实现人脸识别认证 这个项目中使用的是阿里云的实人认证接口,需要录制视频上传 先说一下逻辑: 获取摄像头和录音权限; 调起摄像头用于录制视频,录制5s; 录制结束后上传视频; 取上传返回的视频地址,调用后端提供的人脸识别接口,判断视频中是否含有人脸; 通过人脸识别后会返回一个图片地址,调用后端提供的实人认证接口 若这个过程中出现错误,则重新录制上传,本项目中失败三次则提示认证失败,可重新识别 上代码: wxml: <view class='identification'> <view class='c 阅读详情

相关推荐

(人脸识别)输入姓名、身份证号码和一张人脸照片,与公安库身份证头像进行权威比对,返回比对分值和是否同一人。

(人脸识别)输入姓名、身份证号码和一张人脸照片,与公安库身份证头像进行权威比对,返回比对分值和是否同一人,自己做好的案例,直接改下参数就可以用。

hanzhuhuaa的博客 262

微信小程序 | 人脸识别的最终解决方案

不要再看那些乱七八糟的教程了,一文总结了小程序人脸识别的全部方案!只求最优解!

陶人超有料的博客 1万+

从零到一:海外短剧成品系统源码搭建流程详解及APP+H5交付服务

在当今全球化的数字娱乐浪潮中,海外短剧市场以其独特的文化魅力和广阔的受众基础,正逐渐成为内容创作者与平台运营者争相布局的新蓝海。我为了紧跟时代的发展我翻看了大量的文章,偶然间看到了一篇文章点进去发现他们是专业做短剧开发的,总结下来在这篇文章里分享给大家。

liangyill_的博客 909

阿里云 aliyun 人脸识别(1:N) java spring 小程序 小程序上传多图 阿里云oss

服务开通 人脸识别服务开通 注册阿里云账户后,进入人脸人体控制台(https://vision.console.aliyun.com/cn-shanghai/detail/facebody),进行对人脸人体API调用量的购买。目前阿里云上所有人脸人体的接口都是2QPS((Query Per Second):每秒请求数)免费,足够开发时学习使用。 oss存储服务开通 进入oss控制台(https://oss.console.aliyun.com/overview),右侧有一块Bucket管理,点击

m0_47728632的博客 3284

别再乱删文件了!修复Print Spooler服务自动停止的3个关键检查点(附Win10/Win11实测)

本文深入解析Windows系统中Print Spooler服务自动停止的常见原因及修复方法。从第三方驱动冲突、权限与服务依赖关系到打印队列积压,提供3个关键检查点的详细排查步骤,帮助用户彻底解决打印服务异常问题,适用于Win10/Win11系统。

weixin_31569671的博客 675

Sylvester结式法求解多项式方程

Sylvester结式法,结式,消元法,ctfshow 七夕杯 LUCK7,crypto,WriteUp

u010883831的博客 4533

Java代码调用阿里人脸比对接口

基于对阿里的信任购买了阿里的人脸比对服,结果测试了好久,个人将阿里提供的demo进行了一下修改 阿里提供的demo:API校验规范 不知道为什么我用他提供的这个url( String url = "https://shujuapi.aliyun.com/face/verify";)无法调用接口,一直报错403,无奈,最终提交工单客服给了我另一个接口https://dtplus-cn-shangha...

single_cong的博客 3268

别再被手机厂商忽悠了!一文看懂光学变焦、数字变焦和混合变焦到底有啥区别

本文深入解析手机摄影中的光学变焦、数字变焦和混合变焦技术,揭示它们的工作原理和实际效果差异。光学变焦保持无损画质,数字变焦依赖算法放大,而混合变焦结合两者优势。帮助消费者识破厂商宣传,根据实际需求选择最适合的变焦方式,提升拍摄质量。

weixin_28717969的博客 411

Retinaface+CurricularFace实战教程:构建人脸比对微服务并集成Prometheus监控

本文介绍了如何在星图GPU平台自动化部署Retinaface+CurricularFace人脸识别模型镜像,快速构建人脸比对微服务。该镜像集成了精准的人脸检测与特征比对算法,可轻松应用于考勤打卡、门禁验证等身份核验场景,显著提升部署效率与识别精度。

weixin_31315007的博客 273

PCIE总线及其PCIE SWITCH的使用

PCIe总线与PCI最大的区别在工作原理上,PCIe是采用点到点的串行方式进行传输的,被称为“串行PCI”,由于采用了串行方式传输使得其工作频率可以达到2.5Ghz,大大增加了传输速率,同时采用全双工的通信方式,使得其传输速度提高了一倍,每一个PCIe总线设备与外部通信时有四根数据总线,分别有两个RX和TX,两根用于发送,两根由于接收。PCIe switch中文翻译为PCIe开关或PCIe交换机,主要作用将PCIe设备互联,PCIe switch芯片与其设备的通信协议都是PCIe;

zxm8513优快云博客 4735

华为OD面试八股真题 - 操作系统 - 1

华为OD技术面,操作系统相关八股真题提供详细解答,这篇博客主要涉及于进程和线程相关知识点

qq_45776114的博客 1640

火山引擎AI技能库实战:从API封装到智能客服系统搭建

在AI应用开发中,API封装与集成是连接底层模型能力与上层业务场景的关键技术环节。其核心原理在于通过抽象层将复杂的云服务接口标准化,提供统一、易用的编程接口,从而降低开发复杂度。这一技术的核心价值在于显著提升开发效率,使开发者能够聚焦业务逻辑而非基础设施细节。典型的应用场景包括智能对话系统、内容审核、语音交互等AI驱动的产品。本文以火山引擎AI技能库(Volcengine-Skill)为例,深入剖析了其如何通过模块化设计封装大语言模型、视觉、语音等能力,并演示了如何利用其流式响应处理和上下文管理特性,快速构

weixin_30696427的博客 404

Electron - Electron failed to install correctly, please delete node_modules/electron and try install

Electron安装失败:Electron failed to install correctly, please delete node_modules/electron and try installing again,electron安装报错:Electron failed to install correctly...解决方案,Electron 未能正确安装,请删除 node_modules/electron,然后再次尝试安装,如何解决这个问题,手把手教你解决,在yarn dev时报错,electr

🏆 前端领域优质创作者 4368

阿里云人脸识别介绍(1)

如果我们自己编写一个人脸识别的程序是挺麻烦的,需要自己写代码,导入相关的包,搭建卷积神经网络。现在阿里云对算法进行了封装,通过API接口调用就可以轻松快捷实现人脸识别。今天就来教一下大家...

weixin_40920183的博客 2134

第八章 GPU Scheduler 分析:8.3 drm_sched_entity — 调度实体

本文介绍了DRM GPU调度器中的drm_sched_entity结构,它作为用户提交命令进入调度器的提交通道,解决了归属、排序和公平性问题。文章首先分析了命令提交的归属需求,然后详细阐述了entity的核心模型,包括其职责、进程映射关系和核心字段。接着说明了用户态提交进入内核后的关键节点路径,以及entity内部的FIFO语义和激活机制。entity通过组织同一context的命令提交包为FIFO队列,使调度器能够在多个entity之间进行优先级和公平性调度,同时保证同一提交通道的顺序执行。

图形/计算GPU的驱动与虚拟化技术分享园地 655

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

基于Java Spring Boot的人脸识别签到系统

摘要: 本文详细介绍了一个基于Java SpringBoot开发的人脸识别签到系统,该系统整合了阿里云人脸比对API与OSS对象存储,并自研了本地多特征人脸比对算法作为降级方案。系统实现了学生信息录入、人脸采集、智能签到及数据统计功能。作者独立完成了系统架构设计、后端开发、API对接、算法实现、数据持久化及异常处理等任务。重点解决了云端API签名计算、本地图像处理及文件读写等难点,最终形成云端+本地的双方案架构。此外,文章还分析了现有系统的不足(如离线识别精度、数据存储效率等),并提出了引入轻量级检测算法、

2401_87745810的博客 354

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

基于Flask的人脸识别OOD模型Web服务开发

本文介绍了如何在星图GPU平台上自动化部署人脸识别OOD模型镜像,并基于Flask框架快速构建Web服务。该服务能够通过简单的API接口,实现人脸特征提取与1:1比对功能,可广泛应用于身份验证、门禁系统等需要快速人脸识别的场景。

weixin_36474966的博客 269

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SmartJavaAI开源程序是Java免费离线AI算法工具箱,支持人脸识别(人脸检测,人脸特征提取,人脸比对,人脸库查询,人脸属性检测:年龄、性别、眼睛状态、口罩、姿态,活体检测)(学习版)

SmartJavaAI开源程序是专为JAVA 开发者打造的一个功能丰富、开箱即用的 JAVA AI算法工具包,致力于帮助JAVA开发者零门槛使用各种AI算法模型,开发者无需深入了解底层实现,即可轻松在 Java 代码中调用人脸识别、目标检测、OCR 等功能。底层实现涵盖了 C++、Python 等语言的深度学习模型。后续将持续扩展更多算法,目标是构建一个“像 Hutool 一样简单易用”的 JAVA AI 通用工具箱

struggle2025的博客 1671

基于OrangePi Zero2的智能家居项目(准备阶段)

USB充电头(当前实测可用:5V/2.5A)x1、USB转TYPE-Cx1、SU-03Tx1、烟雾报警模块x1、4路继 电器x1、 OLEDx1、 电磁锁x1(5V吸合开锁)、 蜂鸣器x1、小风扇+电机x1(需要自行购买)、面包 板x1、 5号1.5V电池x6 、 2节电池盒x1、4节电池盒x1、带3路led灯小房子(3.3V可驱动, 需自行 购买搭建)测试结果待补充.....(81节课17:11)bash -x ./gpio.shI2C模块测试模块可以运行wiringOP中的oled_demo程序串口

m0_52883102的博客 1105

除了阿里云,SpringBoot项目做实名认证还有哪些靠谱的第三方服务?横向对比与选型心得

本文探讨了SpringBoot项目中除阿里云外,腾讯云、百度AI、有盾科技等第三方实名认证服务的横向对比与选型心得。从接口稳定性、价格策略、合规性等维度分析各服务商特点,并提供SpringBoot集成实践与优化建议,帮助开发者选择最适合业务场景的实名认证解决方案。

weixin_42561476的博客 381

AIaaS实战指南:从API调用到系统集成的全流程解析

人工智能即服务(AIaaS)正成为企业应用AI技术的核心范式,它将复杂的算法能力封装为标准化云服务,大幅降低了技术门槛。其核心原理在于通过分层架构(IaaS、PaaS、SaaS、行业方案)提供从算力基础设施到开箱即用API的全栈服务。这种模式的技术价值在于实现弹性伸缩与成本优化,让开发者能聚焦业务逻辑而非底层设施。在应用场景上,AIaaS已广泛应用于计算机视觉(如图像识别、OCR)、自然语言处理(如情感分析、文本摘要)及智能语音交互等领域。通过合理选型与工程化集成,企业可快速构建智能内容审核、智能客服、实时

weixin_34237941的博客 255

如何使用Java实现工业级人脸识别?免费开源方案来了!

SmartJavaAI(轻松使用java开发人脸检测等AI功能)是基于 DJL(Deep Java Library)封装的轻量级深度学习算法库,依托DJL的自动模型管理和跨框架特性,无需安装Python环境且无需手动下载模型文件(模型由DJL内部自动从云端加载),该库致力于构建Java生态与AI模型之间的高效桥梁。

deng775747758的博客 5608
上一篇: 校园表白墙微信小程序V1.0 SayLove -基于微信云开发-一键快速搭建,开箱即用
下一篇: 计划助手V1.0-微信小程序(QQ小程序)-源代码分享
开源分享汇
博客等级 码龄9年 1005粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开源分享汇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值