TinaFace:人臉檢測(cè)新紀(jì)錄

極市導(dǎo)讀
?作者設(shè)計(jì)了一個(gè)簡(jiǎn)易人臉檢測(cè)模型TinaFace,該模型基于RetinaNet,相比RetinaNet只做了很小的改動(dòng)。文章展示了該模型在單模型backbone僅為ResNet50的情況下的數(shù)據(jù)結(jié)果,都達(dá)到了當(dāng)前的state of the art,文章附有該模型代碼的開(kāi)源地址。>>加入極市CV技術(shù)交流群,走在計(jì)算機(jī)視覺(jué)的最前沿
這幾年人臉檢測(cè)的benchmark越刷越高,方法也越來(lái)越復(fù)雜,提出的模塊或者方法大都專門(mén)為人臉檢測(cè)設(shè)計(jì),不易復(fù)現(xiàn)和使用,比如DSFD里的FEM、PAL、IAM,ASFD里的AutoFEM、PAL、IAM、DRMC loss,HAMBox里的PA、OAM、RAL等等。

WIDER FACE驗(yàn)證集hard結(jié)果

WIDER FACE測(cè)試集hard結(jié)果
鑒于此,我們?cè)O(shè)計(jì)了一個(gè)簡(jiǎn)單而又強(qiáng)大的人臉檢測(cè)模型——TinaFace(https://github.com/Media-Smart/vedadet/tree/main/configs/trainval/tinaface),該模型基于RetinaNet,相比RetinaNet只做了很小的改動(dòng):
將BN換成GN; 加了一個(gè)IoU預(yù)測(cè)分支; 在backbone上嵌入了DCNv1; 將框回歸的loss從smooth l1 loss替換為DIoU loss。
在僅使用ResNet50作為backbone的情況下,TinaFace在WIDER FACE的驗(yàn)證集和測(cè)試集中的hard上達(dá)到了當(dāng)前的state of the art。我們只看hard的原因在于WIDER FACE的easy和medium都包含在hard之中,hard體現(xiàn)的是一個(gè)人臉檢測(cè)器在所有人臉上的檢測(cè)效果。
具體來(lái)說(shuō),在單模型,backbone僅為ResNet50的情況下。
1、驗(yàn)證集上
1.1、不使用TTA的TinaFace:TinaFace的AP為93.0%,比基于ResNet152的ASFD(使用TTA)高0.5%,比基于ResNet152的DSFD(使用TTA)高1.8%;
1.2、使用TTA的TinaFace:TinaFace的AP為93.4%,比基于ResNet50的HAMBox(使用TTA)高0.1%。
2、測(cè)試集上
2.1、不使用TTA的TinaFace:TinaFace的AP為92.1%,與基于ResNet152的ASFD(使用TTA)一樣,比基于ResNet152的DSFD(使用TTA)高2.1%;
2.2、使用TTA的TinaFace:TinaFace的AP為92.4%,比基于ResNet50的HAMBox(使用TTA)高0.1%。
TinaFace非常簡(jiǎn)單,基于RetinaNet,所添加的模塊在在通用的目標(biāo)檢測(cè)框架(比如mmdetection、vedadet(https://github.com/Media-Smart/vedadet))中都是現(xiàn)成的。而且訓(xùn)練不需要大batch,即使你的顯存只有11G,也可以復(fù)現(xiàn)TinaFace。也正因?yàn)門(mén)inaFace使用的模塊都非常經(jīng)典、成熟,TinaFace也會(huì)比較容易部署。
我們的代碼開(kāi)源地址為T(mén)inaFace,基于vedadet,里面提供當(dāng)前最好結(jié)果的權(quán)重,以及訓(xùn)練、測(cè)試、推理代碼,無(wú)論大家是想做研究、打比賽、還是僅僅想體驗(yàn)state of the art的效果,這個(gè)repo都能滿足你。
vedadet能做到的不僅于此,vedadet是我們基于mmdetection開(kāi)發(fā)的單階段目標(biāo)檢測(cè)框架,適用任意目標(biāo)檢測(cè)任務(wù),無(wú)論是人臉檢測(cè)還是通用目標(biāo)檢測(cè)。vedadet提供訓(xùn)練、測(cè)試、推理特性,后續(xù)會(huì)支持轉(zhuǎn)ONNX/TensorRT(https://github.com/Media-Smart/volksdep),以及基于TensorRT的Python前端SDK(https://github.com/Media-Smart/flexinfer)或者C++前端SDK(https://github.com/Media-Smart/cheetahinfer)。
想了解實(shí)驗(yàn)細(xì)節(jié)的朋友可以參見(jiàn)論文TinaFace: Strong but Simple Baseline for Face Detection(https://arxiv.org/abs/2011.13183)。實(shí)驗(yàn)中使用的數(shù)據(jù)分析工具我們也開(kāi)源了——volkscv(https://github.com/Media-Smart/volkscv)。
推薦閱讀

