吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

主講人:袁野 | 曠視研究院研究員

屈鑫 編輯整理

量子位 出品 | 公衆號 QbitAI

12月27日晚,量子位·吃瓜社聯合Face++論文解讀系列第四期開講,本期中曠視(Megvii)研究院解讀了近期發表的Face Attention Network論文。

本篇論文所提出的Face Attention Network,是基於分層注意力機制的人臉圖像區域檢測器,能夠在不影響速度的情況下顯著提高被遮擋的人臉檢測問題的召回率。

本期主講人爲曠視研究院研究員袁野,同時也是論文共同一作,wider face legend board第一。主要負責face detection工作。

量子位應讀者要求,將精彩內容整理如下:

這篇論文中主要提出的是如何設計和使用Attention的機制去解決大尺度變化下的遮擋問題。論文通過精心設計的anchor setting和anchor level 的attention機制能夠在不影響速度的情況下顯著提高被遮擋的人臉的召回率。

Face detection的主要背景

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

從背景上來看,對於Face的檢測,跟General detection一脈相承。從是否需要提取proposal和是否需要對這個proposal進行二次操作的角度來簡單劃分的話,主要分爲One stage detector和Two stage detector。

這兩個方法總體來說是各有利弊。One stage detector主要的優勢是快速,這個主要是從工程上來說,假如你在手機上從一個256甚至更高維度的1024的 channel上直接crop一個feature出來,是一個相當耗時的工作,所以one stage天然就有很好的速度優勢。

但是one stage有也存在不足,它由於沒有後面refine的過程,在兩個人臉或者是兩個物體捱得比較近,或者是難以辨認的情況下,one stage通常會在性能上會有一定的劣勢。

Face detection的挑戰

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

在Face detection上面,相比於其他有哪些特別困難的地方?

首先是scale,由於face自身的特殊性,不論是通用物體或者行人檢測,通常情況下,我們只是在意比較近處的物體。scale的變化遠遠沒有人臉這麼大。

其次是occlusion,也就是遮擋問題。遮擋問題簡單地分爲兩部分:物體的遮擋;face的自遮擋。識別戴頭巾或者口罩的人臉,這是一個典型的物體遮擋的問題。如果兩個人捱得特別近,以至於把後面的人擋住了一部分,但是勉強還是可以看到另一部分,這就是face的自遮擋。

那麼去解決這個遮擋問題,我們的motivation是什麼?

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

對於遮擋的物體,我們首先需要確定這是不是一個臉,或者是至少要確定這是不是一個頭。這就需要context信息,例如能夠看到更多的地方,能看到身軀或者是看到頭的整個區域,這樣就有助於判斷。這些信息可以通過合理的Anchor setting或者是合理的大感受野去隱式地學到。

此外,只看context信息也會產生一些誤導,所以需要可見的部分來輔助確認這塊區域真的是人臉,而不是其他的東西。這個時候我們可以考慮用segmentation或者是attention的機制去處理。

那麼基於這個motivation應該怎麼去設計網絡?

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

這張圖是我們主要的網絡設計構架。從網絡設計構架上面來說,前面這個紅色和這個白色的區域,可以理解爲一個FPN的結構,可以複用多層的信息,通過合理的anchor設計,保證每個anchor都有較大的感覺野,隱式地學習context信息。(c)這個部分是一個attention的子網絡,我們在得到feature之後,會另開一支去學習attention,之後對attention做一個E指數的操作乘到原來的feature map上面,加強可見區域信息。

後面是一個類似於fast R-CNN兩支操作:一支做classification,一支做regression。 Anchor setting設置可以保證每個人臉都有足夠的感受野以及足夠的context信息。底下這個attention的subnet,它可以通過有監督的信息,學到visible的information,也就能提高對遮擋物體檢測的能力。

anchor setting

先統計一下Wider face本身,大概80%以上的人臉其實都是集中在16 pixel到406 pixel這樣的量級上面,還有約10%的量級是在8pixel到16pixel。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

所以我們在設計上的時候,需要考慮到如何讓anchor去覆蓋這麼大的一個區域。Ratio上的設置,我們選擇了1和1:1.5,其實是潛在地考慮了正臉和側臉兩種情況,因爲通常情況下一個face,在正臉的情況下,1:1都是可以接受的。側臉的情況下,可以近似到1:1.5。

P3、P4、P5、P6、P7是分別是表示我們FPN的各個layer,P3表示的是一個淺層的信息,然後P7表示的是越深層的信息。

在感受野上面,feature的感受野是anchor的4倍左右,例如P3層達到了接近99的水平,是P3 anchor的四倍大小。這樣就可以提供足夠的context信息來保證能夠檢測出輪廓。鋪設密度上,沒有選擇傳統的每一層只有一個anchor的鋪設方式,採用每層3個scale,以2 ^ -1/3 步進。如果每層只鋪設一個anchor,就會導致個別的ground truth,分配不到一個很好的anchor。

當然anchor也不是鋪設得越密越好。如果把anchor鋪設得更密一些,比如每層每個layer鋪4個anchor,這樣會導致的有很多的FP,最終導致性能下降。

還有一個問題是:我們統計出來的anchor只有16到406,而wider face上有大概10%的是在8到16或者是更低的程度,我們可以放棄這一部分嗎?

如果這個face在8pixel量級的情況下,我們把它放大出來,圖像就很糊,基本上也已經沒有什麼紋理的信息。加入訓練會引來大量的噪聲,反而會導致detector性能的下降。就實驗結果來看下降還是比較明顯的,大概會下降2到3個點。

Attention的操作

我們之前說過,只有context的信息,很難分辨這個物體到底是不是一個被遮擋人臉。這個時候需要加入一些attention,或者是加入一些segmentation,把這些區域給學出來,那麼到底怎麼學?

首先ground truth只有bounding box。那麼我們就採用將bounding box的區域填1,直接作爲segmentation去學。由於大量的ground truth是沒有遮擋的,當發生遮擋時,最後學出來的segmentation會對於這些未遮擋的信息更加敏感。

其次還有一個細節,在我們的attention網絡裏面,做完attention之後,不是簡單的點乘到原來的feature map上面,而是先做了一個E指數的操作,再去點乘到feature map上面。這樣做就不是隻保留attention高量的部分,而是對高量的部分做一些增強,這樣能夠很好地保留它原有的context信息,同時也能夠突出它自身那個可見區域的信息。

然後是attention機制的整體框架。我們相比於其他的attention來說,attention不僅是有監督的,同時不同的層賦予不同的anchor level的監督信息。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

我們來簡單看一下左邊這張圖,是unsupervised的attention map,unsupervised attention基本上是在隨機地學,這對我們來說就沒有什麼意義。右邊這張圖,是加了supervised的attention之後,對於一個遮擋的物體,它能夠很好地focus到可見的部分。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

其次,我們看這張圖,左邊是全部採用統一監督信號的結果,這表示如果我們把所有的layer都放上同樣的監督信號,網絡主要focus的是一些比較顯著的臉;對於一些比較小的人臉學習的並不理想。右邊是採用了anchor level attention的結果,不同的layer根據anchor去生成不同的ground truth。這保證在不同的layer上面,它focus的地方是不一樣的,就減輕了這些大臉對小臉的干擾。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

然後這是Ablation study的信息。從base model來看,它只有63點多,然後通過修正anchor,它能夠達到79.8的水平。加入attention之後它會有一個80.9的漲幅。後面是scale test的一些技巧,最終可以達到88.8,相比於市面上最好的結果也要高出一個多點。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

還有我們在兩個主要數據集上的表現:在widerface數據集上,我們比第二名高了3個點,比現今legend board上第一高1.2個點。在mafa這個遮擋數據集上,我們比之前的AP提升了接近11個點左右。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

接下來是Wider face上的檢測結果:不論是尺度變化比較大,還是遮擋比較嚴重的情況都能夠有很好的結果。

吃瓜筆記|曠視研究院:被遮擋人臉區域檢測的技術細節

接下來是我們在MAFA上的處理的結果,也可以看到對於這些口罩或者是在被遮擋的問題上都能處理得還不錯。

Paper總結

簡單對paper做一些總結。

對於大尺度變化以及高遮擋的問題,detector是一個十分艱鉅的任務。

  1. 對於這樣的任務,首先需要保證它有足夠的感受野來提供context信息,尤其是對小臉或者是遮擋的臉來說。

  2. 同時在anchor assign的策略上,比較密集的合理的分佈,能夠保證ground truth都有一個很好的proposal。

  3. Attention的機制可以幫助網絡學到很好的可見區域。

  4. 最後是Multi anchor-level attention,這樣能夠讓不同的layer去學face scale的information,使小臉更好地得到學習。

除總結之外,還有一些展望。

  1. 剛剛看到的視頻上存在有很多的FP,這其實是一個很難調和的問題。比如說在識別小臉這種特別艱鉅的問題的時候,爲了保證recall,可能就會引入大量的anchor和大量的機制,這樣就會導致FP激增。對於這樣的問題還需要進一步的探索。

  2. 現在的Face Attention Network,它的base model是一個很大的model,如何小型化,也是我們下一步將要探索的一個地方。

一則招人硬廣:

希望加入曠視科技(Megvii)一起登上CV巔峯的同學可以投簡歷至俞剛:[email protected],長期招聘算法實習生。實習優秀者,更有直接跳過面試階段,入職Megvii研究院的機會。

Q&A

小的人臉比較模糊,爲了防止引入一些噪聲,就把這些數據給去掉了,那這些小的人臉到底有多小,是怎麼定義的?

一部分是實驗本身得出來的結論,另一方面是本身我們是在8倍pixel上面去做的classification,對於8倍pixel以下的人臉,他在8倍的feature上,它可能最後就變成了1個pixel到2個pixel,本身這個任務就很艱難地完成,所以我們當時就簡單地先按8 pixel來去做,後來實驗表明的確這是一個很合理的setting。

Attention的機制和分割的聯繫?

Segmentation可以理解爲一個簡單的per pixel的classification,它有很好的標註信息。但是我們的attention是一個隱式的學習的過程,也就是說attention本身在ground truth的時候,給它大量無遮擋的臉和一些正臉的圖像,讓它去學習。我們在COCO上面其實是用到了segmentation,加入了segmentation之後會有一個很好的漲點。

如果技術落地的話,對哪些場景比較合適?

目前我們發paper的這個model是很難去做一些很實時的東西。以現在paper角度上來看,它可以做一些這樣任務:安防入庫;錄入其他數據。也可以在雲端上去做。如果說它可以小型化,就有很多很開闊的場景,比如說抓拍機,一些人臉解鎖,無人化的超市等等。

框架是怎樣的?

這個框架應該算one stage的detector。因爲後面沒有接ROI pooling或者是它之類的這些衍生物,主要是考慮到本身對於速度的要求。加上ROI pooling之後,對高feature數進行crop 的操作會非常耗時。所以我們就採用了one stage的detector。

以上就是此次曠視研究院袁野帶來分享的全部內容。在量子位公衆號(QbitAI)界面回覆“180107”可獲得完整版PPT以及視頻回放鏈接

— 完 —

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公衆號(QbitAI)對話界面,回覆“招聘”兩個字。

量子位 QbitAI · 頭條號簽約作者

վ’ᴗ’ ի 追蹤AI技術和產品新動態

參考資料
5 hours ago … 12月27日晚,量子位·吃瓜社联合Face++论文解读系列第四期开讲,本期中旷视(
Megvii)研究院解读了近期发表的Face Attention Network论文。 本篇论文所提出的
Face Attention Network,是基于分层注意力机制的人脸图像区域检测器,能够在不
影响速度的情况下显著提高被遮挡的人脸检测问题的召回率。 本期主讲 …
6 小時前 … 12月27日晚,量子位·吃瓜社聯合Face++論文解讀系列第四期開講,本期中曠視(
Megvii)研究院解讀了近期發表的Face Attention Network論文。 本篇論文所提出的
Face Attention Network,是基於分層注意力機制的人臉圖像區域檢測器,能夠在不
影響速度的情況下顯著提高被遮擋的人臉檢測問題的召回率。 本期主講 …
2016年1月27日 … 此后,人脸识别领域的玩家开始增多,目前,国内市场上公司有几十家,技术领先者有
SenseTime(商汤科技)、Face++ (旷视科技)、Linkface 、依图科技等。 … 前瞻产业
研究院发布的《2015-2020年中国人脸识别行业市场前瞻与投资战略规划分析报告》
预判,未来几年,人脸识别技术,有望成为未来互联网金融行业的标 …
2014年9月24日 … 近年来,视频人脸的跟踪识别技术受到越来越多研究者的关注,原因包括两方面,一:
计算机计算和存储成本的大幅度下降使得以视频速度或近似视频速率采集 …
Research),自助比利时Katholieke大学电子工程系、法国国家计算机科学和控制
研究院INRIA等欧洲著名大学和研究机构为警察、法庭等司法机构提供基于 …
資料來源:IBG,DIGITIMES整理,2010/3。 虹膜辨識為目前單一生物辨識技術中最
精準的方式,不過因為成本等因素無法快速普及。LG. 人臉辨識不但應用在安全產業
,消費性電子產業也有相當多的應用之處,例如數位相機。NIKON. 生物辨識的應用
領域甚廣,而在更強的維安需求下,準確度等要求也不斷提升。LG. 生物辨識與所有
身分 …
4 小時前 … 在國內的互聯網界,有五位大咖撐起着行業的半邊天,在各自領域占據着行業的風口
,擁有着決定性的話語權,這五位大咖分別是馬雲、馬化騰、李彥宏、周鴻禕、丁磊,
他們身後的公司,是互聯網電子商務、移動社交、搜索引擎、安全軟件、遊戲開發領域
的巨無霸,攫取着各自領地一切的利潤,日進斗金,在經濟不景氣的 …
人脸识别中的迁移学习简介( Transfer Learning ). 文章来源:云从科技研究院1 、
目的(为什么需要迁移学习) 目前大多数机器学习算法均是假设计算机训练的样本
数据和真实测试的数据特征分布相同。然而这在现实世界中却时常不可行。因此,…
查看全文 · 风雨兼程. 2 个月前. 20 赞2 条评论 · Iphone X 人脸识别技术分析. 作者:
云从 …
2017年4月25日 … 根据腾讯优图团队的介绍,MegaFace是业界第一个对海量1:N人脸识别技术进行
评测的人脸识别竞赛。海量1:N人脸 … 聊一聊细节,本年度MegaFace比的是100万
级的大规模1:N人脸识别任务。这一比赛 … 这一平台也是通用性的深度学习工具,
不仅面向人脸模型训练,同时可以支持图像、音频上的其他研究需求。
2017年7月3日 … 一个细节是,去年的百度世界大会会场,安排了并不算明显的人脸识别区,少部分人
发现了这一区域,并在现场拍照后,从人脸识别通道快速进场,多数参会者则 … 百度
研究院院长林元庆称,机场不同于景点、公司门禁,对安全性有极高的要求,百度人脸
识别技术落地机场,就是希望以先进的人工智能技术既确保安检 …
中央研究院Academia Sinica, 台北市南港區. … 今天要介紹的研究稍複雜,原本要在
圖中補充說明,但電腦系統不知為何就是移除不了污漬,跟人生的煩惱一樣。 …… 清
代女性創作的長篇小說是韻文體的「彈詞小說」,係由說唱曲藝發展而來的寫作形式,
內容通常充滿生活細節、深刻的自覺、女性私密經驗,更帶有一點反叛意味,也可以說
 …