当前位置: 首页 > news >正文

人脸识别系统架构

目录

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 工程落地问题

5. 标准下载


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 工程落地问题

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

5. 标准下载

 《GB ∕ T 41772-2022 信息技术 生物特征识别 人脸识别系统技术要求》

相关文章:

人脸识别系统架构

目录 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…...

数塔问题(蛮力算法和动态规划)

题目:如下图是一个数塔,从顶部出发在每一个节点可以选择向左或者向右走,一直走到底层,要求找出一条路径,使得路径上的数字之和最大,及路径情况。(使用蛮力算法和动态规划算法分别实现) #include…...

启动 Redis 服务和连接到 Redis 服务器

启动 Redis 服务和连接到 Redis 服务器的步骤通常依赖于你的操作系统和 Redis 的安装方式。以下是一些常见的步骤: ### 启动 Redis 服务 对于大多数 Linux 发行版,Redis 服务可以通过以下命令启动: 1. 如果 Redis 是通过包管理器安装的&am…...

我独自升级崛起在哪下载 我独自升级电脑PC端下载教程分享

将于5月8日在全球舞台闪亮登场的动作角色扮演游戏《我独自升级崛起》,灵感源自同名热门动画与网络漫画,承诺为充满激情的游戏玩家群体带来一场集深度探索与广阔体验于一身的奇幻旅程。该游戏以独特的网络武侠世界观为基底,展现了一位普通人踏…...

STM32F4xx开发学习—GPIO

GPIO 学习使用STM32F407VET6GPIO外设 寄存器和标准外设库 1. 寄存器 存储器映射 存储器本身是不具有地址的,是一块具有特定功能的内存单元,它的地址是由芯片厂商或用户分配,给存储器分配地址的过程就叫做存储区映射。给内存单元分配地址之后…...

引领农业新质生产力,鸿道(Intewell®)操作系统助力农业机器人创新发展

4月27日至29日,2024耒耜国际会议在江苏大学召开。科东软件作为特邀嘉宾出席此次盛会,并为江苏大学-科东软件“农业机器人操作系统”联合实验室揭牌。 校企联合实验室揭牌 在开幕式上,江苏大学、科东软件、上交碳中和动力研究院、遨博智能研究…...

扩展学习|一文读懂知识图谱

一、知识图谱的技术实现流程及相关应用 文献来源:曹倩,赵一鸣.知识图谱的技术实现流程及相关应用[J].情报理论与实践,2015, 38(12):127-132. (一)知识图谱的特征及功能 知识图谱是为了适应新的网络信息环境而产生的一种语义知识组织和服务的方…...

ubuntu中的docker记录(3)——如何安装nvidia-docker以更好地支持GPU加速计算应用程序的运行

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、nvidia-docker2的安装1. 安装docker2. 安装nvidia-docker2(1) 添加密钥(2) 更新软件列表(3) 安装nvidia-docker2(4) 测试nvidia-docker2 二、可能的报错及解…...

MLP实现fashion_mnist数据集分类(1)-模型构建、训练、保存与加载(tensorflow)

1、查看tensorflow版本 import tensorflow as tfprint(Tensorflow Version:{}.format(tf.__version__)) print(tf.config.list_physical_devices())2、fashion_mnist数据集下载与展示 (train_image,train_label),(test_image,test_label) tf.keras.datasets.fashion_mnist.l…...

ChatGPT-税收支持新质生产力

Prompt: 税收发展助力新质生产力 Response: 是的,税收发展可以促进新质生产力的发展。通过税收政策的调整和优化,政府可以提供更好的创新环境,激发企业投资研发,推动新技术、新产品的出现,从而推动经济结构升级和新…...

Linux下深度学习虚拟环境的搭建与模型训练

在深度学习实践中,环境配置是十分重要且免不了的一步。本文以 YOLOv4 模型,介绍在Linux下虚拟环境配置到模型训练的过程。 安装Miniconda: Miniconda是Anaconda的一个轻量级版本,非常适合用于科学计算和数据处理。 wget https:…...

Map-Reduce是个什么东东?

MapReduce是一种用于使用并行分布式算法在集群计算机上处理大型数据集的编程模型及其相关实现。这一概念首先由Google普及,并随后作为Apache Hadoop项目的一部分开源发布。 MapReduce的基本工作流程: 映射(Mapping):这是第一阶段&#xff0c…...

上位机工作感想-从C#到Qt的转变-2

2.技术总结 语言方面 最大收获就是掌握了C Qt编程,自己也是粗看了一遍《深入理解计算机系统》,大致了解了计算机基本组成、虚拟内存、缓存命中率等基基础知识,那本书确实有的部分看起来很吃力,等这段时间忙完再研读一遍。对于封装…...

【C++】C++ 中 的 lambda 表达式(匿名函数)

C11 引入的匿名函数,通常被称为 Lambda 函数,是语言的一个重要增强,它允许程序员在运行时创建简洁的、一次性使用的函数对象。Lambda 函数的主要特点是它们没有名称,但可以捕获周围作用域中的变量,这使得它们非常适合在…...

OpenSSL实现AES-CBC加解密,可一次性加解密任意长度的明文字符串或字节流(QT C++环境)

本篇博文讲述如何在Qt C的环境中使用OpenSSL实现AES-CBC-Pkcs7加/解密,可以一次性加解密一个任意长度的明文字符串或者字节流,但不适合分段读取加解密的(例如,一个4GB的大型文件需要加解密,要分段读取,每次…...

cURL:命令行下的网络工具

序言 在当今互联网时代,我们经常需要与远程服务器通信,获取数据、发送请求或下载文件。在这些情况下,cURL 是一个强大而灵活的工具,它允许我们通过命令行进行各种类型的网络交互。本文将深入探讨 cURL 的基本用法以及一些高级功能…...

Baumer工业相机堡盟工业相机如何通过NEOAPISDK查询和轮询相机设备事件函数(C#)

Baumer工业相机堡盟工业相机如何通过NEOAPISDK查询和轮询相机设备事件函数(C#) Baumer工业相机Baumer工业相机NEOAPI SDK和相机设备事件的技术背景Baumer工业相机通过NEOAPISDK在相机中查询和轮询相机设备事件函数功能1.引用合适的类文件2.通过NEOAPISDK…...

Day45代码随想录动态规划part07:70. 爬楼梯(进阶版)、322. 零钱兑换、279.完全平方数、139.单词拆分

Day45 动态规划part07 完全背包 70. 爬楼梯&#xff08;进阶版&#xff09; 卡码网链接&#xff1a;57. 爬楼梯&#xff08;第八期模拟笔试&#xff09; (kamacoder.com) 题意&#xff1a;假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬至多m (1 < m < n)个…...

土壤重金属含量分布、Cd镉含量、Cr、Pb、Cu、Zn、As和Hg、土壤采样点、土壤类型分布

土壤是人类赖以生存和发展的重要资源之一,也是陆地生态系统重要的组成部分。近年来, 随着我国城市化进程加快&#xff0c;矿产资源开发、金属加工冶炼、化工生产、污水灌溉以及不合理的化肥农药施用等因素导致重金属在农田土壤中不断富集。重金属作为土壤环境中一种具有潜在危害…...

力扣:100284. 有效单词(Java)

目录 题目描述&#xff1a;输入&#xff1a;输出&#xff1a;代码实现&#xff1a; 题目描述&#xff1a; 有效单词 需要满足以下几个条件&#xff1a; 至少 包含 3 个字符。 由数字 0-9 和英文大小写字母组成。&#xff08;不必包含所有这类字符。&#xff09; 至少 包含一个 …...

如何快速掌握DDT数据驱动测试?

前言 网盗概念相同的测试脚本使用不同的测试数据来执行&#xff0c;测试数据和测试行为完全分离&#xff0c; 这样的测试脚本设计模式称为数据驱动。(网盗结束)当我们测试某个网站的登录功能时&#xff0c;我们往往会使用不同的用户名和密码来验证登录模块对系统的影响&#x…...

OpenCV如何实现背投(58)

返回:OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV直方图比较(57) 下一篇&#xff1a;OpenCV如何模板匹配(59) 目标 在本教程中&#xff0c;您将学习&#xff1a; 什么是背投以及它为什么有用如何使用 OpenCV 函数 cv::calcBackP…...

5-在Linux上部署各类软件

1. MySQL 数据库安装部署 1.1 MySQL 5.7 版本在 CentOS 系统安装 注意&#xff1a;安装操作需要 root 权限 MySQL 的安装我们可以通过前面学习的 yum 命令进行。 1.1.1 安装 配置 yum 仓库 # 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql…...

【Jenkins】持续集成与交付 (八):Jenkins凭证管理(实现使用 SSH 、HTTP克隆Gitlab代码)

🟣【Jenkins】持续集成与交付 (八):Jenkins凭证管理(实现使用 SSH 、HTTP克隆Gitlab代码) 1、安装Credentials Binding、git插件2、凭证类型及用途3、(用户名和密码类型)凭证的添加和使用3.1 用户密码类型3.2 测试凭证是否可用3.3 开始构建项目3.3 查看结果(进入Jenk…...

开源模型应用落地-CodeQwen模型小试-SQL专家测试(二)

一、前言 代码专家模型是基于人工智能的先进技术&#xff0c;它能够自动分析和理解大量的代码库&#xff0c;并从中学习常见的编码模式和最佳实践。这种模型可以提供准确而高效的代码建议&#xff0c;帮助开发人员在编写代码时避免常见的错误和陷阱。 通过学习代码专家模型&…...

Arch Linux安装macOS

安装需要的包 sudo pacman -S qemu-full libvirt virt-manager p7zip yay -S dmg2img安装步骤 cd ~ git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git cd OSX-KVM # 选择iOS版本 ./fetch-macOS.py #将上一步下载的BaseSystem.dmg转换格式 dmg2img -…...

接口自动化框架篇:Pytest + Allure报告企业定制化实现!

接口自动化框架是现代软件开发中的重要组成部分&#xff0c;能够帮助开发团队提高测试效率和质量。本文将介绍如何使用Pytest作为测试框架&#xff0c;并结合Allure报告进行企业定制化实现。 目标规划 在开始编写接口自动化测试框架之前&#xff0c;我们需要先进行目标规划。…...

保持 Hiti 证卡打印机清洁的重要性和推荐的清洁用品

在证卡印刷业务中&#xff0c;保持印刷设备的清洁至关重要。特别是对于 Hiti 证卡打印机来说&#xff0c;它们是生产高质量证卡的关键工具。保持设备清洁不仅可以保证打印质量和效率&#xff0c;还可以延长其使用寿命。本文将探讨保持 Hiti 证卡打印机清洁卡的重要性&#xff0…...

Unity C#的底层原理概述

文章目录 前言IL与IL2CPP总结 前言 看到底层二字&#xff0c;会感到很高深&#xff0c;好似下一秒就要踏入深渊。实际上&#xff0c;对于C#底层的理解非常简单&#xff0c;比冒泡排序这种基础算法还要简单。 底层的两种机制&#xff1a;Mono和IL2CPP。 IL2CPP其中的"2&qu…...

国产数据库的发展势不可挡

前言 新的一天又开始了&#xff0c;光头强强总不紧不慢地来到办公室&#xff0c;准备为今天一天的工作&#xff0c;做一个初上安排。突然&#xff0c;熊二直接进入办公室&#xff0c;说&#xff1a;“强总老大&#xff0c;昨天有一个数据库群炸了锅了&#xff0c;有一位姓虎的…...

湖北工程建设信息网站/青岛seo网站排名

view属性释义 所有点的坐标均从视图左下角&#xff08;0,0&#xff09;起算 图纸比例为1:20,打印出的图纸测试相应点坐标时需根据图纸比例计算 1. Origin&#xff08;149.1,46.125,0&#xff09; api:The view origin coordinates in the sheet. 2. ExtremaCenter&#xff…...

手机微网站制作/网站制作平台

为什么划分到数据结构Tag内呢&#xff0c;因为CDQ分治可以顶替复杂的高级数据结构&#xff0c;而且常数比较小。 待补充 相关资料 【教程】简易CDQ分治教程&学习笔记CDQ学习笔记权值树状数组/权值线段树【算法讲堂】【电子科技大学】【ACM】CDQ分治树状数组求逆序数BZOJ 陌…...

个人主页网站制作免费/培训心得简短200字

2019独角兽企业重金招聘Python工程师标准>>> 一、bucket数据结构介绍。 struct crush_bucket { __s32 id; //bucket的ID号&#xff0c;crushmap中所有bucket的编号都是负数 __u16 type; //bucket的类型(uniform/list/tree/straw/straw2) __u…...

六安网站制作费用多少/自媒体培训

TensorFlow基本使用 flyfish To use TensorFlow you need to understand how TensorFlow: Represents computations as graphs. 使用graph来表示计算 Executes graphs in the context of Sessions. 在session上下文中执行graph Represents data as tensors. 使用tensor…...

网站合作流程/seo搜索引擎优化到底是什么

配置RadASM编译器&#xff0c;选masm,在RadASM中新建-> Win32 App –>DialogAsMain.tpl &#xff0c;取名Dlg_Test,再打开 Dlg_Test.dlg中编辑资源&#xff0c;如下图&#xff1a; 对话框控件属性设置&#xff1a;Name :IDD_DIALOG ; Caption:拾色器 ; MaxButton:False ;…...

镇江网站设计/深圳网络营销网站设计

本实验使用2个输出目标&#xff1a;第一个目标为Excel文件&#xff0c;将满足匹配条件的查询结果输出到这个文件&#xff1b;第二个目标为平面文件&#xff0c;将不匹配条件的查询结果输出到这个CSV文件。一、使用“目标助手”1. 添加“目标助手”将“目标助手”图标搬到“Look…...