DBFace,被《機(jī)器之心》扒出來的輕量級(jí)高精度人臉檢測模型
上周末,一篇題為《模型僅有7M:輕量級(jí)高精度人臉識(shí)別方法DBFace》的文章在國內(nèi)頭部的專業(yè)人工智能媒體《機(jī)器之心》上首發(fā)后,即被新浪科技、CSDN、機(jī)器學(xué)習(xí)研究會(huì)等多家科技/垂直類(自)媒體進(jìn)行了轉(zhuǎn)載。
而對(duì)DBFace這個(gè)名字,業(yè)內(nèi)人士更是很容易就能聯(lián)想到人工智能頭部企業(yè)深蘭科技(DeepBlue)。果不其然,這個(gè)模型的創(chuàng)建者,這是來自深蘭科技下屬深蘭科學(xué)院算法研究所的兩位“高手”——?jiǎng)财妗⒍沤饌ァ?/p>
據(jù)了解,該模型起初只是被放在了Github上,沒想到被《機(jī)器之心》扒了出來,而且短短3天時(shí)間,這個(gè)開源的模型就新增了近300次使用。
今天,就跟隨這兩位算法大咖,一起來看看DBFace是如何誕生的。
1. 網(wǎng)絡(luò)選擇
DBFace的初衷是設(shè)計(jì)一款輕量級(jí)的人臉檢測器,能夠在邊緣計(jì)算上有效的使用,加上因?yàn)橐咔榫壒,?duì)于hard類(例如戴上口罩)人臉檢測顯得尤為重要。因?yàn)镃enterNet具有后處理的簡潔高效性,以及對(duì)小目標(biāo)友好等特點(diǎn)。綜合性能和速度的考慮下,我們選擇了CenterNet結(jié)構(gòu)做檢測任務(wù), 采用MoblienetV3做backbone。相較于MobilenetV2, MobilenetV3在其基礎(chǔ)上新增了 SE 、Hard-Swish Activation等模塊,兼顧Infernce速度的同時(shí)并提升網(wǎng)絡(luò)性能 。結(jié)構(gòu)如下:
對(duì)于任務(wù)頭的設(shè)計(jì),我們引入了SSH的DetectModule和ContextModule,經(jīng)實(shí)驗(yàn)驗(yàn)證該模塊能有效的提升DBFace算法的檢出性能
對(duì)于上采樣設(shè)計(jì),我們采用Upsample+Conv+Act的方式,避免使用反卷積造成可能的鋸齒問題
2.Loss定義
整個(gè)網(wǎng)絡(luò)由三部分Loss組成:熱力圖(HeatMap)損失, 位置坐標(biāo)偏移量(BoundingBox)損失,關(guān)鍵點(diǎn)(Landmark)損失
2.1 HeatMap 損失:Focal Loss
Focal loss,該損失函數(shù)是在標(biāo)準(zhǔn)交叉熵?fù)p失基礎(chǔ)上修改得到的?梢酝ㄟ^減少易分類樣本的權(quán)重,使得模型在訓(xùn)練時(shí)更專注于難分類的樣本,從而能有效的緩解類別不均衡帶來的網(wǎng)絡(luò)注意力偏差問題
這里γ取2,y=1時(shí),α為正樣本的權(quán)重,參照CenterNet,定義為目標(biāo)周圍半徑處3*3范圍為1,其他為0,目的是加強(qiáng)正樣本的訓(xùn)練權(quán)重。y=0時(shí),α為(1 - gt)4,此時(shí)GT是一個(gè)基于目標(biāo)計(jì)算的橢圓高斯圖,參照TTFNet(Training-Time-Friendly Network for Real-Time Object Detection)
2.2 位置坐標(biāo)偏移量損失: GIoU Loss
目前大部分目標(biāo)檢測中主流的邊界框優(yōu)化采用的都是BBox的回歸損失(MSE loss, L1-smooth loss等),該種方式通過距離計(jì)算損失值,從而忽略了檢測框本身最顯著的性質(zhì)IoU。如下圖所示,在L1及L2范數(shù)取到相同的值時(shí),實(shí)際上檢測效果卻是差異巨大的,直接表現(xiàn)就是預(yù)測和真實(shí)檢測框的IoU值變化較大,這說明L1和L2范數(shù)不能很好的反映檢測效果。
通過IOU作為Loss來優(yōu)化任務(wù),其缺點(diǎn)在于:
a.預(yù)測框bbox和ground truth bbox如果沒有重疊,IOU就始終為0并且無法優(yōu)化。其損失函數(shù)失去了可導(dǎo)的性質(zhì)。
b.IOU無法分辨不同方式的對(duì)齊,例如方向不一致等情況
GIOU則能很好的解決上面兩個(gè)問題
假設(shè)現(xiàn)在有兩個(gè)任意的bbox A和B,我們要找到一個(gè)最小的封閉形狀C,讓C可以將A和B包圍在里面,然后我們計(jì)算C中沒有覆蓋A和B的面積占C總面積的比例,然后用A和B的IOU值減去這個(gè)比值。
2.3人臉關(guān)鍵點(diǎn)Landmark回歸:WingLoss
由于SmoothL1 Loss對(duì)于較大誤差時(shí)比較敏感,但是對(duì)中小誤差則比較不敏感,而導(dǎo)致關(guān)鍵點(diǎn)無法得到精細(xì)結(jié)果,因此考慮加重對(duì)中小誤差的關(guān)注,對(duì)比試驗(yàn)后,選擇WingLoss(Wing Loss for Robust Facial Landmark Localisation with Convolutional Neural Networks)作為landmark訓(xùn)練loss
WingLoss
這里我們采用了w=10,e=2,同時(shí)為了避免landmark相對(duì)人臉中心和寬高帶來的累積誤差,因此我們對(duì)landmark是相對(duì)于人臉中心點(diǎn)的方式進(jìn)行訓(xùn)練
3.?dāng)?shù)據(jù)增廣
random filp、random scaling、color jittering、randomly crop square patch、image compress
檢測結(jié)果及精度驗(yàn)證
4.實(shí)際運(yùn)行
項(xiàng)目地址
下載代碼后main.py提供基于圖像和攝像頭的案例,我們稍加修改后:
把圖像放到datas目錄下,執(zhí)行后,結(jié)果在detect_result中,我們看到如我們預(yù)期的結(jié)果:
下圖,對(duì)于戴口罩人臉的檢測(訓(xùn)練時(shí)并未使用戴口罩?jǐn)?shù)據(jù),因此將會(huì)加入戴口罩?jǐn)?shù)據(jù)進(jìn)行訓(xùn)練以優(yōu)化模型的效果)

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長度6~500個(gè)字
最新活動(dòng)更多
-
即日-9.1立即下載>> 【限時(shí)下載】ADI中國三十周年感恩回饋助力企業(yè)升級(jí)!
-
即日-9.16點(diǎn)擊進(jìn)入 >> 【限時(shí)福利】TE 2025國際物聯(lián)網(wǎng)展·深圳站
-
10月23日立即報(bào)名>> Works With 開發(fā)者大會(huì)深圳站
-
10月24日立即參評(píng)>> 【評(píng)選】維科杯·OFweek 2025(第十屆)物聯(lián)網(wǎng)行業(yè)年度評(píng)選
-
11月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
12月18日立即報(bào)名>> 【線下會(huì)議】OFweek 2025(第十屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
推薦專題
- 1 阿里首位程序員,“掃地僧”多隆已離職
- 2 先進(jìn)算力新選擇 | 2025華為算力場景發(fā)布會(huì)暨北京xPN伙伴大會(huì)成功舉辦
- 3 宇樹機(jī)器人撞人事件的深度剖析:六維力傳感器如何成為人機(jī)安全的關(guān)鍵屏障
- 4 清華跑出具身智能獨(dú)角獸:給機(jī)器人安上眼睛和大腦,融資近20億
- 5 特朗普要求英特爾首位華人 CEO 辭職
- 6 踢館大廠和微軟,剖析WPS靈犀的AI實(shí)用主義
- 7 騰訊 Q2 財(cái)報(bào)亮眼:AI 已成第二增長曲線
- 8 谷歌吹響AI沖鋒號(hào),AI還有哪些機(jī)會(huì)
- 9 蘋果把身家押在Siri上:一場輸不起的自我革命
- 10 共探合作新機(jī)遇!江門市新會(huì)區(qū)(深圳)“AI + 機(jī)器人” 產(chǎn)業(yè)對(duì)接會(huì)成功舉辦