人脸识别概念解析

目录

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.hqwc.cn/news/661620.html

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

相关文章

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

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

Protobuf 通信协议

Protobuf Protobuf 简介使用技术内幕 Protobuf 简介 在移动互联网时代,手机流量、电量是最为有限的资源,而移动端的即时通讯应用无疑必须得直面这两点 解决流量过大的基本方法就是使用高度压缩的通信协议,而数据压缩后流量减小带来的自然结…

暴雨服务器引领信创算力新潮流

去年大模型的空前发展,人工智能也终于迎来了属于自己的“文艺复兴”,众多的模型相继发布,继而催生了整个行业对于智能算力需求的激增。 市场需求与技术驱动仿佛现实世界的左右脚,催动着世界文明的齿轮向前滚动。在全球经济角逐日…

Android创建快捷方式到桌面

效果图 参考 https://blog.51cto.com/u_16175498/8811197https://blog.51cto.com/u_16175498/8811197 权限 <uses-permission android:name"com.android.launcher.permission.INSTALL_SHORTCUT" /> 实现 if (Build.VERSION.SDK_INT > Build.VERSION_C…

【Java】实现一个简单的线程池

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 目录 ​编辑 一、线程池的模式 二、线程池的一些参数 三、代码实现 1.BlockingQueue 2.ThreadPool 四、拒绝策略 一、线程池的模式 线程池顾名思义就是管理线程的一个池子&#xff0c;我们把创建线程的过程交给…

Murphy:优维大模型运维数智人上线服役

01 墨菲定律&#xff1a; 幽默又严肃的NASA军规 「墨菲定律」 &#xff08;Murphy’s law&#xff09; 任何可能出错的事情最终都会出错 墨菲定律强调了在复杂系统和人类活动中&#xff0c;事情往往会出现意想不到的差错。虽然这只是一种对人类经验和偶然性的幽默概括与启…

iA Writer for Mac:简洁强大的写作软件

在追求高效写作的今天&#xff0c;iA Writer for Mac凭借其简洁而强大的功能&#xff0c;成为了许多作家、记者和学生的首选工具。这款专为Mac用户打造的写作软件&#xff0c;以其独特的设计理念和实用功能&#xff0c;助你轻松打造高质量的文章。 iA Writer for Mac v7.1.2中文…

前端性能优化知识梳理

1.重要性 当我们面试的时候&#xff0c;前端性能优化方面算是必考的知识点&#xff0c;但是工作中我们又很少会重点的对项目进行前端优化&#xff0c;它真的不重要吗&#xff1f; 如果我们可以将后端响应时间缩短一半&#xff0c;整体响应时间只能减少5%~10%。而如果关注前端…

ZYNQ启动流程分析之BOOT.BIN头

BOOT.BIN头简介 BOOT.BIN头其实就是BOOT.BIN文件前面的一段头部数据&#xff0c;并且这个头部数据是按照一定的格式组织在一起的&#xff0c;并且该头部数据能够被BootROM代码解析。   在boot.bin文件中从地址0-0x8FF可以分为17个部分&#xff0c;每个部分都有一定的含义。…

深入解析yolov5,为什么算法都是基于yolov5做改进的?(一)

YOLOv5简介 YOLOv5是一种单阶段目标检测算法&#xff0c;它在YOLOv4的基础上引入了多项改进&#xff0c;显著提升了检测的速度和精度。YOLOv5的设计哲学是简洁高效&#xff0c;它有四个版本&#xff1a;YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x&#xff0c;分别对应不同的模型大小…

Dockerfile实战(SSH、Systemctl、Nginx、Tomcat)

目录 一、构建SSH镜像 1.1 dockerfile文件内容 1.2 生成镜像 1.3 启动容器并修改root密码 二、构建Systemctl镜像 2.1 编辑dockerfile文件 ​编辑2.2 生成镜像 2.3 启动容器&#xff0c;并挂载宿主机目录挂载到容器中&#xff0c;然后进行初始化 2.4 进入容器验证 三、…

基本STL使用

一 、关于vector 在STL中有一个称为vector的数据结构&#xff0c;可以用来代替数组。 定义Book特性 private:vector<string> shelf_books;Notic : 类中不能使用类似的定义&#xff1a;vector<sttring> shelf_boos( 10 ); 定义Book方法 public:void setName(str…