上海城建設(shè)計(jì)院網(wǎng)站網(wǎng)絡(luò)營(yíng)銷策劃案范本
一、概述
? ? ? ? 相較于傳統(tǒng)目標(biāo)檢測(cè),DETR是一種純端到端的網(wǎng)絡(luò)。它不再需要NMS(非極大值抑制,用于去除多余的預(yù)測(cè)框)和生成anchor。
? ? ? ? DETR提出了一個(gè)新的目標(biāo)函數(shù)(二分圖匹配),這個(gè)函數(shù)可以強(qiáng)制網(wǎng)絡(luò)輸出一個(gè)獨(dú)一無二的預(yù)測(cè)值(沒有冗余的預(yù)測(cè)框)。
二、網(wǎng)絡(luò)結(jié)構(gòu)
? ? ? ? ?DETR的前向流程如上圖所示:①使用一個(gè)CNN抽取圖片的特征;②將這個(gè)特征拉平;③將拉平后的特征送入Transformer的encoder-decoder單元;④由decoder輸出預(yù)測(cè)框的信息(出框的信息是一個(gè)超參數(shù),原文為100)⑤利用二分圖匹配的方式將Ground Truth與預(yù)測(cè)結(jié)果進(jìn)行匹配,對(duì)于匹配成功的框才會(huì)進(jìn)一步計(jì)算loss(沒有匹配成功的框?qū)?huì)被標(biāo)記為no object<背景類>)
? ? ? ? 1.基于集合的目標(biāo)函數(shù)
? ? ? ? ? ? ? ? DETR的輸出是一個(gè)固定集合(固定數(shù)目)。為了在這些集合中找到正確的預(yù)測(cè)框,DETR采用了一個(gè)二分圖匹配的方法來解決這個(gè)問題。具體做法是:將n個(gè)預(yù)測(cè)框和x個(gè)Ground Turth構(gòu)建成一個(gè)cost matrix(代價(jià)矩陣),通過算法在其中找出代價(jià)最小的排列。
????????????????????????
? ? ? ? ? ? ? ? ? ? ? ? ?矩陣中的內(nèi)容為損失函數(shù)(分類Loss和框體Loss),公式即可寫為:
? ? ? ? ? ? ? ? ?這個(gè)公式的意義是:在二分圖匹配的基礎(chǔ)上計(jì)算兩個(gè)loss(分類Loss和框體Loss),其中對(duì)于第一個(gè)loss,由于要與第二個(gè)loss取值范圍一致,其log被去除且實(shí)驗(yàn)表明并不會(huì)影響結(jié)果;對(duì)于第二個(gè)loss,由于L1-Loss會(huì)對(duì)大物體敏感,所以采用generalized iou loss來計(jì)算(與物體大小無關(guān))。
? ? ? ? 2.整體網(wǎng)絡(luò)框架
? ? ? ? ? ? ? ? ①默認(rèn)圖片輸入大小為1066x800x3,經(jīng)過卷積網(wǎng)絡(luò)提取特征,得到輸出2048x25x34;然后經(jīng)過一個(gè)1x1卷積進(jìn)行通道調(diào)整(降維)得到256x25x34。
? ? ? ? ? ? ? ? ②將特征拉平(850*256),并為其疊加位置編碼(256x25x34)
? ? ? ? ? ? ? ? ③將序列輸入Encoder中,計(jì)算自注意力
? ? ? ? ? ? ? ? ④將結(jié)果輸入Decoder,進(jìn)行解碼輸出;這里引入一個(gè)object query(一個(gè)可學(xué)習(xí),維度為100*256),在每個(gè)decoder會(huì)先做一次object query的自注意力操作用于移除冗余框(第一個(gè)decoder可以不做)
? ? ? ? ? ? ? ? ?⑤將特征輸入檢測(cè)頭(FFN-MLP),進(jìn)行預(yù)測(cè)。
三、代碼
? ? ? ? ?出自原文的DETR42最簡(jiǎn)結(jié)構(gòu)