简介:
FaceX-Zoo是一个专为人脸识别而生的开源库,是目前准确率最高的开源人脸识别项目。FaceX-Zoo是基于PyTorch实现的。它提供了一个训练模块,其中有各种supervisory head和骨干网络,以实现最先进的人脸识别; 同时也提供了一个标准化的评估模块,该模块只需编辑一个简单的配置就可以评估大多数流行基准中的模型。此外,还提供了一个简单的功能齐全的face SDK,用于验证和初步应用训练过的模型。除了人脸识别,还针对实际应用开发了特定功能(如人脸戴口罩等)。
训练模块支持多种人脸图像预处理,支持多个主流骨干网和监督学习头,并提供了多种并行和加速策略。评估模块除了预处理和多种骨干网可选外,还针对主流人脸数据集的评估协议进行了兼容,方便算法比较。应用组件则提供了可人脸识别实际应用中需要的人脸识别、对齐、戴口罩等功能,后续官方还计划加上人脸解析、重打光等。
关于名称:
“face”-此repo主要用于人脸识别。
“X”-我们还致力于提供人脸识别以外的功能,例如面部切割、面部打光。
“zoo”-有很多算法和模型在这个repo。
运行环境:
- python >= 3.7.1
- pytorch >= 1.1.0
- torchvision >= 0.3.0
识别流程说明:
FaceX-zoo实现人脸识别包含三个步骤,第一步人脸检测,第二步人脸对齐,第三步人脸检测
人脸检测(face detection):使用的目前准确度最好的retina网络,经过实测比常见的yolo,ssd和MTCNN等准确很多
人脸对齐(face alignment):人脸对齐主要是人脸关键点的检测,使用的是人脸关键点的检测模型是pfld
人脸识别(face recognition):人脸识别提供了多种模型mobilefacenet,retnet50-ir等网络的预训练模型和网络结构
框架结构:

FaceX-Zoo的架构。实框中的模块是当前版本中已经提供的模块,虚线框中的模块将在后续版本中添加。上图巧妙地展示了FaceX-Zoo的总体架构。整个项目主要包括四个部分:培训模块、评估模块、附加模块和face SDK,其中前两个模块是本项目的核心部分。培训和评估模块包括预处理、培训模式、主干、监督负责人和测试协议等几个组成部分。作者将详细说明如下。
预处理:
这个模块在将图像发送到网络之前完成图像的基本转换。对于训练,作者实现了常用的操作,如大小调整、归一化、随机裁剪、随机翻转、随机旋转等。可根据不同需求,灵活添加定制操作。对于评估,只使用大小调整和标准化。同样地,测试增强,如五种作物,水平翻转等,也可以通过自定义轻松添加到作者的框架中。
训练模式:
将传统的人脸识别训练模式作为基线例程。具体来说,通过Da
FaceX-Zoo:最高准确率开源人脸识别库详解

FaceX-Zoo是一个基于PyTorch的开源人脸识别库,提供训练和评估模块,以及功能齐全的SDK。它支持多种预处理、骨干网络和监督学习头,实现先进的人脸识别功能,包括口罩人脸识别。训练模块包括数据增强策略,评估模块兼容多种人脸数据集的评估协议。此外,FaceX-Zoo还提供了FMA-3D模块用于在图像中添加虚拟口罩,用于训练和评估蒙面人脸识别模型。实验表明,半连体训练策略能显著提高浅层人脸学习的性能。
最低0.47元/天 解锁文章
1744

被折叠的 条评论
为什么被折叠?



