PFLD:简单高效的实用人脸关键点检测算法
作者丨杜敏?
學(xué)校丨華中科技大學(xué)碩士
研究方向丨模式識別與智能系統(tǒng)
研究背景
人臉關(guān)鍵點檢測,在很多人臉相關(guān)的任務(wù)中,屬于基礎(chǔ)模塊,很關(guān)鍵。比如人臉識別、人臉驗證、人臉編輯等等。想做人臉相關(guān)的更深層次的應(yīng)用,人臉關(guān)鍵點是繞不過去的點。正是因為它是一個基礎(chǔ)模塊,所以對速度很敏感,不能太耗時,否則影響了系統(tǒng)整體的效率。所以對人臉關(guān)鍵點檢測的要求是,又準(zhǔn)又快。
研究問題
人臉關(guān)鍵點目前存在的問題(不能又準(zhǔn)又快)的原因如下:
1.?局部變化:表情、局部特殊光照、部分遮擋,導(dǎo)致一部分關(guān)鍵點偏離了正常的位置,或者不可見了;?
2.?全局變化:人臉姿態(tài)、成像質(zhì)量;
3.?數(shù)據(jù)不均衡:在人臉數(shù)據(jù)里面,數(shù)據(jù)不均衡體現(xiàn)在,大部分是正臉數(shù)據(jù),側(cè)臉很少,所以對側(cè)臉、大角度的人臉不太準(zhǔn);
4.?模型效率:在?CNN?的解決方案中,模型效率主要由?backbone?網(wǎng)絡(luò)決定。?
在實際使用中,人臉關(guān)鍵點的問題主要有兩個:1)對“點是否遮擋”判斷是否準(zhǔn)確;2)對大角度人臉(+-60?度以內(nèi))點位置預(yù)測的準(zhǔn)確性和穩(wěn)定性。
解決思路
1.?修改?loss,增加關(guān)鍵點的空間約束項(三個姿態(tài)角)和數(shù)據(jù)均衡項;
2.?backbone?采用?MobileNet(常規(guī)操作);?
3.?用?auxiliary?network,讓點位置預(yù)測更穩(wěn)定和魯棒(常規(guī)操作)。
復(fù)現(xiàn)指南
模型
損失函數(shù)
?
損失函數(shù)的意義在于表示差異,而且能表示真正的距離。特別是當(dāng)對象本身具備?3D?屬性,而僅在?2D?上表示的時候,這樣的距離表示就是不準(zhǔn)確的。本文作者認(rèn)為,對于人臉這種對象,人臉?pose(更簡單的說是?3?個歐拉角)可以彌補(bǔ)一些人臉?3D?到?2D?的信息損失。具體怎么彌補(bǔ)??
希望是網(wǎng)絡(luò)可以學(xué)到?3D?姿態(tài)的信息,最容易想到的方法是讓網(wǎng)絡(luò)去預(yù)測三個角度,這么做是可以的。進(jìn)一步還能怎么做?把預(yù)測的角度損失和點位置損失組合起來,具體的組合方式,比如相加,或者相乘。相加的方式比較類似多任務(wù)損失,相乘的方式可以理解為一種加權(quán),因為角度損失一般會歸一化到?0-1?之間。?
在實際中又發(fā)現(xiàn),這個角度分布,存在樣本不均衡的問題,所以又增加了樣本均衡項。
綠色框是預(yù)測的角度和?gt?的差值,通過?cos?變成?0-1?之間,通過?(1-x)?操作變成單調(diào)增。?
紅色框是樣本均衡項,作者把人臉分成六類(側(cè)臉,正臉,抬頭,低頭,有表情,有遮擋),統(tǒng)計了訓(xùn)練集中這六類的數(shù)量分布,計算對應(yīng)的數(shù)量比例,比如?1/10,用它的倒數(shù),作為均衡項(用倒數(shù)是否合理?是否有點糙?可以考慮?focal?loss?和?class-balance?loss?的處理方法)。
網(wǎng)絡(luò)
上面是?auxiliary?網(wǎng)絡(luò),預(yù)測三個角度,infernce?不參與,和下面的網(wǎng)絡(luò),共用一些層。角度預(yù)測的?gt,是用一個平均正臉上預(yù)先定義的?11?點,和?gt?中的?11?點估計出的旋轉(zhuǎn)角度,作為角度的?gt。
?下面是?backbone?+?head:
紅框是?head,用了多尺度預(yù)測,類似?SSD?的做法。
實驗
SOTA?比較:和去年的?LAB?方法(Look?at?Boundary)相比,NME?提升?0.1?個點。?
速度:ARM845?上,一張人臉只要?7ms。backbone?優(yōu)化,另外一個原因是直接回歸位置坐標(biāo),而不是常規(guī)的?heatmap?+?offsetr?的方式,無后處理耗時。
Ablation:
對于直接回歸位置坐標(biāo),本文提出的改進(jìn)?loss?提升略明顯(存疑)。
個人評價
應(yīng)用決定算法對什么更敏感。人臉關(guān)鍵點終究是一個耗時敏感的問題,為了效率,本文的考慮有如下:
backbone 采用 MobileNet?
直接回歸點坐標(biāo),省去后處理耗時?
用 auxiliary 網(wǎng)絡(luò),這個網(wǎng)絡(luò)再怎么搞,都不會影響 inference 耗時?
對 loss 的優(yōu)化,再怎么玩,都不會影響 inference 耗時?
什么會影響耗時:
輸入大小?
inference 涉及的 backbone 和 head?
target_to_label 的耗時?
所以,像什么對抗損失、模仿學(xué)習(xí)、加數(shù)據(jù)訓(xùn)等等方法,都是可以在不改變算力的情況提升模型性能的手段,在工業(yè)界常常使用。?
三點想法:
如果模型的角度預(yù)測分支,放在和位置預(yù)測一起出,效果會怎么樣?
如果人臉的角度不是預(yù)測的,是標(biāo)注的,效果會怎么樣?
考慮效率的話,輸入大小和模型算力配比,是最佳的均衡么?
如果有大神復(fù)現(xiàn)了本方法,求分享交流,想知道上面三個問題的答案。
點擊以下標(biāo)題查看更多往期內(nèi)容:?
圖神經(jīng)網(wǎng)絡(luò)綜述:模型與應(yīng)用
小樣本學(xué)習(xí)(Few-shot Learning)綜述
萬字綜述之生成對抗網(wǎng)絡(luò)(GAN)
基于骨架表達(dá)的單張圖片三維物體重建方法
目標(biāo)檢測小tricks之樣本不均衡處理
可逆ResNet:極致的暴力美學(xué)
CVPR 2019 | 無監(jiān)督領(lǐng)域特定單圖像去模糊
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達(dá)讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢??答案就是:你不認(rèn)識的人。
總有一些你不認(rèn)識的人,知道你想知道的東西。PaperWeekly?或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)習(xí)心得或技術(shù)干貨。我們的目的只有一個,讓知識真正流動起來。
??來稿標(biāo)準(zhǔn):
? 稿件確系個人原創(chuàng)作品,來稿需注明作者個人信息(姓名+學(xué)校/工作單位+學(xué)歷/職位+研究方向)?
? 如果文章并非首發(fā),請在投稿時提醒并附上所有已發(fā)布鏈接?
? PaperWeekly 默認(rèn)每篇文章都是首發(fā),均會添加“原創(chuàng)”標(biāo)志
??投稿郵箱:
??投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發(fā)送?
? 請留下即時聯(lián)系方式(微信或手機(jī)),以便我們在編輯發(fā)布時和作者溝通
?
現(xiàn)在,在「知乎」也能找到我們了
進(jìn)入知乎首頁搜索「PaperWeekly」
點擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly?是一個推薦、解讀、討論、報道人工智能前沿論文成果的學(xué)術(shù)平臺。如果你研究或從事?AI?領(lǐng)域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入?PaperWeekly?的交流群里。
▽ 點擊 |?閱讀原文?| 下載論文
總結(jié)
以上是生活随笔為你收集整理的PFLD:简单高效的实用人脸关键点检测算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面向新闻媒体的命名实体识别技术
- 下一篇: 梳理百年深度学习发展史-七月在线机器学习