代码链接:GitHub/zma-c-137/VarGFaceNet
一、问题与挑战
-
人脸识别被广泛应用于监控、商场以及生物领域,但时由于大量的identity需要被分类,在计算成本有限的移动设备或嵌入式系统上实现人脸识别仍然具有挑战性。
-
现有的轻量级网络如SqueezeNet, MobileMet, MobileNetV2, ShuffleNet等虽然运用了少量的计算量并达到很好的效果,但在嵌入式硬件和相应编译器上的嵌入式系统的优化问题仍然存在。
-
针对以上方法,地平线曾在2019年提出一个使用与一般计算机视觉任务的轻量级网络VarGNet(论文链接),有效解决块内计算强度不平衡的问题。 但是VarGNet的一些内部设计不适用于人脸识别任务。
二、本文提出
本文在VarGNet的基础上进行修改,提出了一个用于轻量级人脸识别任务的网络VarGFaceNet。主要修改的几个方面有:
- 为了提高VarGNet用于轻量级人脸识别上的判别能力,在VarGNet blocks内加入了SE block 和 PReLU。并在网络开始位置删掉了downsample,为人脸图像保留更多信息。
- 为了减少网络的参数,本文在最后的FC layer之前加入Variable Group Convolution,将特征图缩到 1 ∗ 1 ∗ 512 1*1*512 1