人脸识别概念解析

目录

1. 概述

2. 人脸检测

3. 人脸跟踪

4. 质量评价

5. 活体检测

6. 特征提取

7. 人脸验证

8. 人脸辨识


1. 概述

        人脸识别在我们的生活中随处可见,例如在大楼门禁系统中,它取代了传统的门禁卡或密码,提高了进出的便捷性和安全性。在商场安保方面,人脸识别被广泛应用于监控系统,有助于识别和跟踪潜在的犯罪嫌疑人或失踪人员,提升了安全防范的能力。另外,手机解锁也是人脸识别技术的重要应用之一,它为用户提供了一种快捷、便利的身份验证方式,替代了传统的密码或指纹识别。

        人脸识别是基于人的脸部特征信息进行身份识别的一种生物识别技术,主要用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行识别的一系列相关技术。可以集成到产品或系统中,实现基于人脸识别的身份管理、人证核验等功能,可应用于智慧金融、智慧安防等场景。

        人脸识别算法主要涉及人脸图像采集、人脸检测、人脸跟踪、活体检测、人脸图像质量评价、人脸特征提取与比对等一系列技术。

2. 人脸检测

        通过摄像头采集到的人脸图像,除了人脸部分之外还包含大量的背景信息,需要经过人脸检测算法获得人脸在图像中位置和角度等信息,并经过相似变换得到规范化的人脸图像后才能使用识别算法提取人脸特征和比对。

        因为人脸可能出现在图像中任意位置且具有任意大小,人脸检测算法需要对所有的位置和大小进行判断。

        人脸检测算法的输入是一张图片,输出是人脸框坐标序列(0个人脸框或1个人脸框或多个人脸框)。一般情况下,输出的人脸坐标框为一个正朝上的正方形。

        常见的人脸检测算法基本是一个“扫描”加“判别”的过程,即算法在图像范围内扫描,再逐个判定候选区域是否是人脸的过程。因此人脸检测算法的计算速度会跟图像尺寸、图像内容相关。开发过程中,我们可以通过设置“输入图像尺寸”、或“最小脸尺寸限制”、或“人脸数量上限”的方式来加速算法。

3. 人脸跟踪

        在视频中,从检测到人脸帧开始 ,在连续的后续帧中,对目标人脸的运动轨迹和轮廓变化进行持续分析与跟踪。在跟踪过程中,需要用唯一的编号来区分每个被跟踪的人脸,这个编号称为PID。

        在连续的视频帧中,当一个人进入视频画面直到离开,其PID不变,通过PID来标识同一个人,只需做一次人脸识别,从而有效提高人脸识别的效率,节省设备算力。

4. 质量评价

        人脸识别系统对输入的人脸图像的质量非常敏感,当输入的人脸图像出现光照变化、脸部旋转、画面模糊、表情夸张等情况时,其识别率会显著下降。低质量的人脸图像可能是引起人脸识别系统匹配错误的主要原因,也直接导致了很多系统无法在实际中使用。

        因此,需要在人脸图像检测阶段,建立一个对人脸图像质量的评价机制,通过评价结果对采集到的人脸图像进行筛选,当图像质量高于一定阈值时才会被送到识别系统中进行识别,否则图像将被丢弃,不做处理。

        《GB ∕ T 41772-2022 信息技术 生物特征识别 人脸识别系统技术要求》给出了人脸图像质量评价标准如下表所示。

项目

要求

注册人脸样本

配合式待识别样本

非配合式待识别样本

人脸大小

两眼瞳间距

≥ 60像素

≥ 55像素

≥ 40像素

清晰度

高斯模糊

<0.24

<0.25

<0.30

运动模糊

<0.15

<0.20

<0.26

拉普拉斯方差

≥ 500

≥ 350

≥ 200

姿态

水平转动角

-10° ~ 10°

-20° ~ 20°

-45° ~ 45°

俯仰角

-10° ~ 10°

-15° ~ 15°

-20° ~25°

倾斜角

-10° ~ 10°

-15° ~ 15°

-25° ~25°

完整度

几何失真

≤ 5%

≤ 10%

≤ 15%

眉毛可见度

100%

≥ 90%

≥ 75%

眼睛可见度

100%

100%

100%

鼻子可见度

100%

≥ 95%

≥ 85%

嘴巴可见度

100%

100%

100%

面颊皮肤可见度

100%

≥ 85%

≥ 75%

保真度

化妆和修图情况

未化妆修图

未化妆修图

未化妆修图

光照

均匀性

无光斑和阴阳脸

无光斑和阴阳脸

无光斑和阴阳脸

整体亮暗

无过曝和欠曝

无过曝和欠曝

无过曝和欠曝

灰度级

256级

256级

256级

灰度动态范围

(85~200灰度值占比)

> 95%

> 90%

> 80%

表情

表情类别

中性

中性或微笑

中性或微笑

眼睛睁闭

自然睁开

自然睁开

自然睁开

嘴巴张合

自然闭合

自然闭合或微笑

自然闭合或微笑

5. 活体检测

        活体检测是判断人脸图像是来自真人还是来自攻击假体(照片、视频等)的方法。

        人脸识别系统存在被伪造攻击的风险。因此需要在人脸识别系统中加入活体检测,验证用户是否为真实活体本人操作,以防止照片、视频、以及三维模型的入侵,从而帮助用户甄别欺诈行为,保障用户的利益。

        活体检测分为静默活体检测和配合式活体检测。配合式活体检测即“张张嘴”、“眨眨眼”、“摇摇头”之类;多应用于APP刷脸登录、注册等。静默活体检测是不需要任何动作配合,通过算法和摄像头的配合,进行活体判定;使用起来非常方便,用户在无感的情况下就可以通过检测比对,效率非常高。

        《GB∕T 41772-2022 信息技术 生物特征识别 人脸识别系统技术要求》给出了假体攻击类型包括不限于二维假体攻击和三维假体攻击,如下表所示。

二维假体攻击

二维静态纸张图像攻击

样本材质

打印纸、亚光相纸、高光相纸、绒面相纸、哑粉纸、铜版纸等

样本质量

分辨率、清晰度、大小、角度、光照条件、完整度等

呈现方式

距离、角度、移动、弯曲、折叠等

裁剪方式

图像是否扣除眼部、鼻子、嘴巴等

二维静态电子图像攻击

设备类型

移动终端、微型计算机等

设备显示性能

分辨率、亮度、对比度等

样本质量

分辨率、清晰度、大小、角度、光照条件、完整度等

呈现方式

距离、角度、移动等

二维动态图像攻击

图像类型

录制视频、合成视频等

设备类型

移动终端、微型计算机等

设备显示性能

分辨率、亮度、对比度等

图像质量

分辨率、清晰度、帧率等

呈现方式

距离、角度、移动等

三维假体攻击

三维面具攻击

面具材质

塑料面具、三维纸张面具、硅胶面具等

呈现方式

距离、角度、移动等

光线条件

正常光、强光、弱光、逆光等

裁剪方式

面具是否扣除眼部、鼻子、嘴巴等

三维头模攻击

头模材质

泡沫、树脂、全彩砂岩、石英砂等

呈现方式

距离、角度、移动等

光线条件

正常光、强光、弱光、逆光等

6. 特征提取

        特征提取是将一张人脸图像转化为一串固定长度的数值的过程。这个数值串被称为人脸特征,具有表征这个人脸特点的能力。

        特征提取过程的输入是 “一张人脸图”和“人脸五官关键点坐标”,输出是人脸相应的一个数值串(特征)。特征提取算法都会根据人脸五官关键点坐标将人脸对齐预定模式,然后计算特征。

        目前主流的特征提取方法是基于深度学习,利用深度网络模型对海量的人脸图片进行学习,然后对输入图像提取出对区分不同人的脸有用的特征向量,代替人工设计的特征。通过特征向量在特征空间里进行比对,同一人的不同照片提取出的特征,在特征空间里距离较近,不同人的脸在特征空间里相距较远。

7. 人脸验证

        人脸验证(Face Verification)是判定两个人脸图像是否为同一人的算法。

        它的输入是两个人脸特征,通过人脸比对获得两个人脸特征的相似度,通过与预设的阈值比较来验证这两个人脸特征是否属于同一人(即相似度大于阈值,为同一人;小于阈值为不同)。

8. 人脸辨识

        人脸辨识(Face Recognition)是识别出输入人脸图像对应身份的算法。

        它的输入一个人脸特征,通过和注册在库中N个身份对应的特征进行逐个比对,找出“一个”与输入特征相似度最高的特征。将这个最高相似度值和预设的阈值相比较,如果大于阈值,则返回该特征对应的身份,否则返回“不在库中”。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Adfind的使用

Adfind是一个使用C语言写的活动目录查询工具,它允许用户轻松地搜索各种活动目录信息。它不需要安装,因为它是基于命令行的。它提供了许多选项,可以细化搜索并返回相关细节。下面讲解Adfind的参数以及其使用。 参数 执行如下命令即可查看Adf…

ruoyi-nbcio-plus基于vue3的flowable为了适配文件上传改造VForm3的代码记录

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: h…

Flutter笔记:DefaultTextStyle和DefaultTextHeightBehavior解读

Flutter笔记 DefaultTextStyle和DefaultTextHeightBehavior解读 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:htt…

PriorityQueue—优先级队列FollowUp

FollowUp大纲: 思维导图: FollowUp PriorityQueue: Q1:但不知道是大根堆化石小根堆 A:Q1 只需要放进去几个元素peek()出元素是大的还是小的 下面如果是5就是小根堆10就是大根堆 A:默认是小根…

Github创建远程仓库(项目)

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

OPPO Reno10Pro/Reno11/K10手机强解BL刷root权限KSU内核抓包刷机救砖

OPPO Reno10Pro/Reno11/K10手机虽然发布时间并不久,但由于天玑处理器的体质,已经支持强制解锁BL了,该漏洞来自第三方工具适配,支持OPPO天机8100/8200刷机救砖解锁BL不需要等待官方深度测试直接实现。解锁BL后的OPPO Reno10Pro/Ren…

华为ensp中BGP(边界网关协议)基础原理及配置命令

作者主页:点击! ENSP专栏:点击! 创作时间:2024年4月27日10点04分 BGP(边界网关协议)是一种路由协议,用于在互联网中的不同自治系统(AS)之间交换路由信息。它…

Edge浏览器新特性深度解析,写作ai免费软件

首先,这篇文章是基于笔尖AI写作进行文章创作的,喜欢的宝子,也可以去体验下,解放双手,上班直接摸鱼~ 按照惯例,先介绍下这款笔尖AI写作,宝子也可以直接下滑跳过看正文~ 笔尖Ai写作:…

运算符重载(2)

1.赋值运算符重载 #include<iostream> using namespace std;class Person { friend void test01(); public:Person(int age){m_Age new int(age);}/*堆区的数据由程序员手动开辟并手动释放*/~Person(){if (m_Age ! NULL){delete m_Age;}}Person& operator(Person &a…

如此建立网络根文件系统 Mount NFS RootFS

安静NFS系统服务 sudo apt-get install nfs-kernel-server 创建目录 sudo mkdir /rootfsLee 将buildroot编译的根文件系统解压缩到 sudo tar xvf rootfs.tar -C /rootfsLee/ 添加文件NFS访问路径 sudo vi /etc/exports sudo /etc/exports文件&#xff0c;添加如下一行 …

比 PSD.js 更强的下一代 PSD 解析器,支持 WebAssembly

比 PSD.js 更强的下一代 PSD 解析器&#xff0c;支持 WebAssembly 1.什么是 webtoon/ps webtoon/ps 是 Typescript 中轻量级 Adobe Photoshop .psd/.psb 文件解析器&#xff0c;对 Web 浏览器和 NodeJS 环境提供支持&#xff0c;且做到零依赖。 Fast zero-dependency PSD par…

创建SpringBoot和RabbitMQ的整合项目

文章目录 创建SpringBoot和RabbitMQ的整合项目首先快速创建一个maven项目引入SpringBoot整合rabbitMQ的依赖在src/main目录下创建resources目录并引入配置文件写消息发送者MessageSender写消息接收者MessageReceiver写RabbitMQConfig配置类写SpringBoot启动主类CommandLineRunn…

决策树模型示例

通过5个条件判定一件事情是否会发生&#xff0c;5个条件对这件事情是否发生的影响力不同&#xff0c;计算每个条件对这件事情发生的影响力多大&#xff0c;写一个决策树模型pytorch程序,最后打印5个条件分别的影响力。 一 决策树模型是一种非参数监督学习方法&#xff0c;主要…

Java高阶私房菜:JVM垃圾回收机制及算法原理探究

目录 垃圾回收机制 什么是垃圾回收机制 JVM的自动垃圾回收机制 垃圾回收机制的关键知识点 初步了解判断方法-引用计数法 GCRoot和可达性分析算法 什么是可达性分析算法 什么是GC Root 对象回收的关键知识点 标记对象可回收就一定会被回收吗&#xff1f; 可达性分析算…

使用R语言进行简单的因子分析

在本文中&#xff0c;将介绍如何使用R语言进行因子分析&#xff0c;并通过一个示例演示整个过程。因子分析是一种多元统计分析方法&#xff0c;用于探索变量之间的潜在结构和关系。R语言提供了丰富的统计工具和包&#xff0c;使因子分析的实现变得简单而高效。 准备工作 首先…

c++中的链表list的模拟实现

拖更了半个月&#xff0c;我终于来填c的坑啦。上次我们说的vetcor不知道小伙伴还记得多少呢&#xff1f;今天我们要讲list的模拟实现。 目录 架构结点list表的结构 构造函数尾插push_back()尾删pop_back()计算个数&#xff1a;size()判断空empty()※迭代器问题普通迭代器迭代器…

数据结构:实验六:图的操作

一、 实验目的 &#xff08;1&#xff09;掌握图的邻接矩阵和邻接表存储结构。 &#xff08;2&#xff09;熟练图的邻接表的基本运算。 &#xff08;3&#xff09;加深图的深度优先遍历算法和广度优先遍历算法的理解 二、 实验要求 有下图所示的带权有向图及其对应的邻…

【Python时序预测系列】麻雀算法(SSA)优化LSTM实现单变量时间序列预测(源码)

这是我的第269篇原创文章。 一、引言 麻雀算法&#xff08;Sparrow Search Algorithm&#xff0c;SSA&#xff09;是一种基于麻雀群体行为的算法&#xff0c;它可以用来优化深度学习模型中的参数。在优化LSTM模型时&#xff0c;可以通过麻雀算法来调整LSTM的参数&#xff0c;以…

亚马逊测评的目的是什么?

测评的目的&#xff1a;店铺销量、留评 特别是新品&#xff0c;一个产品销量很低也没什么评价的产品&#xff0c;很难说服真实买家们&#xff0c;因为同类目还有其他的选择&#xff0c;不管是谁都不愿意当小白鼠的&#xff0c;而且打造爆款&#xff0c;提升产品权重这些都离不…

【华为】SVI接口实验配置

【华为】SVI接口实验配置 拓扑实验要求设备核心交换机PCPC1PC2 查看VLAN验证 配置文档 拓扑 实验要求 一台三层交换机&#xff0c;两台PC PC1 和 PC2 静态获取地址&#xff0c;并处于不同VLAN 然后PC的网关是处在三层交换机LSW1身上&#xff0c;不同VLAN就是处在不同网段&…
最新文章