2025
基于 Transformer 的人脸活体检测
面向打印照片、屏幕展示静态照片和屏幕回放视频三类人脸展示攻击,构建 CNN + Transformer 活体检测模型。输入连续摄像头画面,用 CNN 提取逐帧视觉特征,再用 Transformer 建模帧间关系。完成从视频采样、模型训练到人脸分析推理整合的开发流程。
覆盖的展示攻击
- 打印照片
- 屏幕展示静态照片
- 屏幕回放视频
从逐帧特征,到整段视频的判断
视频采样
可配置视频序列长度与抽帧间隔
CNN 特征提取
提取每一帧的视觉特征
Transformer 时序建模
结合位置编码与 CLS Token,建模帧序列
活体判断
基于序列表示,完成视频级判断
我负责的工作
开发时序模型与视频训练流程,并将活体检测与 YOLO 检测、人脸特征及表情识别整合到同一套推理流程中。
自采样本评估
使用自行拍摄的真人画面,以及照片与视频展示攻击进行测试。在开发阶段的小规模演示中,加入 Transformer 的时序模型相比当时使用的基线模型,出现的误判更少。
上述表现为开发演示中的定性观察,不作为标准测试集准确率。
技术记录
要解决的问题
只看单帧画面,很难稳定地区分真人、打印照片、屏幕中的静态照片和回放视频。视频中连续的动作变化能为活体判断提供更多依据。
我的做法
我用 CNN 提取每一帧的特征,再由 Transformer 学习帧与帧之间的变化,利用时间信息判断是否为真人。
具体实现
完成训练和视频推理流程,并把 YOLO 人脸检测、人脸特征、表情识别和活体检测整合到同一套流程中。
技术栈
使用 PyTorch;模型采用 CNN + Transformer,目标检测由 YOLO 完成。
- 开发 CNN + Transformer 模型,输入连续视频帧,而不是单张图片。
- 搭建视频训练流程,序列长度和抽帧间隔均可配置。
- 使用 CLS Token 和位置编码,学习整段视频的信息及帧顺序。
- 把 YOLO 人脸检测、人脸特征、表情识别和活体检测整合到同一套推理流程中。