人脸识别系统架构

目录

1. 系统架构

1.1 采集子系统

1.2 解析子系统

1.3 存储子系统

 1.4 比对子系统

1.5 决策子系统

1.6 管理子系统

1.7 应用开放接口

2. 业务流程

2.1 人脸注册

2.2 人脸验证

2.2.1 作用

2.2.2 特点

2.2.3 应用场景

2.3 人脸辨识

2.3.1 作用

2.3.2 特点

2.3.3 应用场景

3. 技术方案

3.1 本地离线方案

3.2 云端服务方案

4. 技术局限

4.1 相似脸较难解决

4.2 算法偏见问题

4.3 算法鲁棒性及性能问题

4.4 年龄变化的影响

4.5 安全性问题

4.6 工程落地问题


1. 系统架构

        《GB∕T 41772-2022 信息技术 生物特征识别 人脸识别系统技术要求》定义人脸识别系统由采集子系统、解析子系统、存储子系统、比对子系统、决策子系统、管理子系统以及应用开放接口等组成,其系统架构下图所示。

1.1 采集子系统

          用于人脸图像或视频的采集,包括人脸采集设备以及执行人脸采集过程所需的任何子过程。

1.2 解析子系统

          用于人脸图像或视频的处理,包括人脸检测、质量判断、特征提取、人脸跟踪、属性检测、活体检测等。

1.3 存储子系统

          用于人脸注册数据及实时采集数据的存储,包括:

  • 人脸注册数据库:用于注册数据的存储。

  • 实时采集数据库:用于采集数据的存储。

 1.4 比对子系统

         包括两种模式:

  • 人脸验证模式:现场人脸与指定的存储人脸进行比对(1:1比对),输出一个相似度得分;

  • 人脸辨识模式:现场人脸与部分或全部的存储人脸进行比对(1:N比对),输出多个相似度得分,并根据相似度得分进行排序。

1.5 决策子系统

          根据一个或多个相似度得分,对人脸识别提供决策结果,包括两种模式:

  • 人脸验证模式:当相似度得分超过指定的阈值时,现场人脸和存储人脸匹配;

  • 人脸辨识模式:当相似度得分超过指定的阈值时,对应的存储人脸构成了与现场人脸匹配的潜在候选者。

1.6 管理子系统

          管理人脸识别系统的总体策略、执行和应用,包括但不限于:

  • 设置阈值:例如样本质量阈值,相似度阈值,活体检测阈值等;

  • 日志管理:日志生成、查询和导出等;

  • 权限管理:设置不同角色的操作权限等;

  • 接口配置:配置人脸识别系统的视图采集子系统等;

  • 用户管理:存储或删除用户的人脸等注册信息;

  • 其他管理:控制工作环境和非生物特征数据的存储、在视图采集时或采集后向用户提供反馈信息、与人脸识别应用进行交互管理等。

1.7 应用开放接口

        人脸识别系统与人脸识别应用之间的接口,包括人脸注册接口、人脸验证接口、人脸辨识接口、活体检测接口等。

2. 业务流程

        人脸识别系统的核心业务流程包括人脸注册、人脸验证、人脸辨识等。

2.1 人脸注册

  1. 启动人脸注册过程;

  2. 根据人脸注册策略,采集用户数据,例如用户基本信息、人脸图像等;

  3. 解析子系统对采集的视图进行解析,例如质量判断和活体检测等;

  4. 将该用户的数据记录存储在人脸注册数据库;

  5. 结束注册过程,记录日志。

2.2 人脸验证

  1. 启动人脸验证过程;

  2. 读取身份证件中的人脸信息;

  3. 采集人脸图像或视频;

  4. 将现场人脸与身份证件中的人脸进行比对;

  5. 依据系统策略及相似度得分,对人脸验证提供决策结果;

  6. 将决策结果传输到人脸验证应用;

  7. 结束验证过程,记录日志。

2.2.1 作用

        证明你是你。

2.2.2 特点

  • 匹配的特征集少
  • 检验准确率稳定
  • 依赖身份证件(身份证、护照、会员卡等)验证身份

2.2.3 应用场景

       适用于车站、机场、大型活动、机关单位、银行、酒店、网吧等人员流动频繁场所或其它重点场所中,以及线上开户,进出人员身份验证,核查人员真实身份。。

2.3 人脸辨识

  1. 启动人脸辨识过程;

  2. 采集人脸图像或视频;

  3. 将现场人脸与一个或多个存储人脸进行比对;

  4. 依据系统策略及相似度得分,对人脸辨识提供决策结果;

  5. 将决策结果传输到人脸辨识应用;

  6. 结束辨识过程,记录日志。

2.3.1 作用

        辨识你是谁。

2.3.2 特点

  • 不依赖身份证件信息(身份证、护照、会员卡等)
  • 误识率会随着人脸底库的增加而升高

2.3.3 应用场景

        适用于社区、楼宇、工地、学校等较大规模的人脸考勤签到、人脸通行等应用场景,人脸注册到底库,检测到人脸后从人脸底库中检索出谁是谁。

3. 技术方案

3.1 本地离线方案

3.2 云端服务方案

        设备端负责数据采集,服务端负责人脸识别,根据不同的应用场景,有三种不同的实施方案如下:

4. 技术局限

        人脸识别技术由于相似脸 、 年龄 、 算法偏见 、 面临的场景多样化以及人脸图像更易公开获取等原因 , 技术本身也面临着一定的局限性。

4.1 相似脸较难解决

        双胞胎或者长相很相近的人脸容易识别错误,而该问题在目前暂时没有新技术能完全解决。大部分情况下双胞胎仍能区分分数高低 ,但是往往都在阈值之上,在开放环境下应用效果较差。

4.2 算法偏见问题

        由于当前人脸识别算法很大程度依赖于数据样本,但是不同人群的人脸数据样本存在差别,这导致了算法对不同地域、不同年龄人群的识别能力有差别。比如,小孩子,老年人以及其他很少出现的人种或者肤色的人脸识别率相对较低,该问题亟需解决 。

4.3 算法鲁棒性及性能问题

        现有的人脸识别系统在用户配合、采集条件比较理想的情况下可以取得令人满意的结果。但是,在用户不配合 、采集条件不理想的情况下, 比如非限制条件下捕捉的人脸图像,远距离多姿态低像素拍摄的人脸图像,动态视频、模糊、低质量的人脸图像,会影响现有系统的识别率 。另外戴口罩情况下大部分算法的错误率会提高 1 个数量级以上。

4.4 年龄变化的影响

        随着年龄的变化,面部外观也会变化 ,特别是对于青少年,这种变化更加明显。对于不同的年龄段,人脸识别算法的识别率也不同。

4.5 安全性问题

        人脸识别系统信息存储同样会面临黑客的攻击,所以对数据加密很重要。随着技术的不断提升,人脸识别技术在安全性上需要加强 。

4.6 工程落地问题

        如何合理安装摄像头的⻆度、高度以及降低光线干扰,如何提升用户体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/4735.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10分钟了解数据质量管理-奥斯汀格里芬 Apache Griffin

在不重视数据质量的大数据发展时期,Griffin并不能引起重视,但是随着数据治理在很多企业的全面开展与落地,数据质量的问题开始引起重视。 1.Griffin简介 Griffin是一个开源的大数据数据质量解决方案,由eBay开源,它支持…

Vue2中实现聊天界面滚动条自动滑动到最底部

背景: 实现一个类似于 chatGpt 的聊天界面,发送消息后页面滚动条会自动滑动到底部,如图: 百度了一波方法 : 但是不知为何,我在项目里使用此方法不生效? 我甚至尝试了使用类名获取方式 &#x…

Pycharm配深度学习环境所遇到的部分问题

问题1:Anaconda prompt界面安装CUDA出现的问题: 不管是:conda install pytorch torchvision torchaudio cudatoolkit11.3 -c pytorch 还是:pip ****什么的 问题描述:EnvironmentNotWritableError: The current user does not have write p…

技术团队的管理方法和日常总结建议

管理学家德鲁克有言“管理是一种实践,其本质不在于知,而在于行,其验证不在于逻辑,而在于成果,其唯一的权威就是成就” ,因此管理重实践看效果,但如果管理实践有理论依凭,那么实践起来…

Docker | 入门:安装与配置

Docker | 入门:安装与配置 Docker 和传统虚拟机区别 对于传统虚拟机: 虚拟出一套硬件,运行一个完整的操作系统,并在这个操作系统上安装和运行软件。 对于 Docker: 将一个个容器隔离开。 容器内的应用直接运行在宿主机的内容&am…

党建3d互动虚拟现实网上展厅有何优势?

在数字化浪潮席卷全球的今天,企业如何迅速踏上虚拟世界的征程,开启元宇宙之旅?答案就是——3D虚拟云展。这一创新平台,华锐视点以虚拟现实技术和3D数字建模为基石提供3D云展搭建服务,助力企业轻松搭建起虚拟数字基础设施&#xf…

C语言阶段的题目解析

前言 我们C语言已经学习的差不多了,但是C语言之中存在的一些问题与难点我们还不一定能够又快又好地解决,为了夯实我们的基础,我们来练习几道稍微有点难度的C语言习题吧 例题一 题目 int main(void) {unsigned char i 7;int j 0;for (; i…

Android如何使用XML自定义属性

1、定义 在res/values文件下定义一个attrs.xml文件,代码如下: 2、使用 在布局中使用, 示例代码如下: 3、获取 最终来到这里:

【计算机网络】成功解决 ARP项添加失败:请求的操作需要提升

最近在用Wireshark做实验时候,需要清空本机ARP表和DNS缓存,所以在cmd窗口输入以下命令, 结果发生了错误:ARP项添加失败:请求的操作需要提升 一开始我还以为是操作的命令升级了,但是后面发现其实只是给的权…

C++:string 类

在C中定义一个 std::string 字符串可以采用以下几种方式: 1.使用字符串字面量初始化: std::string str "Hello, world!"; 2.使用构造函数初始化: std::string szStringB("Hello wolven"); 3.使用重复字符初始化&am…

FTP 文件传输协议

FTP 文件传输协议 作用 用来传输文件的 FTP协议采用的是TCP作为传输协议, 21号端口用来传输FTP控制命令的, 20号端口用来传输文件数据的 FTP传输模式: 主动模式: FTP服务端接收下载控制命令后,会主动从tcp/20号端口…

后端学习记录~~JavaSE篇(Module08-异常 上 )

总览: Java概述: 思维导图文件在本人个人主页上-----资源模块 资源详情(免费下载):Java学习思维导图异常篇资源-CSDN文库https://download.csdn.net/download/m0_61589682/89238330 整体展示:

Spring IOC(二)

1. Bean的定义与获取 1.1 定义Bean 在Spring 中定义Bean的方式主要有三种&#xff1a; 1、基于XML配置文件的方式&#xff08;了解&#xff09;&#xff1a;通常会在配置文件中使用<bean>标签来定义Bean&#xff0c;并设置Bean的属性、依赖关系等信息。 2、基于注解的方…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-6.5, 汇编 led.s,第一次点亮LED灯

前言&#xff1a; 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM&#xff08;MX6U&#xff09;裸机篇”视频的学习笔记&#xff0c;在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

kaggle(4) Regression with an Abalone Dataset 鲍鱼数据集的回归

kaggle&#xff08;4&#xff09; Regression with an Abalone Dataset 鲍鱼数据集的回归 import pandas as pd import numpy as npimport xgboost import lightgbm import optuna import catboostfrom sklearn.model_selection import train_test_split from sklearn.metrics …

GMSSL编译iOS

一、GMSSL-2.x 国密SDK源码下载&#xff0c;对GMSSL库进行编译生成对应的静态库。执行如下命令&#xff1a; cd到SDK源码目录 cd /Users/xxxx/Downloads/GMSSLV2-master查看SDK适用环境 ./config上图中错误解决方法 使用文本编辑器打开SDK目录下Configure、test/build.info、…

Android 学习 鸿蒙HarmonyOS 4.0 第二天(项目结构认识)

项目结构认识 和 了解&#xff1a; 工程目录下的结构如下&#xff1a; 首先能看到有两个.开头的文件&#xff0c;分别是.hvigor 和 .idea。这两个文件夹都是与构建有关系的&#xff0c; 如果你开发过安卓app&#xff0c;构建完会生成一个apk安装包&#xff0c;鸿蒙则是生成hap…

【Oracle】python调取oracle数据教程

目录 &#xff08;1&#xff09;安装python和相关库 1.python的下载和安装 2.python安装cx_Oracle库和pandas库 3.本机安装instantclient 数据库客户端 先安装instantclient 然后设置环境变量 &#xff08;2&#xff09;准备好连接Oracle数据库地址等五项信息 &#xf…

Linux(Centos 7)环境下安装wget,并且更换阿里云镜像

Linux(Centos 7) Minimal 安装后&#xff0c;由于没有预装wget&#xff0c;在使用wget命令去下载安装相关应用时&#xff0c;提示&#xff1a;“wget: command not found” 先在Linux服务器窗口中&#xff0c;输入如下命令&#xff0c;检查Linux服务器有没有安装过wget。 rpm -…

deepflow grafana plugin 编译问题解决

修改tsconfig.js 增加"noImplicitAny": false&#xff0c;解决代码类型没有指定&#xff0c;显示Any 错误 To solve the error, explicitly set the parameters type to any, use a more specific type or set noImplicitAny to false in tsconfig.json. https://b…