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

人脸识别 Face Recognition 入门

人脸识别 Face Recognition 入门概述

  • 总述
    • 传统特征方法
    • 深度学习方法
    • 损失函数改进
      • 基于欧几里德和距离的损失
      • 基于角度/余弦边距的损失
      • SoftMax 损失及其变体
    • 一级标题
      • 二级标题
      • 二级标题
      • 二级标题

找论文搭配 Sci-Hub 食用更佳 💪
Sci-Hub 实时更新 : https://tool.yovisun.com/scihub/
公益科研通文献求助:https://www.ablesci.com/

总述

人脸识别流程:检测、对齐、(活体)、预处理、提取特征、人脸验证(识别)
在这里插入图片描述
在这里插入图片描述

传统特征方法

传统方法试图通过一两层表示来识别人脸,例如过滤响应、特征直方图分布。学术圈进行了深入的研究,分别改进了预处理、局部描述符和特征转换,但这些方法在提高FR准确性方面进展缓慢。更糟糕的是,大多数方法只针对不受约束的面部变化的一个方面,如光照、姿势、表情。没有任何综合技术来整体解决这些不受约束的挑战。因此,经过十多年的持续努力,“浅层”方法仅将LFW基准数据集的准确性提高到约95%[15],这表明“浅层的”方法不足以提取对真实世界变化的稳定身份特征。

深度学习方法

GhostFaceNets: Lightweight Face Recognition Model From Cheap Operations ,IEEE Access,2023,LFW dataset Rank 1.

混合精度,arcface (sub-center) cosface loss, ghostnet (lightweight)


Deep Polynomial Neural Networks,2021,作者来自英国伦敦帝国理工学院计算系、瑞士洛桑联邦理工学院 (EPFL) 电气工程系、希腊雅典大学信息学和电信系,该方法已申请专利。

多项式神经网络,即输出是输入的高阶多项式。未知参数自然地由高阶张量表示,通过因子共享的集体张量分解来估计。作者介绍了三种显着减少参数数量的张量分解,并展示了如何通过分层神经网络有效地实现它们。并凭经验证明,π-Nets 具有很强的表现力,它们甚至可以在大量任务和信号(即图像、图形和音频)中不使用非线性激活函数的情况下产生良好的结果。当与激活函数结合使用时,Π-Nets 在图像生成、人脸验证和 3D 网格表示学习三个具有挑战性的任务中产生了最先进的结果。


在这里插入图片描述
DCNN 将人脸图像(通常在姿势归一化步骤 [7]、[8] 之后)映射到应该具有较小的类内距离和较大的类间距离的特征。训练 DCNN 进行人脸识别有两个主要研究方向。一些训练一个多类分类器,可以在训练集中分离不同的身份,例如使用 softmax 分类器 [2]、[4]、[9]、[10]、[11],其他直接学习嵌入,例如三元组损失 [3]。

基于大规模训练数据和精细的 DCNN 架构,softmax-loss 的方法 [9] 和triplet-loss 的方法 [3] 都可以获得出色的人脸识别性能。然而,softmax loss 和 triplet loss 都有一些缺点。

对于 softmax 损失:(1)学习到的特征对于闭集分类问题是可分离的,但对于开放集人脸识别问题的区分度不够; (2) 线性变换矩阵 W ∈ R d × N W \in \mathbb{R}^{ d×N} WRd×N 的大小随身份数 N N N 线性增加。

对于三元组损失: (1) 人脸三元组的数量组合爆炸式增长,尤其是对于大规模数据集,导致迭代步数显着增加; (2) 半难样本挖掘对于训练有效的模型来说相当困难。

在这里插入图片描述
DiscFace: Minimum Discrepancy Learning for Deep Face Recognition,2020,ACCV

作者发现了基于Softmax的方法的一个重要问题:在训练阶段,对应类权重附近的样本特征同样受到惩罚,尽管它们的方向不同。为了缓解这一问题,提出了一种新的训练方案,称为最小差异学习,它通过使用单一的可学习基来强制类内样本特征的方向向最优方向对齐。

早些时候,深度度量学习方法通​​过样本对(或三元组)之间距离的局部关系学习人脸嵌入,从而在类不平衡数据集下取得了可喜的成果 [1–3, 11]。深度度量学习能够通过利用某些度量损失直接捕获更多的判别力。然而,它们的性能在很大程度上取决于采样和挖掘策略,因此,度量学习模型通常需要耗时的来回过程来训练。

与分类任务相比,学习大边缘判别特征对于人脸识别任务至关重要,特别是在开放集协议下,这是一种更现实但更具挑战性的人脸识别协议 [6]。许多工作都试图修改 softmax 损失以获得有效的 large-margin 判别特征 [5, 6, 13, 7, 8]。这样的变体能够直接优化特征之间的角度和超球面流形中相应的类权重。

然而,作者观察到,在开放集协议下,它们的评估性能可能会受到训练和评估过程之间差异的影响:训练期间使用样本特征和 softmax 类权重之间的匹配分数,而在评估阶段(没有类别权重)匹配分数是在不同样本特征之间计算的。这种差异导致样本特征之间存在方向差异,如图 1 所示。作者将此问题称为“process discrepancy”。

在这里插入图片描述
总之,该方案专门用于减轻训练和评估阶段之间的过程差异,以便在评估阶段提供更好的性能。这是第一个基于 softmax 学习方法的用于解决过程差异问题的人脸识别任务,而以前的方法只关注判别学习。

在这里插入图片描述

损失函数改进

基于 Softmax 的学习:在各种应用中许多方法已经研究基于 softmax 的判别特征学习 [18-25]。在人脸识别任务中,Center loss [4]提出了一种最小化类内方差的方法。该方法计算每个类的样本质心,并最小化特征向量与其对应质心之间的类内距离。 Crystal loss [26]引入一个约束来强制特征向量的范数为某个值。Ring loss[27]使范数成为可训练的参数,并鼓励对特征向量的范数进行最佳训练。 NormFace [5] 是一种学习超球体流形特征的方案,这样类之间的区分就可以通过角度来完成。Sphereface [6] 引入了乘法角度边缘损失,使特征更具辨别力。类似的方式,CosFace [7] 和 ArcFace [8] 证明了角边距的有效性,它们以不同的方式使用角距。

基于度量学习: 基于度量的学习方法 [1-3] 直接从样本之间的关系中学习判别特征。对比损失 [1] 使用正负样本对来学习两个样本之间的关系。三元组损失 [3] 学习到锚点和正样本之间的距离小于锚点和负样本之间的距离。尽管基于度量的学习是解决验证问题的一种直观方法,但基于度量的学习的主要缺点在于数据采样的困难。很难训练所有可能的对或三元组,性能在很大程度上取决于挖掘策略。

基于欧几里德和距离的损失

基于角度/余弦边距的损失

SoftMax 损失及其变体

一级标题

二级标题

二级标题

二级标题

相关文章:

人脸识别 Face Recognition 入门

人脸识别 Face Recognition 入门概述 总述传统特征方法深度学习方法损失函数改进基于欧几里德和距离的损失基于角度/余弦边距的损失SoftMax 损失及其变体 一级标题二级标题二级标题二级标题 找论文搭配 Sci-Hub 食用更佳 💪 Sci-Hub 实时更新 : https://tool.yovisu…...

【AI绘画】Midjourney的使用及程序示例

Midjourney 1.背景2.Midjourney的原理3.Midjourney的使用方法4.Midjourney的示例代码 1.背景 Midjourney 是一款基于深度学习的图像转换工具,其可以将一张图像转换成具有不同风格的图像,例如将一张照片转换成卡通风格的图像。Midjourney 基于 TensorFlow…...

无公网IP?教你在外远程访问本地wamp服务器「内网穿透」

目录 前言 1.Wamp服务器搭建 1.1 Wamp下载和安装 1.2 Wamp网页测试 2. Cpolar内网穿透的安装和注册 2.1 本地网页发布 2.2 Cpolar云端设置 2.3 Cpolar本地设置 3. 公网访问测试 4. 结语 前言 软件技术的发展日新月异,各种能方便我们生活、工作和娱乐的新…...

leetcode 628. 三个数的最大乘积

题目描述解题思路执行结果 leetcode 628. 三个数的最大乘积 题目描述 三个数的最大乘积 给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。 示例 1: 输入:nums [1,2,3] 输出:6 示例 2&…...

fork函数如何创建进程,exit/_exit函数如何使进程终止的详细分析与代码实现

🎊【进程通信与并发】专题正在持续更新中,进程,线程,IPC,线程池等的创建原理与运用✨,欢迎大家前往订阅本专题,获取更多详细信息哦🎏🎏🎏 🪔本系列…...

重置电脑时提示“缺少所需的驱动器分区”怎么办?

当您启动Windows 10电脑并收到“您的电脑/设备需修复”这个消息提示时,您会马上尝试修复电脑,如果您这样做了,您可能会收到一个“安装Windows的驱动器已被锁定”的信息。如果您尝试重置您的电脑,您可能会收到一条提示,…...

在KylinV10安装Dm8

前言 因为近期,业外和几个朋友想搞点有趣的项目玩玩,既然不以盈利为主,就> 主推国产化,所以这篇记录一下,我在KylinV10安装dm8.最近真的很忙,要负责专研一下国产化工具开发的事,还要负责tb级…...

「SQL面试题库」 No_46 交换工资

🍅 1、专栏介绍 「SQL面试题库」是由 不是西红柿 发起,全员免费参与的SQL学习活动。我每天发布1道SQL面试真题,从简单到困难,涵盖所有SQL知识点,我敢保证只要做完这100道题,不仅能轻松搞定面试&#xff0…...

SLAM论文速递【SLAM—— RDS-SLAM:基于语义分割方法的实时动态SLAM—4.24(1)

论文信息 题目: RDS-SLAM:Real-Time Dynamic SLAM Using Semantic Segmentation Methods RDS-SLAM:基于语义分割方法的实时动态SLAM论文地址: https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber9318990发表期刊: IEEE Access ( Volum…...

OJ练习第82题——填充书架

填充书架 力扣链接:1105. 填充书架 题目描述 给定一个数组 books ,其中 books[i] [thicknessi, heighti] 表示第 i 本书的厚度和高度。你也会得到一个整数 shelfWidth 。 按顺序 将这些书摆放到总宽度为 shelfWidth 的书架上。 先选几本书放在书架…...

OHOS IDE和SDK的安装方法

参照OpenHarmony应用开发环境安装流程,下载安装OHOS的IDE,过程中需要全程联网。 IDE,安装至D:\Tools\Huawei\DevEcoStudio。 IDE安装成功之后,按照提示下载安装HOS和OHOS的SDK。 nodejs,安装至D:\Tools\Huawei\nodejs…...

New Year Garland(计数类DP)

New Year Garland 题意 ​ 用m种颜色的球装饰n层的圣诞树,圣诞树的第i层由 l i l_{i} li​个彩球串成,且同一层相邻的球颜色不同,相邻的层之间彩球颜色的集合不同,问有多少种方案,对p取模。 分析 ​ 首先先计算每一…...

32岁阿里P7,把简历改成不知名小公司,学历改成普通本科,工作内容不变,投简历全挂!...

hr靠什么来招人? 一位猎头讲述了自己和朋友打赌的故事: 朋友在阿里云,32岁,P7,他把简历上的公司改成不知名,学历改成普通本科,工作内容不变,结果投其他公司(比如京东&…...

从三室心脏MRI影像检测主动脉瓣病变

Detecting Aortic Valve Pathology from the 3-Chamber Cine Cardiac MRI View 摘要 背景 心脏磁共振(CMR)是量化心脏容量、功能和血流量的金标准。定制的MR脉冲序列定义了对比机制,采集几何形状和定时,可以在CMR期间应用,以实现独特的组织…...

【JavaWeb】JavaScript

1、JavaScript 介绍 Javascript 语言诞生主要是完成页面的数据验证。因此它运行在客户端,需要运行浏览器来解析执行 JavaScript 代码。 JS 是 Netscape 网景公司的产品,最早取名为 LiveScript;为了吸引更多 java 程序员。更名为 JavaScript。 JS 是弱…...

Apache Doris 1.2.4 Release 版本正式发布|版本通告

亲爱的社区小伙伴们,我们很高兴地宣布,Apache Doris 于 2023 年 4 月 27 日迎来 1.2.4 Release 版本的正式发布!在 1.2.4 版本中,Doris 团队已经修复了自 1.2.3 版本发布以来近 150 个问题或性能改进项。同时,1.2.4 版…...

【C++STL】map

文章目录 一. map的介绍二. map的使用结束语 一. map的介绍 map是关联容器,它按照特定的次序(按照key来比较)存储由键值key和值value组合而成的元素在map中,键值key通常用于排序和唯一地标识元素,而value中存储与此键值…...

vue2项目PC端如何适配不同分辨率屏幕

项目构建:基于vue-cli3构建,使用postcss-px2rem px2rem-loader进行rem适配 实现原理:每次打包,webpack通过使用插件postcss-px2rem,帮我们自动将px单位转换成rem单位前方有坑:UI框架部分组件使用JavaScript…...

CorelDRAW2023最新版本图像设计软件

CorelDRAW 2023作为最新版的图像设计软件,在功能上做了较大提升,主要新的功能特性如下: 1. 全新界面设计:采用简约现代的 UI 设计,菜单和工具重新组织,更加直观易用。提供自动提示与设计指导,易于上手。 2. 智能工具与提示:运用 AI技术对用户操作行为和设计习惯进行分析,给出…...

第64章 树型结构数据的前端渲染渲染显示示例

1 \src\views\TreeTestView.vue <template> <div class"wrap"> <!--注意&#xff1a;1、“回到顶部”组件及其回滚内容都必须包含到同1个div容器中。--> <!-- 2、div容器中必须有1个唯1性的样式类&#xff08;例如&#xff1a;wrap&#xff09…...

超级国际象棋:第二个里程碑已完成

获取Cartesi资助的项目的最新进展&#xff0c;现在将完全去中心化的Web3国际象棋带到你的手中 “Ultrachess是一个完全基于区块链的国际象棋应用程序&#xff0c;由Cartesi Rollup技术支持&#xff0c;允许用户将真实价值投入到比赛中&#xff0c;不仅仅是他们的Elo分数。 此…...

vue3 HTML 和静态资源

目录 静态资源可以通过两种方式进行处理&#xff1a; URL 转换规则 public 文件夹 何时使用 public 文件夹 public/index.html 文件是一个会被 html-webpack-plugin 处理的模板。在构建过程中&#xff0c;资源链接会被自动注入。另外&#xff0c;Vue CLI 也会自动注入 re…...

5G基站外市电改造建设方案 (ppt可编辑)

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用&#xff0c;如有侵权请联系删除 外市电定义及分类 定义&#xff1a;由供电部门提供的专用高压电源或非专用高压电源或低压电源均称为市电。分类&#xff1a; &#xff08;1&#xff09;按电压等级分类 ①提供…...

C++ 类和对象(上)

类 面向对象的三大特性&#xff1a;封装&#xff0c;继承&#xff0c;多态 C语言结构体中只能定义变量&#xff0c;在C中&#xff0c;结构体内不仅可以定义变量&#xff0c;也可以定义函数。比如&#xff1a; 之前在数据结构初阶中&#xff0c;用C语言方式实现的栈&#xff0c;…...

【BIM+GIS】BIM模型导入GIS软件之前的一些处理设置

文章目录 一、模型位置发生偏移二、模型对象丢失或增加三、模型材质发生变化四、导出过程缓慢五、模型属性批量丢失一、模型位置发生偏移 在视图→可见性/图形替换模型类别→场地(VV可见性快捷),勾选项目基点。 单击选中项目基点,在属性中修改几点坐标。 即使修改了项目基…...

js FileReader的常用使用方法

FileReader 对象允许 Web 应用程序异步读取存储在用户计算机上的文件&#xff08;或原始数据缓冲区&#xff09;的内容&#xff0c;使用 File 或 Blob 对象指定要读取的文件或数据。 主要的读取方法&#xff1a; readAsArrayBuffer()&#xff1a; 开始读取指定的 Blob 中的内…...

网络威胁情报:数据的力量

在一个日益互联和数字化的世界中&#xff0c;网络威胁已成为一项重大挑战&#xff0c;可能危及您组织的声誉、财务稳定性和整体运营效率。 事实上&#xff0c;根据 IBM 2022 年的一份报告&#xff0c;数据泄露的平均成本现在为 435 万美元。 鉴于网络威胁的重要性和影响日益突…...

shell:清理指定目录中指定天数之前的旧文件

前言 我们在服务器运行一些服务经常会产生很多临时文件&#xff0c;而有些临时文件不定期处理很容易就打满了整个磁盘&#xff1b;所以有必要去定期清理&#xff0c;基于这个需求我们就可以搞一个脚本结合crontab或者服务调度这些来使用&#xff1b; 脚本实现 #!/bin/bash# …...

想入门网络安全?先来看看网络安全行业人才需求!

如果你是一个想要入门网络安全行业的小白、如果你是网络安全专业在读的大学生、如果你是正在找工作的新手&#xff0c;那么这篇文章你一定要仔细看。毕竟知己知彼百战百胜&#xff0c;知道行业的人才需求才能更好得发挥自己的优势。 当你打开BOSS直聘、拉钩等招聘网站&#xf…...

0424 spring AOP学习

AOP是指什么&#xff1f; 面向切面编程&#xff0c;Aspect Oriented Program。是一种编程范式、思想。 Spring AOP里涉及的AOP原理叫什么&#xff1f; 动态代理。 动态代理其实就是在运行时动态的生成目标对象的代理对象&#xff0c;在代理对象中对目标对象的方法进行增强。…...