口罩人脸比对1:1

本文介绍人脸人体(facebody)类目下的口罩人脸比对1:1CompareFaceWithMask的语法及示例。

功能描述

口罩人脸比对1:1能力基于您输入的两张图片,分别挑选两张图片中的最大人脸进行比较,判断是否为同一人。融合戴口罩生成、抗遮挡关键点定位、抗遮挡特征注意力三大技术优化,实现戴口罩时的极速人脸识别。

  • 两张人脸图片对比:比对两张图片中人脸的相似度,返回这两个人脸的矩形框坐标、人脸五点关键点坐标、比对的置信度,以及不同误识率的置信度阈值。
  • 支持多种图片类型:支持生活照、证件照等类型的人脸对比。
  • 支持佩戴口罩场景:针对佩戴口罩场景对带口罩的人脸进行对比识别。

关于该接口功能的示意图如下:

说明
  • 您可以进入在线咨询获取在线人工帮助。
  • 当前能力可在视觉智能开放平台有完整的免费产品体验,您可以单击立即试用对该能力进行更直观试用以及在线购买。
  • 阿里云视觉智能开放平台视觉AI能力API接入、接口使用或问题咨询等,请通过钉钉群(23109592)加入阿里云视觉智能开放平台咨询群联系我们。

应用场景

  • 员工考勤:无接触式刷脸考勤,疫情防控场景下企业考勤首选,且能有效防止代打卡等作弊行为。
  • 公共服务:佩戴口罩客户直接刷脸办理业务,通过人脸比对识别身份信息,减少身份证查验、复印存档等环节,提高公共服务窗口办理业务的效率。
  • 外卖骑手人脸核验:戴口罩外卖骑手送餐业务人脸打卡和定期本身人脸核验,现场授权采集的戴口罩人脸照片,与本人认证照片进行1:1比对,确保外卖骑手身份真实性,提供不摘口罩人脸识别便捷体验。

特色优势

  • 平台服务稳定:提供在高并发,大流量下的毫秒级识别响应和保障。
  • 抗遮挡五官定位:支持戴口罩、大部分遮挡情况下,实现准确度自评估的鲁棒性关键点定位。
  • 抗遮挡特征建模:支持戴口罩、大部分遮挡情况下,实现基于注意力机制的鲁棒性特征建模。
  • 简单易用:可直接调用的 API 接口,服务简单易用,易被集成,兼容性强。
  • 佩戴口罩场景优化:针对佩戴口罩场景,优化戴口罩遮挡情境下的人脸比对。

接入指引

1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。

2. 开通能力:请确保您已开通人脸人体服务,若未开通服务请立即开通

重要

本能力仅限企业认证用户开通。更多实名认证操作信息,请参见实名认证

3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权

4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。

5. 开发接入步骤:

  • SDK总览中选择您要接入使用的SDK语言。
  • 在对应语言的SDK文档中找到AI类目为人脸人体(facebody)的SDK包进行安装。
  • 参考文档中提供的示例代码进行适当修改后调用。

6. 示例代码:该能力常用语言的示例代码,请参见口罩人脸比对1:1示例代码

7. 客户端直接调用:该能力常用的客户端调用方式包括以下几种。

输入限制

  • 图像格式:JPEG、JPG、PNG、BMP、WEBP。
  • 图像大小:不超过3 MB。
  • 图像分辨率:大于32×32像素,小于4096×4096像素,人脸占比不低于64×64像素。
  • URL地址中不能包含中文字符。

    说明 当图像分辨率超过最大限制时,请先将图片进行缩放,调整图片大小,具体请参见图片缩放

计费说明

关于口罩人脸比对1:1的计费方式及报价,请参见计费介绍

说明 下方调试接口为付费接口,如需免费体验调试请前往体验中心

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称

类型

是否必选

示例值

描述

Action String CompareFaceWithMask

系统规定参数。取值:CompareFaceWithMask

ImageURLA String https://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/CompareFaceWithMask/CompareFaceWithMask-left1.jpeg

图像A的URL地址。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理

ImageURLB String https://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/CompareFaceWithMask/CompareFaceWithMask-right1.jpeg

图像B的URL地址。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理

QualityScoreThreshold Float 97.0

质量分阈值,对人脸图片进行质量分析判断,若某张人脸质量分小于该阈值,则会在返回结果上增加MessageTips说明。

返回数据

名称

类型

示例值

描述

RequestId String C6499918-E932-41B3-96F5-A18F50D262DD

请求ID。

Data Object

返回的结果数据内容。

Confidence Float 88.025604248046875

两张图片中的最大人脸属于同一个人的置信度,取值范围0~100。供参考的三个阈值是61,69,75分别对应千分之一,万分之一和十万分之一误识率。阈值设置越高,误识率越低,通过率也越低,对安全性要求越高的场合,可以设置更高的阈值。如果某张图片中没有人脸则报错误信息。

IsMaskA Long 1

图片A中的人脸是否戴口罩。

  • 0:不戴口罩
  • 1:戴口罩
IsMaskB Long 0

图片B中的人脸是否戴口罩。

  • 0:不戴口罩
  • 1:戴口罩
LandmarksAList Array of Long [348,490,523,478,446,577,386,677,514,668]

图片A人脸框所对应的人脸关键点坐标,顺序分别为左眼水平坐标,左眼垂直坐标,右眼水平坐标,右眼垂直坐标,鼻尖水平坐标,鼻尖垂直坐标,左嘴角水平坐标,左嘴角垂直坐标,右嘴角水平坐标,右嘴角垂直坐标。

LandmarksBList Array of Long [356,590,487,589,410,676,368,754,476,753]

图片B人脸框所对应的人脸关键点坐标,顺序分别为左眼水平坐标,左眼垂直坐标,右眼水平坐标,右眼垂直坐标,鼻尖水平坐标,鼻尖垂直坐标,左嘴角水平坐标,左嘴角垂直坐标,右嘴角水平坐标,右嘴角垂直坐标。

QualityScoreA Float 75.891258239746094

输入图像A的质量分。

QualityScoreB Float 98.716880798339844

输入图像B的质量分。

RectAList Array of Long [238,310,388,492]

图片A中最大人脸矩形框[left, top, width, height],例如[238,310,388,492]。

RectBList Array of Long [284,467,293,373]

图片B中最大人脸矩形框[left, top, width, height],例如[284,467,293,373]。

Thresholds Array of Long [61, 69, 75]

误识率在1/1000,1/10000,1/100000的情况下分别对应的置信度阈值。例如[61.0,69.0,75.0],表示误识率为1/1000的情况下,置信度(Confidence)超过61%就可以认为是同一个人。

MessageTips String imageB quality score less threshold

提示信息,纯文字描述,以下提示信息单独出现或是几条提示信息的组合。

质量相关提示(某张人脸质量分小于请求参数质量分阈值时会出现):

  • imageA quality score less threshold:图像A的质量分小于输入参数设置的阈值。
  • imageB quality score less threshold:图像B的质量分小于输入参数设置的阈值。

人脸尺寸相关提示(检测到人脸且人脸宽或高小于50像素时会有该提示信息。出现该提示信息时,请尽可能输入像素数大于64x64的人脸,并请酌情参考返回的对比置信度Confidence值):

  • face in imageA is too small:图像A中的人脸太小。
  • face in imageB is too small:图像B中的人脸太小。

SDK参考

阿里云视觉AI人脸人体类目下的口罩人脸比对1:1能力推荐使用SDK调用,支持多种编程语言,调用时请选择AI类目为人脸人体(facebody)的SDK包,文件参数通过SDK调用可支持本地文件及任意URL,具体可参见SDK总览

示例代码

该能力常用语言的示例代码,请参见口罩人脸比对1:1示例代码

示例

请求示例

http(s)://facebody.cn-shanghai.aliyuncs.com/?Action=CompareFaceWithMask      //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&ImageURLA=https://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/CompareFaceWithMask/CompareFaceWithMask-left1.jpeg
&ImageURLB=https://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/CompareFaceWithMask/CompareFaceWithMask-right1.jpeg
&QualityScoreThreshold=97.0
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<CompareFaceWithMaskResponse>
    <RequestId>C6499918-E932-41B3-96F5-A18F50D262DD</RequestId>
    <Data>
        <Confidence>88.025604</Confidence>
        <IsMaskA>1</IsMaskA>
        <IsMaskB>0</IsMaskB>
        <LandmarksAList>348</LandmarksAList>
        <LandmarksAList>490</LandmarksAList>
        <LandmarksAList>523</LandmarksAList>
        <LandmarksAList>478</LandmarksAList>
        <LandmarksAList>446</LandmarksAList>
        <LandmarksAList>577</LandmarksAList>
        <LandmarksAList>386</LandmarksAList>
        <LandmarksAList>677</LandmarksAList>
        <LandmarksAList>514</LandmarksAList>
        <LandmarksAList>668</LandmarksAList>
        <LandmarksBList>356</LandmarksBList>
        <LandmarksBList>590</LandmarksBList>
        <LandmarksBList>487</LandmarksBList>
        <LandmarksBList>589</LandmarksBList>
        <LandmarksBList>410</LandmarksBList>
        <LandmarksBList>676</LandmarksBList>
        <LandmarksBList>368</LandmarksBList>
        <LandmarksBList>754</LandmarksBList>
        <LandmarksBList>476</LandmarksBList>
        <LandmarksBList>753</LandmarksBList>
        <QualityScoreA>75.89126</QualityScoreA>
        <QualityScoreB>98.71688</QualityScoreB>
        <RectAList>238</RectAList>
        <RectAList>310</RectAList>
        <RectAList>388</RectAList>
        <RectAList>492</RectAList>
        <RectBList>284</RectBList>
        <RectBList>467</RectBList>
        <RectBList>293</RectBList>
        <RectBList>373</RectBList>
        <Thresholds>61</Thresholds>
        <Thresholds>69</Thresholds>
        <Thresholds>75</Thresholds>
        <MessageTips>imageB quality score less threshold</MessageTips>
    </Data>
</CompareFaceWithMaskResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "C6499918-E932-41B3-96F5-A18F50D262DD",
  "Data" : {
    "Confidence" : 88.025604,
    "IsMaskA" : 1,
    "IsMaskB" : 0,
    "LandmarksAList" : [ 348, 490, 523, 478, 446, 577, 386, 677, 514, 668 ],
    "LandmarksBList" : [ 356, 590, 487, 589, 410, 676, 368, 754, 476, 753 ],
    "QualityScoreA" : 75.89126,
    "QualityScoreB" : 98.71688,
    "RectAList" : [ 238, 310, 388, 492 ],
    "RectBList" : [ 284, 467, 293, 373 ],
    "Thresholds" : [ 61, 69, 75 ],
    "MessageTips" : "imageB quality score less threshold"
  }
}

错误码

关于口罩人脸比对1:1的错误码,详情请参见常见错误码

开源模型体验

更多开源免费模型体验及下载,详见魔搭社区:人脸识别OOD模型ArcFace人脸识别模型IR人脸识别模型FRIR口罩人脸识别模型FRFM-large口罩人脸识别模型FaceMask

安全声明

  • 请确保上传的图片或文件来源符合相应的法律法规。
  • 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。
  • 平台不存储用户在使用服务过程中涉及的原始人脸图片或文件信息。