华为HiLens华为HiLens

计算
弹性云服务器 ECS
云耀云服务器 HECS
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机 CPH
VR云渲游平台 CVR
特惠算力专区
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
内容分发网络 CDN
存储容灾服务 SDRS
弹性文件服务 SFS
云服务器备份 CSBS
云硬盘备份 VBS
数据快递服务 DES
专属企业存储服务
智能边缘
智能边缘云 IEC
EI 企业智能
EI安视服务
AI开发平台ModelArts
数据湖治理中心 DGC
数据仓库服务 GaussDB(DWS)
企业级AI应用开发专业套件 ModelArts Pro
数据湖探索 DLI
华为HiLens
云搜索服务 CSS
数据接入服务 DIS
表格存储服务 CloudTable
数据湖工厂 DLF
图引擎服务 GES
推荐系统 RES
文字识别 OCR
内容审核 Moderation
图像识别 Image
图像搜索 ImageSearch
人脸识别服务 FRS
对话机器人服务 CBS
视频分析服务 VAS
数据可视化 DLV
视频接入服务 VIS
自然语言处理 NLP
语音交互服务 SIS
知识图谱 KG
医疗智能体 EIHealth
可信智能计算服务 TICS
园区智能体 CampusGo
实时流计算服务 CS
人证核身服务 IVS
IoT物联网
设备接入 IoTDA
IoT物联网
全球SIM联接 GSL
设备发放 IoTDP
IoT开发者服务
IoT边缘 IoTEdge
IoT数据分析
路网数字化服务 DRIS
开发与运维
项目管理 ProjectMan
代码托管 CodeHub
流水线 CloudPipeline
代码检查 CodeCheck
编译构建 CloudBuild
部署 CloudDeploy
云测 CloudTest
发布 CloudRelease
移动应用测试 MobileAPPTest
CloudIDE
Classroom
软件开发平台 DevCloud
开源镜像站 Mirrors
视频
媒体处理 MPC
视频点播 VOD
视频直播 Live
实时音视频 SparkRTC
管理与部署
统一身份认证服务 IAM
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云审计服务 CTS
云日志服务 LTS
标签管理服务 TMS
资源管理服务 RMS
应用身份管理服务 OneAccess
专属云
专属计算集群 DCC
专属分布式存储服务 DSS
域名与网站
域名注册服务 Domains
云速建站 CloudSite
企业协同
华为云WeLink
会议
ISDP
解决方案
全栈专属服务
高性能计算 HPC
SAP
游戏云
混合云灾备
快视频
华为工业云平台 IMC
价格
价格原则
成本优化最佳实践
昇腾
昇腾MindX SDK (20.3)
其他
管理控制台
消息中心
产品价格详情
系统权限
我的凭证
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
应用编排服务 AOS
容器交付流水线 ContainerOps
应用服务网格 ASM
多云容器平台 MCP
基因容器 GCS
容器洞察引擎 CIE
容器批量计算 BCE
云原生服务中心 OSC
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
数据库
云数据库 RDS
文档数据库服务 DDS
分布式数据库中间件 DDM
数据复制服务 DRS
数据管理服务 DAS
云数据库 GaussDB(for MySQL)
云数据库 GaussDB NoSQL
云数据库 GaussDB (for openGauss)
数据库和应用迁移 UGO
大数据
MapReduce服务 MRS
应用中间件
应用管理与运维平台 ServiceStage
分布式缓存服务 DCS
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
消息通知服务 SMN
微服务引擎 CSE
云性能测试服务 CPTS
区块链服务 BCS
API网关 APIG
应用魔方 AppCube
分布式消息服务RocketMQ版
多云高可用服务 MAS
可信跨链数据链接服务 TCDAS
企业应用
云桌面 Workspace
云解析服务 DNS
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMAExchange
ROMA API
鸿源云道
华为乾坤
安全与合规
Web应用防火墙 WAF
漏洞扫描服务 VSS
企业主机安全 HSS
容器安全服务 CGS
数据加密服务 DEW
数据库安全服务 DBSS
态势感知 SA
云堡垒机 CBH
SSL证书管理 SCM
云证书管理服务 CCM
管理检测与响应 MDR
数据安全中心 DSC
威胁检测服务 MTD
DDoS防护 ADS
云防火墙 CFW
应用信任中心 ATC
安全技术与应用
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
智能协作
IdeaHub
企业网络
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
废弃-华为乾坤安全云服务
云通信
语音通话 VoiceCall
消息&短信 MSGSMS
隐私保护通话 PrivateNumber
开发者工具
SDK开发指南
API签名指南
DevStar
HCloud CLI
Terraform
Ansible
云生态
云市场
鲲鹏
昇腾
合作伙伴中心
华为云培训中心
用户服务
帐号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
网站备案
支持计划
专业服务
合作伙伴支持计划
更新时间:2021/07/27 GMT+08:00
分享

人脸检测技能

技能描述

面向智慧商超的人脸采集技能。本技能使用多个深度学习算法,实时分析视频流,自动抓取画面中的清晰人脸上传至您的后台系统,用于后续实现其他业务。

本技能支持:

  • 判断并过滤尺寸过小、清晰度较差、角度过大等无法判断的人脸。
  • 同时检测多张人脸。
  • 人脸跟踪。对同一个人抓拍的人脸做去重,避免大量的重复上报。
  • 根据业务需求划定区域,只抓取固定区域内的人脸。

使用时需要提供您的业务RESTful接口和RTSP视频地址,最大支持10路网络摄像头接入,并按照接入的路数进行收费。

摄像头部署建议请参见摄像头部署

技能配置项请参见运行时配置参数

技能接口设计请参见技能结果上传接口

基本信息

人脸检测技能的基本信息如表1所示。

表1 技能参数说明

参数

说明

技能名称

人脸检测

技能版本

1.0.9

适用芯片

Ascend 310

OS平台

Linux

应用场景

商超

支持固件版本

HiLens Framework 1.0.0及以上,DDK887/DDK893

最大路数

最多10路

视频流传输协议

RTSP

输入方式

外接IPC摄像头

输出方式

POST

摄像头部署

摄像头的架设会影响人脸检测模型的准确率。在实际架设中,尽量保证拍摄画面清晰,光照充足,人脸较正,无遮挡,比如前边的人脸容易挡住后边的人脸。监控视频场景下尽量保证拍摄的画面能拍到更多的正脸。

摄像头参数基本设置

不同品牌的摄像头都有一些基本的视频设置,例如分辨率、帧率和码率等,参数要求如表2所示。

表2 摄像头参数设置要求

参数

要求

分辨率

不低于720P,若需要做人脸识别和去重不低于1080P,不高于4K(3840*2160)。

帧率

不高于25fps,不低于15fps,建议值20fps。

码率

720P建议设为4096Kbps~6144Kbps左右,1080P建议设为6144Kpbs~8192Kbps,更高分辨率可设置更高码率。

视频编码

若支持H.265,设置为H.265。

日夜切换

关闭夜间自动切换红外模式,暂不支持抓取红外模式下的人脸。

宽动态

关闭宽动态。普通摄像头的宽动态无法到达专业相机的效果,人的走动速度较快时存在运动模糊,应关闭宽动态设置。

人脸角度要求

人脸角度按照三个维度定义:人脸抬头低头角度(pitch),正面人脸旋转角度(roll),前后转头偏转角度(yaw)。人脸检测算法对三个空间维度都有限制。检测模型根据三个维度做姿态评估以后,将检测到的人脸图片发送出来。如果摄像头安装角度不合适,拍摄的画面容易将一些正脸误检为侧脸,在安装好摄像头以后,需要安装人员在现场走进画面实际测试,确认拍摄的人脸画面不产生过大的角度,不会造成算法无法抓到人脸。

请保证人在正常行走中,视频中人脸成像前后转头偏转角度“yaw”不超过45°(即摄像头无斜拍),人脸抬头低头角度“pitch”不超过30°(即摄像头架设俯视角合理),人脸旋转角度“roll”不超过20°(即摄像头两侧水平,无倾斜角),满足上述正脸姿态要求。

人脸大小要求

对于不可调焦距的摄像头,摄像头应安装在距离抓拍点较近处,使得人脸在画面中的像素大小不小于30px*30px。摄像头架设建议如下。

架设高度:2m-2.5m

监控距离:5m-6m

监控宽度:2m-3m

俯视角度:15°左右

对于可调焦距摄像头,应调节焦段使得人脸像素大小满足大于30px*30px的要求。

如果抓取人脸后还需发送给FRS服务,请保证人脸像素大小大于80px*80px,对应设置运行时配置参数中的“cropSizeMin”参数值为“80”

光照要求

光照条件要求需要满足以下几项:

  • 行人正脸光照强度较好,光线过强和过弱都不太合适。

    如果不满足此要求,例如在夜晚或光线不足的白天等环境,会使得采集人脸图像曝光不足,获取的人脸画面偏暗、噪点偏多,导致发送至FRS服务的图片正确率偏低。

  • 人脸两侧光照强度差值不宜过大。

    如果不满足此要求,即左右侧光照强度如果差异过大,采集的人脸图像有“阴阳脸”现象(半张脸暗,半张脸亮)。

  • 行人背面光照强度<正面光照强度* 2。

    如果不满足此要求,即行人背面光照强度远大于正面光照强度,采集人脸图像有严重“背光”现象,最终导致人脸曝光不足,五官细节丢失。

  • 室外安装摄像头不宜正对着太阳光,会导致人脸拍摄光照不均,造成人脸反光。

    如果不满足此要求,会导致光线太强和太弱,人脸五官细节都会丢失。

  • 室外摄像头安装,不宜选择背阴严重或者有遮挡物挡住光线的地方架设。

    如果不满足此要求,会导致光线太强和太弱,人脸五官细节都会丢失。

如果现场的光线不满足上述要求,则需要通过强光抑制或补光来优化现场的光照条件。强光抑制可以改善“阴阳脸”“背光”现象,即通过减弱侧面光照来改善光照条件。补光则可以通过增加额外光源的方式改善光照条件,提高人脸图像的采集效果;主要通过普通射灯、白炽灯等在不影响装修、路人视觉效果的情况下提高人脸的光照度,消除“阴阳脸”

周围环境要求

  • 镜头前方不要有遮挡的障碍物,容易挡住人脸,造成漏检。
  • 不要将摄像头架在房子遮阴的挡板下,会造成光照过暗,人脸完全看不清。
  • 室内安装摄像头,部署在楼道里需要注意光照,楼道里灯光明暗交替变化过快,摄像头拍摄时获取的画面可能会偏暗,检测到的人脸发送给FRS后,正确率较低。比如,走廊较长,楼道光照较暗,人距离摄像头较远时,检测出的人脸很模糊。
  • 室外安装摄像头,需要注意雨雪的影响,避免在露天下布置,雨水或者雪将摄像头的镜头盖住,造成拍摄画面模糊不清。

运行时配置参数

技能在运行时,需要添加运行时配置。配置完成后,参数会从华为HiLens云侧下发到端侧设备。

  • 配置参数说明

    技能相关配置参数设计如表3所示。

    表3 运行时配置参数

    名称

    是否必选

    参数类型

    说明

    logLevel

    Enum

    日志级别,包括INFO,DEBUG,WARNING和ERROR。建议设置为INFO。

    keep_running

    Int

    当技能崩溃是否自动拉起技能并持续运行。此项配置在1.1.0及以后版本起作用。

    multi_camera

    List

    一个设备上多路视频的技能参数,详情请参见表4

    表4 视频参数说明

    名称

    是否必选

    参数类型

    说明

    camera_names

    List

    摄像头名称。可配置多个名称,表示多个摄像头采用同样的技能配置。

    sendOriImgFlag

    Int

    是否发送人脸背景原始图,默认值:0。

    0:表示不发送

    1:表示发送

    sendRepeatFaceFlag

    Int

    是否重复发送清晰人脸图,开关打开后,同一个人只要显示更清晰的人脸会重复发送, 默认值:0。

    0:表示不发送

    1:表示发送

    sendOriImgCompressionRatio

    Int

    原始图jpeg压缩百分比,默认值为90,表示图片压缩比90%,取值范围[1 100]。

    cropSizeMax

    Int

    发送人脸图片长宽的最大像素,默认值400。

    cropSizeMin

    Int

    发送人脸图片长宽的最小像素,默认值80。

    roi

    String

    检测区域配置。区域的设置由Polygon开头,其后依次为区域的坐标(按顺时针排列的x,y坐标)。默认值为Polygon 0 0 0 0,表示检测整个画面。

    sendUrl

    String

    发送技能消息POST请求的URL地址。

    faceQualityThreshold

    Float

    人脸清晰度阈值。清晰度大于此值的人脸才发送。取值范围[0.0, 1.0],默认值0.38。

    centerMode

    Int

    是否只检测roi区域中的最大人脸,默认值0。

    0:返回所有人脸。

    1:只返回roi中最大的人脸。

  • 示例

    HiLens Kit设备支持多路摄像头接入,如果要为不同的摄像头设置不同的技能配置,或者几个摄像头共用同一技能配置,则可在配置列表中给出相应的配置信息,示例如下:

    //Store001的两个摄像头pos1和pos2配置不同参数:
    { 
      "logLevel": "INFO",
      "keep_running": 1,
      "multi_camera": 
             [{
              "camera_names": ["store001_pos1"],
              "sendOriImgFlag": 0,
              "sendRepeatFaceFlag": 0,
              "sendOriImgCompressionRatio": 90,
              "cropSizeMax": 400,
              "cropSizeMin": 120,
              "roi": "Polygon 0 0 0 0",
              "sendUrl": "https://abc.company.com/face",
              "faceQualityThreshold": 0.45,
              "centerMode": 0
             },
             {
             "camera_names": ["store001_pos2"],
             "sendOriImgFlag": 1,
             "sendRepeatFaceFlag": 1,
             "sendOriImgCompressionRatio": 100,
             "cropSizeMax": 300,
             "cropSizeMin": 80,
             "roi": "Polygon 0 0 0 0",
             "sendUrl": "https://abc.company.com/face",
             "faceQualityThreshold": 0.55,
             "centerMode": 0
              }]
    }
    //Store002的两个摄像头pos1和pos2配置相同参数:
    { 
      "logLevel": "INFO",
      "keep_running": 1,
      "multi_camera": 
             [{
             "camera_names": ["store002_pos1","store002_pos2"],
             "sendOriImgFlag": 0,
             "sendRepeatFaceFlag": 0,
             "sendOriImgCompressionRatio": 90,
             "cropSizeMax": 400,
             "cropSizeMin": 120,
             "roi": "Polygon 0 0 0 0",
             "sendUrl": "https://abc.company.com/face"
             "faceQualityThreshold": 0.55,
             "centerMode": 0
             }]
    }

技能结果上传接口

  • 请求消息

    推理结果将以HTTPS POST请求方法推送到应用系统server的指定URL地址。

    POST {sendUrl}

    其中sendUrl技能运行时配置中设置。

    • 请求消息头

      技能以json形式返回推理结果,因此消息头Content-Type类型为“application/json”,参数说明如表5所示。

      表5 请求消息头参数说明

      名称

      描述

      是否必选

      示例

      Content-Type

      消息体的类型(格式)

      application/json。

    • 公共消息体

      华为HiLens 公共消息体包含了技能的公共消息内容,如表6所示。

      表6 公共消息体参数说明

      名称

      类型

      说明

      msg_type

      String

      技能类型,为face_detection_result。

      cam_name

      String

      摄像头名称。

      skill_id

      String

      技能ID。

    • 技能消息体

      人脸检测的json消息体如表7所示:

      表7 技能消息体参数说明

      名称

      类型

      说明

      face_id

      String

      人脸图UUID。

      track_id

      Uint64

      人脸的跟踪标记,相同的track_id表示同一个人脸。

      ori_img_id

      String

      人脸背景原始图UUID。

      time

      Uint64

      图片解码时间的时间戳,单位为秒。

      bbox

      Object

      人脸图在背景图中的位置信息。位置信息参数请参见表8

      clarity

      Float

      人脸清晰度,范围[0,1]。

      face_image

      String

      人脸图BASE64编码结果。

      ori_image

      String

      原始图BASE64编码结果,若配置不发送原始图,则无该字段。

      表8 bbox位置信息参数说明

      字段

      类型

      说明

      x

      Int

      人脸图左上角顶点x坐标值。

      y

      Int

      人脸图左上角顶点y坐标值。

      h

      Int

      人脸图高。

      w

      Int

      人脸图宽。

      人脸检测的json消息体示例如下:

      { 
        "msg_type": "face_detection_result",
        "cam_name": "store001_pos2",
        "skill_id": "f5c526eb6c51440c8a0ee5e3cc65f23c",
        "face_id": "0DD1BEA6-634B-11E8-8B0B-407D0FAD9218",
        "track_id": 1,
        "ori_img_id": "0DD1BF0A-634B-11E8-8B0B-407D0FAD9218",
        "time": 1527603463,
        "bbox ": {
                   "x": 32,
                   "y": 379,
                   "w": 49,
                   "h": 65
                   },
         "clarity": 0.55,
         "face_image": "4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQE...",
         "ori_image": "4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQE...",
       }
  • 响应消息
    • 响应消息头

      响应消息头由服务器端(应用系统)收到请求消息后返回。

      响应消息头可包含如下两部分。

      • 一个HTTP状态代码,从2xx成功代码到4xx或5xx错误代码。或者可以返回服务定义的状态码。
      • 附加响应头字段,如支持请求的响应所需,如Content-type响应消息头。

      详细的公共响应消息头参数说明如表9所示。

      表9 公共响应消息头参数说明

      名称

      描述

      示例

      Date

      HTTP协议标准报头。表示消息发送的时间,时间的描述格式由rfc822定义。

      Mon, 12 Nov 2007 15:55:01 GMT

      Server

      HTTP协议标准报头。包含了服务器用来处理请求的软件信息。

      Apache

      Content-Length

      HTTP协议标准报头。用于指明实体正文的长度,以字节方式存储的十进制数字来表示。

      xxx

      Content-Type

      HTTP协议标准报头。用于指明发送给接收者的实体正文的媒体类型。

      application/json

    • 响应消息体(可选)

      响应消息体通常以结构化格式(如json或xml)返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。

分享:

    相关文档

    相关产品