Latent-OFER:使用潜在向量进行检测、屏蔽和重建,以实现遮挡的面部表情识别

news2024/9/20 7:59:10

论文:Latent-OFER: Detect, Mask, and Reconstruct with Latent Vectors for Occluded Facial Expression Recognition

摘要:所提出的方法Latent-OFER可以检测遮挡,将面部被遮挡的部分恢复为未被遮挡的部分,并识别它们,从而提高 FER 准确性。

创新点

        (1)提出了一种与表情相关的特征提取器,它使用空间注意力为特定的面部特征分配更高的权重,从而能够识别 FER 的关键位置,可以从ViT潜在空间检索与表达相关的潜在向量,以使用这些位置作为关键值来提取有价值的信息。

        (2)提出ViT-SVDD,一种针对基于ViT的网络进行优化的基于补丁的遮挡检测模块,作为自监督局部分类器,ViT-SVDD模块仅针对未遮挡面部图像的潜在向量进行训练,该方法准确地对看不见的物体造成的遮挡进行分类,以便后续重建。

        (3)提出了一种混合重建网络,它将ViT和CNN架构的优点与自组装层和语义一致性损失相结合,以生成自然且表情丰富的面部图像。

网络架构

        如图 2 所示,提出了多阶段方法来解决 OFER,包括检测、屏蔽和重建遮挡以识别面部表情。将面部图像划分为多个块,将每个块分类为遮挡或未遮挡,并重建被遮挡的块以进行去遮挡。随后,面部图像重建过程采用遮挡检测器生成的遮挡图像。利用重建的图像和表情相关的潜在向量来预测面部表情。该方法通过协作学习从图像重建过程中提取的 ViT 潜在向量和现有的 CNN 特征来提高识别精度。

(1)遮挡检测模块:ViT-SVDD

        使用了基于ViT的重建方法,提出了一种专门针对 ViT 优化的中级异常检测器。 划分图像以匹配 ViT patch的大小并创建 ViT 潜在向量。 这些patch使用信息特征进行编码,以产生 ViT 潜在向量。 为了生成未遮挡补丁的最小特征空间,使用了深度 SVDD 算法。 一类深度 SVDD 采用二次损失来惩罚每个网络表示的距离。 该目标定义为

        网络学习参数 W,使得数据点紧密映射到超球面的 c。为了确定patch是否被遮挡,计算了每个patch的新输入信息与特征空间中心 c 之间的距离。 如果距离超过预定义的半径,则相应的块被分类为被遮挡。半径的最佳值在 SVDD 过程中自动确定。 通过这个过程,可以对看不见的物体进行遮挡块检测。所提出的 ViT-SVDD 方法允许使用遮挡patch注释来验证合成图像的性能。 通过检测遮挡块,可以提高重建方法的准确性。

(2)图像重建模块:混合重建网络

        面部图像重建过程采用遮挡检测器生成的遮挡图像。 混合重建网络旨在通过融合基于 ViT 和基于 CNN 的网络进行协作。 通过这种机制,充分利用了 ViT 和 CNN 的优势。 基于ViT的方法采用16×16块作为输入图像; 然而,使用遮挡检测器的输出作为输入,因为图像已经被遮挡检测器分割成块单元。

a.网络结构

        基于 ViT 的方法对输入补丁进行编码并积极嵌入所有标记。 被遮挡的斑块重建是通过与其他斑块的相关来实现的。ViT 具有低归纳偏差和高自由度,使其能够在不同的遮挡形状、位置和面部姿势的情况下生成可靠的图像。结合 ViT 和 CNN,网络由 U-Net 架构组成。此外,在编码器内部添加了一个自组装层来生成详细的表示。 这种多结构方法有效地结合了 ViT 和基于 CNN 的网络的优势,生成能够很好地表示面部表情的高质量面部图像重建。

b.自组装层

        实现了自组装层来改进 FER 的图像重建。基于人脸左右特征对称的概念,在重建遮蔽区域时使用了水平翻转图像对应位置中存在的特征信息。通过合并来自三个来源的信息来扩展生成过程中使用的候选补丁的范围:先前生成的补丁、未遮蔽区域中最相似的补丁以及位于水平翻转图像的相应位置的补丁。在这个过程中,被遮蔽的区域包含了ViT网络的重建结果。 根据与当前补丁的相似度值为每个分配权重。权重计算基于互相关度量:

其中p表示遮罩区域中的补丁,补丁px是比较目标。p和px之间的相似度值用S表示。

        生成补丁值pi:

其中,ps表示相对于p对称定位的补丁值,并通过考虑外围补丁进行平均。Ssym 通过 pi 和 psi 计算为方程 (2)。 另外,pk是未屏蔽区域中与p最相似的补丁,并且Sknown被计算为S(pi, pki )。进一步地,pi-1表示先前生成的patch,Si-1由S(pi,pi-1)获得。将相似度值S标准化后作为权重。

        在图 3 中,(a) 中的红色补丁是 pi,它是 pk(橙色补丁)、pi−1(黄色补丁)和 ps((b) 中的蓝色补丁)的组合结果。 因为 p1 没有先前生成的补丁,所以 S0 为零。 在某些情况下,例如侧面图像,对称位置的面片可能与生成面片无关。 因此,在这种情况下 Ssym 的值很小,并且很少用于生成补丁。

c.目标

        图像重建的目的是填充被遮蔽的部分,为FER提供补充信息。 为了实现这一目标,引入了语义一致性损失,可以在保持重建损失 Lre、一致性 Lc、特征补丁鉴别器 Ldf 和补丁鉴别器 Ld的同时优化任务。

        语义一致性损失Lsc强调面部表情属性。Lsc具有减少组内变异性的作用,可以定义为:

pc(zgt)表示c在ground-truth图像中的预测概率,pc(zrec)表示c在重建结果中的预测概率。 预测的概率分布是通过预训练的 FER 网络获得的。

        训练过程中,总体损失函数定义为:

其中λre、λc、λsc、λd分别表示重建、一致性、语义一致性、鉴别器损失的权衡参数。 此外,FER 网络使用相同的特征提取架构进行训练,使用有关真实标签的概率分布和 FER 的预测。

(3)面部表情识别网络

        所提出的 FER 网络被设计为基于注意力的模型,用于预测面部表情。 采用了空间和通道注意机制,使用基于注意力的模型获得了细化的特征图和 CAM(类激活映射)。 此外,使用 CAM 从 ViT 获得了表情相关的潜在载体。Latent-OFER 协同使用基于 CNN 的特征和基于 ViT 的潜在向量。 因此,该模型表现更好。

        表达相关的 ViT 潜在载体。 所提出的方法仅采用与表达相关的潜在向量而不是整个潜在空间来提高 FER 性能。 在重建过程中,通过嵌入输入图像来提取基于 ViT 的潜在向量。 使用 CAM 来识别 FER 图像中的空间重要区域,并通过 CNN 生成类激活图。

        使用空间注意力权重超过前50%的区域。 从整个 ViT 潜在向量中检索,并读取相应的值。激活图用于识别与表情相关的潜在向量,如图 4 所示。该过程能够选择与 FER 相关的位置。

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

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

相关文章

【Java自动化学习】Web自动化

一、环境安装 环境搭建安装见此博客文章链接:https://blog.csdn.net/qq_73471456/article/details/130836494 二、元素定位、等待方式 见此之前的博客文章:selenium操作使用方式 三、下拉框定位 四、iframe 切换元素定位 注意事项:连续定…

数学排列组合

我突然想发一篇文章(别问我为什么[doge]) 排列组合大家都听过吧,今天的主角就是排列组合。 废话不多说,直接开始 先来看几道题目: :由1,2,3,4组成不同的三位数有几种? :有四个人,每两个人都要握手一次,要握…

【秋招笔试】8.24美团秋招(算法岗)-三语言题解

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收…

[JAVA] 什么是Java线程同步机制?

在单线程程序中,每次只能做一件事情,后面的事情需要等待前面的事情完成后才可以进行,如果使用多线程程序,就会发生两个线程抢占资源的问题,所以在多线程编程中,需要防止这些资源访问的冲突,Java…

LED显示屏原理及其系统组成

随着城市化进程的加快,LED显示屏的需求在各个行业中迅速增长。无论是用于广告宣传、信息发布,还是场馆显示,LED显示屏都扮演着重要的角色。然而,对于很多人来说,LED显示屏的工作原理及其系统组成可能并不为熟知。本文将…

589. N 叉树的前序遍历(递归法)

目录 一:题目: 二:代码: 三:结果: 一:题目: 给定一个 n 叉树的根节点 root ,返回 其节点值的 前序遍历 。 n 叉树 在输入中按层序遍历进行序列化表示,每…

Java JNA调用C函数常见问题及解决方法

目录 1 undefined symbol:xxx2 Java映射C数组乱码3 Java使用String接收不到C函数返回的char*4 Unable to load DLL xxx.dll5 java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 应用程序6 无效的ELF头7 Structure array elements must use contiguous memory8 j…

备考计算机二级Python之Day4下篇

实例解析--猜数字游戏 编写一个“猜数字游戏”的程序,在1~1000之间随机产生一个数,然后请用户循环猜这个数字,对于每个答案只回答“猜大了”或“猜小了”,直到猜对为止。输出用户的猜测次数。 使用Python语言的随机标准库random…

开源游戏开发引擎LayaAir

LayaAir是一款由Layabox公司推出的次世代全平台3D引擎,它支持2D、3D、VR与AR产品的开发,并允许开发者一次开发后同时发布为Web、小游戏、Native APP等多种平台的产品。 LayaAir引擎提供强大的IDE集成环境,包含3D场景编辑器、材质编辑器、粒子…

【linux中高级命令】

杀进程 1、lsof列出所有打开的文件,‌包括网络连接,‌从而提供关于系统状态的宝贵信息‌ #可以直接查看端口的进程 lsof -i:端口获取到进程,使用kill命令和PID来终止进程 kill -9 [PID]2、列出使用该端口的进程信息,‌包括PID …

linux上datax 安装以及使用

前言 DataX 是一款由阿里巴巴开源的数据同步工具,旨在帮助用户实现不同数据源之间的高效数据迁移和同步。无论是从传统的关系型数据库、NoSQL 数据库,还是到大数据存储系统,DataX 都能够轻松应对各种数据同步需求。通过简单的配置和灵活的插…

【解压即玩】最终幻想7 重制版中文+预购特典+全DLC,难忘的一作

数年前,一家名为神罗的公司(起初称为神罗工程所)发现了一种深埋于地底的神秘生物遗骸(被称为杰诺瓦)以及一种名为“魔晄”的能源。这家公司通过将这种生物遗骸浸泡在魔晄中来生产电力,从而迅速崛起成为全球…

一套在线工具管理服务器+DB+Redis+Mongo等

Team IDE是一个基于Web的、集成了多种开发工具和服务(MySql、Oracle、金仓、达梦、神通等数据库、SSH、FTP、Redis、Zookeeper、Kafka、Elasticsearch、Mongodb)的一体化开发环境,它不仅为开发者提供了便捷的开发体验,还支持团队协…

【文本 >>> 语音】⭐️SpringBoot 结合 jacob 简单实现一个文本朗读功能

目录 🍸前言 🍻一、环境准备 🍺二、依赖引入 💞️三、简单启动 🍹四、接口改造 4.1 封装为一个工具类 4.2 暴露一个接口 4.3 测试 🌱五、扩展 🍸前言 小伙伴们大家好,上次…

初学Python如何快速入门(内附详细攻略),一文讲清

目前python可以说是一门非常火爆的编程语言,应用范围也非常的广泛,工资也挺高,未来发展也极好。 Python究竟应该怎么学呢,我自己最初也是从零基础开始学习Python的,给大家分享Python的学习思路和方法。一味的买书看书…

AI指挥细胞大变身,脑瘤生存率跃升75%?

“ 胶质母细胞瘤(GBM),一种凶险的脑癌,曾让无数家庭陷入绝望。然而南加州大学凯克医学院的一项突破性研究,利用AI技术将脑癌细胞转化为免疫细胞,为GBM患者带来了前所未有的生存希望。 ” AI识别与重编程…

Windows系统注册表

一、修改文件图标 电脑程序怎么更换python文件的图标_mob64ca12d12b68的技术博客_51CTO博客 二、 1.打开注册的命令: 按winR快捷键,在弹出的窗口中输入:regedit 2.注册表样式 已学习至:0:47:32 课堂链…

OpenAI Sora:视频生成领域的创新力量

一、Sora 的诞生与技术原理 Sora 模型由 OpenAI 推出,其诞生背景与人工智能技术在多模态领域的不断探索和发展紧密相关。在视频数据日益丰富和重要的时代,对视频生成模型的需求愈发迫切,Sora 应运而生。 Sora 独特的技术原理使其在众多模型…

验证码短信怎么实现Java接口对接

在当今数字化时代,商家和企业对于用户身份验证的需求日益增强,这不仅是出于保护用户数据安稳的考虑,也是维护业务正常运营、防止欺诈行为的重要一环。在众多身份验证手段中,文字验证码短信因其便捷性和低成本特性,成为…