博客專欄

        EEPW首頁 > 博客 > 致敬ATSS | Dynamic ATSS再造ATSS輝煌!!!

        致敬ATSS | Dynamic ATSS再造ATSS輝煌!!!

        發(fā)布人:計(jì)算機(jī)視覺工坊 時(shí)間:2022-02-08 來源:工程師 發(fā)布文章

        以下文章來源于集智書童 ,作者ChaucerG

        作者丨ChaucerG

        來源丨集智書童

        微信圖片_20220208194202.png

        標(biāo)簽分配(Label assignment)在目標(biāo)檢測(cè)模型中起著重要的作用。檢測(cè)模型使用不同的標(biāo)簽分配策略可能會(huì)產(chǎn)生完全不同的性能。對(duì)于基于Anchor的檢測(cè)模型,Anchor與其對(duì)應(yīng)的Ground Truth之間的IoU閾值是關(guān)鍵因素,因?yàn)檎龢颖竞拓?fù)樣本是由IoU閾值所劃分的。早期的目標(biāo)檢測(cè)器只是對(duì)所有訓(xùn)練樣本使用一個(gè)固定的閾值,而最近的檢測(cè)算法專注于基于IOU到Ground Truth分布的自適應(yīng)生成閾值。

        本文介紹了一種簡(jiǎn)單而有效的標(biāo)簽分配(基于訓(xùn)練和測(cè)試狀態(tài)動(dòng)態(tài)分配)的方法。通過在標(biāo)簽分配中引入預(yù)測(cè),選擇對(duì)Ground Truth目標(biāo)的高IoU的高質(zhì)量樣本作為正樣本,可以減少分類分?jǐn)?shù)與IoU分?jǐn)?shù)之間的差異,生成更多高質(zhì)量的邊界框。本文方法通過自適應(yīng)標(biāo)簽分配算法提高了檢測(cè)模型的性能,并降低了這些正樣本的邊界框損失,這也表明更多具有更高質(zhì)量預(yù)測(cè)框的樣本被選擇為正樣本。

        code地址:https://github.com/ZTX-100/DLA-Combined-IoUs

        1介紹

        目標(biāo)檢測(cè)是計(jì)算機(jī)視覺中的一個(gè)基本問題,它可以同時(shí)分類和定位圖像或視頻中的所有目標(biāo)。隨著深度學(xué)習(xí)的快速發(fā)展,目標(biāo)檢測(cè)取得了巨大的成功,并被應(yīng)用于許多任務(wù),如目標(biāo)跟蹤、圖像分類、圖像分割和醫(yī)學(xué)圖像分析。

        標(biāo)簽分配是將樣本分為正樣本和負(fù)樣本,這對(duì)目標(biāo)檢測(cè)模型的成功至關(guān)重要。對(duì)于基于Anchor的模型,標(biāo)簽分配的核心是正樣本和負(fù)樣本劃分的閾值。在計(jì)算Anchor與GT之間的交集(IoU)后,正樣本為IoU大于閾值的Anchor,而其他樣本為負(fù)樣本或忽略的Anchor。早期的檢測(cè)模型利用固定的閾值來區(qū)分正負(fù)樣本。然而,具有固定閾值來劃分正負(fù)樣本的算法忽略了不同GT的形狀和大小的差異。

        近年來,人們提出了幾種自適應(yīng)標(biāo)簽分配策略來自適應(yīng)計(jì)算閾值。這些算法自適應(yīng)地選擇基于IoU的正樣本和負(fù)樣本分布之間的Anchor和GT,以便GT有更多高質(zhì)量的Anchor對(duì)應(yīng)將有一個(gè)更高的IoU閾值,劣質(zhì)Anchor對(duì)應(yīng)會(huì)有一個(gè)較低的IoU閾值。

        然而,自適應(yīng)分配方法并不基于更準(zhǔn)確地代表訓(xùn)練狀態(tài)的預(yù)測(cè)來分配正負(fù)樣本。由于分類和定位的差異,分類得分并不能精確對(duì)應(yīng)定位質(zhì)量,而NMS(非最大抑制)假設(shè)分類分?jǐn)?shù)代表定位質(zhì)量,并進(jìn)行過濾重復(fù),只保留分類分?jǐn)?shù)高的樣本。但是,如果分類分?jǐn)?shù)不能準(zhǔn)確地表示定位質(zhì)量,則可能會(huì)刪除一些高質(zhì)量的bbox,保留一些低質(zhì)量的bbox。而固定Anchor不能保證預(yù)測(cè)bbox的質(zhì)量。

        因此,引入預(yù)測(cè)來指導(dǎo)標(biāo)簽分配是一種有效的方法,因?yàn)锳nchor可以產(chǎn)生高質(zhì)量的預(yù)測(cè)作為正樣本。在早期訓(xùn)練階段,預(yù)測(cè)存在不確定性,所以不能直接用預(yù)測(cè)的邊界框代替Anchor。在一些利用預(yù)測(cè)來加權(quán)正樣本的算法中,提出了增加GT中心的距離。而預(yù)測(cè)(分類分?jǐn)?shù)或IoU分?jǐn)?shù))和距離是2個(gè)不同的“domains”,它們不能自然地組合起來。AutoAssign設(shè)計(jì)了一個(gè)中心加權(quán)模塊來解決這個(gè)問題,但由于假設(shè)靠近GT中心的樣本會(huì)有更多的權(quán)重,該模塊可能是次優(yōu)。“All-to-Top-1”基于迭代而不是預(yù)測(cè)減少了包中Anchor的數(shù)量。因此,訓(xùn)練可能不是最優(yōu)的,因?yàn)榇又蠥nchor的數(shù)量不受預(yù)測(cè)的控制,也可能不滿足訓(xùn)練狀態(tài)。

        于是作者提出了一種簡(jiǎn)單有效的方法,直接將預(yù)測(cè)邊界框和GT之間的預(yù)測(cè)IoUs,以及Anchor和GT之間的Anchor IoUs結(jié)合起來。然后根據(jù)候選Anchor與GT之間的IoU的統(tǒng)計(jì)特性,可以得到自適應(yīng)模型。

        而本文的方法分別計(jì)算預(yù)測(cè)的IoU和Anchor IoU的分布,然后通過簡(jiǎn)單相加得到組合參數(shù)。最后,通過組合分布參數(shù)計(jì)算組合閾值。由于每次迭代中的預(yù)測(cè)都涉及到標(biāo)簽分配,因此 soft targets(預(yù)測(cè)邊界框和GT之間的預(yù)測(cè)IoU)比hard target更合適。QFL和VFL是常用的soft targets分類損失。這兩者都可以進(jìn)一步提高所提方法的性能。此外,為了更好的準(zhǔn)確性,作者用IoU分支替換Centerness分支。在COCO數(shù)據(jù)集上的實(shí)驗(yàn)表明了本文的方法在沒有額外成本下的有效性。

        2相關(guān)工作

        2.1 目標(biāo)檢測(cè)

        目標(biāo)檢測(cè)可分為兩階段方法和一階段方法:

        兩階段檢測(cè)模型:首先利用區(qū)域金字塔網(wǎng)絡(luò)(RPN)選擇具有高置信度的Anchor,并對(duì)這些候選Anchor進(jìn)行細(xì)化。然后將精細(xì)化后的Anchor送入第二階段進(jìn)行分類并進(jìn)一步的回歸。

        單階段檢測(cè)模型:直接對(duì)Anchor進(jìn)行分類和回歸,而沒有對(duì)一些候選Anchor進(jìn)行選擇和細(xì)化。

        與單階段檢測(cè)模型相比,兩級(jí)兩階段檢測(cè)通常具有更高的精度,但速度較低。隨著RetinaNet的出現(xiàn),通過引入Focal loss來抑制容易樣本的丟失,降低了單階段檢測(cè)模型和兩階段檢測(cè)模型的準(zhǔn)確性差異,使單階段方法既能達(dá)到高精度,又能達(dá)到低延遲。因此,目前的目標(biāo)檢測(cè)模型主要采用單階段檢測(cè)方法。

        隨著Anchor-Free模型的發(fā)展,一個(gè)良好的檢測(cè)模型不再需要預(yù)定義的Anchor。Anchor-Free模型要么從Anchor point(特征點(diǎn))回歸邊界框,要么預(yù)測(cè)GT目標(biāo)的一些特殊點(diǎn),如目標(biāo)的邊界框的角或極端點(diǎn),最后從這些特殊點(diǎn)構(gòu)建預(yù)測(cè)的邊界框。

        最近,一些目標(biāo)檢測(cè)模型通過使用Transformer的注意力模塊性能得到了一定的提升,Transformer最初是用于自然語言處理領(lǐng)域。DETR首先將Transformer引入到檢測(cè)模型的Head,它也是Anchor-Free的。盡管如此,由于Transformer中使用的全局注意力和用于目標(biāo)檢測(cè)的大分辨率,DETR比CNN需要更長(zhǎng)的時(shí)間才能收斂。因此,最近的算法試圖設(shè)計(jì)快速訓(xùn)練收斂的DETR來加快訓(xùn)練過程。

        2.2 Label Assignment

        標(biāo)簽分配是檢測(cè)模型性能的核心因素,如何劃分正樣本和負(fù)樣本將決定網(wǎng)絡(luò)如何學(xué)習(xí)和收斂。早期的檢測(cè)模型,如快速的RCNN、SSD和RetinaNet,利用傳統(tǒng)的具有固定閾值的標(biāo)簽分配方法來區(qū)分正樣本和負(fù)樣本。盡管那些具有固定閾值的檢測(cè)模型對(duì)標(biāo)簽分配仍然有效,但它們忽略了不同目標(biāo)樣本在其形狀、大小和相應(yīng)的正Anchor數(shù)量上的差異。

        近年來,研究人員專注于設(shè)計(jì)自適應(yīng)閾值,并逐漸放棄了標(biāo)簽分配的固定閾值。ATSS通過根據(jù)候選Anchor和GT目標(biāo)之間的IoU分布,計(jì)算均值和標(biāo)準(zhǔn)差來計(jì)算自適應(yīng)閾值。PAA將候選Anchor擬入高斯混合模型中,并對(duì)其進(jìn)行概率分離。

        使用預(yù)測(cè)來指導(dǎo)標(biāo)簽分配可能更準(zhǔn)確,因?yàn)轭A(yù)先定義的Anchor可能不能準(zhǔn)確地反映實(shí)際的訓(xùn)練狀態(tài)。然而,在早期訓(xùn)練階段的預(yù)測(cè)是不準(zhǔn)確和不合理的指導(dǎo)標(biāo)簽分配。

        FreeAnchor利用最大似然估計(jì)(MLE)對(duì)訓(xùn)練過程進(jìn)行建模,使每個(gè)GT可以至少有一個(gè)對(duì)應(yīng)的Anchor、分類得分和定位得分。

        MAL采用來自分類和定位的預(yù)測(cè)作為評(píng)估Anchor的聯(lián)合置信度。為了緩解次優(yōu)Anchor選擇問題,MAL基于聯(lián)合置信度對(duì)選定錨點(diǎn)的特征進(jìn)行擾動(dòng),提出了“All-to-Top-1” Anchor選擇策略。

        Autoassign引入中心權(quán)重來處理早期訓(xùn)練階段中不合理的預(yù)測(cè),這表明靠近GT中心的樣本會(huì)有更多的權(quán)重。

        3本文方法

        3.1 致敬ATSS

        ATSS策略經(jīng)常把正負(fù)樣本通過計(jì)算統(tǒng)計(jì)參數(shù)(如平均值和標(biāo)準(zhǔn)偏差)選定候選Anchors。根據(jù)候選Anchor在GT中的位置選擇候選Anchor后,根據(jù)候選Anchor在相應(yīng)的GT中的分布情況計(jì)算自適應(yīng)閾值。

        ATSS根據(jù)GT的形狀和大小自適應(yīng)地計(jì)算閾值。如果GT較大或方形,則其對(duì)應(yīng)的高質(zhì)量Anchor較多,閾值會(huì)更高。如果GT細(xì)長(zhǎng)或小,由于大多數(shù)可能是低質(zhì)量Anchor,所以閾值會(huì)比較低。然而,大多數(shù)自適應(yīng)方法只根據(jù)Anchor和GT之間的關(guān)系來計(jì)算自適應(yīng)閾值。它們僅僅依賴于預(yù)定義的錨定框,而在訓(xùn)練過程中忽略了預(yù)測(cè)的邊界框。

        換句話說,對(duì)GT具有最高IoU的Anchor并不能保證其預(yù)測(cè)的邊界框在所有正樣本中也對(duì)GT具有最高的IoU。因此,一些具有高質(zhì)量預(yù)測(cè)邊界框的樣本可以被定義為分類目標(biāo)為0的負(fù)樣本。因此,這就影響了高質(zhì)量的邊界框的性能。

        使用預(yù)測(cè)信息可以提高定義正的和負(fù)的準(zhǔn)確性,因?yàn)轭A(yù)測(cè)可以反映每個(gè)樣本的真實(shí)訓(xùn)練狀態(tài)。然而,直接使用預(yù)測(cè)可能并不合適,因?yàn)樵谠缙谟?xùn)練階段的預(yù)測(cè)對(duì)于指導(dǎo)正樣本和負(fù)樣本的定義是不合理的。因此,本文提出了一種簡(jiǎn)單有效的方法來解決這個(gè)問題。

        3.2  Dynamic ATSS

        本文提出了一種簡(jiǎn)單有效的動(dòng)態(tài)標(biāo)簽分配策略,將預(yù)測(cè)引入到標(biāo)簽分配的Anchor中。在早期訓(xùn)練階段,由于隨機(jī)初始化,預(yù)測(cè)是不準(zhǔn)確的。因此,Anchor就像之前指示標(biāo)簽定義一樣。預(yù)測(cè)逐漸主導(dǎo)組合的IoU,并隨著訓(xùn)練和預(yù)測(cè)的改進(jìn)導(dǎo)致標(biāo)簽分配。

        微信圖片_20220208194207.png

        本文方法將使用從回歸分支中解碼的預(yù)測(cè)框,并選擇ATSS作為標(biāo)簽分配的自適應(yīng)示例。然后通過計(jì)算預(yù)測(cè)框與GT之間的IoU,以及Anchor與GT之間的IoU,得到預(yù)測(cè)的IoU和Anchor IoU。最后,通過對(duì)預(yù)測(cè)的IoUs和Anchor的IoUs的求和,計(jì)算出組合的IoUs(CIoUs)。ATSS利用均值和標(biāo)準(zhǔn)差來計(jì)算閾值,因此實(shí)現(xiàn)了相同的計(jì)算來獲得組合均值和組合std。IoU閾值由組合均值和組合std之和計(jì)算,正候選樣本定義為組合IoU大于或等于IoU閾值的樣本。候選正樣本被限制在GT內(nèi),作為最終的正樣本。

        該網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。使用ATSS作為基礎(chǔ)網(wǎng)絡(luò),它有一個(gè)CNN Backbone,一個(gè)FPN Neck,和一個(gè)共享的Head,它分別有2個(gè)分支分別用于分類和回歸。該方法提取回歸結(jié)果,將回歸偏移量解碼為邊界框的坐標(biāo),最后計(jì)算出解碼的邊界框與GTs之間的IoU。將預(yù)測(cè)的IoU與Anchor IoU結(jié)合,選擇出正樣本,如圖1所示。

        為什么利用預(yù)測(cè)來指導(dǎo)標(biāo)簽分配如此重要?

        預(yù)測(cè)比預(yù)定義的Anchor更準(zhǔn)確,因?yàn)檫x擇最終結(jié)果和實(shí)現(xiàn)NMS算法都是基于預(yù)測(cè)結(jié)果而不是基于Anchor框。經(jīng)常設(shè)計(jì)檢測(cè)模型基于假設(shè)樣本的預(yù)定義Anchor有很高的IoU與GT適合被選為正樣本,或樣本的中心接近GT的中心的目標(biāo)也可以被選擇為正樣本。

        對(duì)于每個(gè)圖像,一旦選定了正樣本,在訓(xùn)練過程中不會(huì)對(duì)正樣本進(jìn)行修改,因?yàn)轭A(yù)先定義的Anchor是固定的,不會(huì)根據(jù)訓(xùn)練狀態(tài)而改變。然而,具有高質(zhì)量預(yù)測(cè)的樣本可能并不經(jīng)常是具有高質(zhì)量Anchor的樣本,盡管它們產(chǎn)生高質(zhì)量預(yù)測(cè)的概率更高。

        如果用高質(zhì)量的Anchor迫使樣本在整個(gè)訓(xùn)練過程中都是正樣本,網(wǎng)絡(luò)將專注于學(xué)習(xí)這些樣本,即使他們的預(yù)測(cè)不夠好,忽略了樣本可以產(chǎn)生更好的預(yù)測(cè)結(jié)果的樣本,因?yàn)橛邢鄬?duì)低質(zhì)量的Anchor可能被分配為負(fù)樣本。

        而如果在每次迭代中都引入預(yù)測(cè),以幫助定義正負(fù)樣本,可以選擇更多具有高質(zhì)量預(yù)測(cè)的樣本作為正樣本,并進(jìn)一步改進(jìn)這些樣本。添加預(yù)測(cè)的IoU和Anchor IoU可以產(chǎn)生更好的結(jié)果,并產(chǎn)生更高質(zhì)量的預(yù)測(cè)。由于網(wǎng)絡(luò)的隨機(jī)初始化,Anchor IoU對(duì)于本文的方法也是必要的,它們可以作為先驗(yàn)。在本文的方法中,預(yù)測(cè)和先驗(yàn)都是對(duì)GT的IoU,因此它們可以通過添加自然地組合在一起,而不需要任何特殊的設(shè)計(jì),如圖1所示。

        3.3 Soft Targets for Classifification Loss

        隨著focal loss的出現(xiàn),大多數(shù)目標(biāo)檢測(cè)模型都利用focal loss學(xué)習(xí)類標(biāo)簽。focal loss解決了訓(xùn)練過程中正樣本和負(fù)樣本之間的極端不平衡問題,抑制了大多數(shù)簡(jiǎn)單的負(fù)樣本,由于這些簡(jiǎn)單負(fù)樣本數(shù)量極多,可能會(huì)主導(dǎo)訓(xùn)練損失。

        由于引入了標(biāo)簽分配的預(yù)測(cè),使用Soft Targets(預(yù)測(cè)Iou到GT)更適合將高預(yù)測(cè)IoU排序在其他低預(yù)測(cè)IoU之上,這在GFL和VFNet中使用。GFL分別由QFL和DFL組成,分別進(jìn)行分類和回歸。在模型中使用了QFL來進(jìn)行分類。當(dāng)Soft Targets不等于1時(shí),QFL的交叉熵?fù)p失轉(zhuǎn)換為一般形式。此外,還根據(jù)Soft Targets對(duì)focal loss權(quán)值進(jìn)行了修正。

        當(dāng)分類預(yù)測(cè)接近QFL中使用的軟目標(biāo)時(shí),VFNet沒有降低損失的權(quán)重,而是利用VFL將正損失與賦值的Soft Targets加權(quán)。通過改變正IoU目標(biāo)的權(quán)重,具有較高IoU目標(biāo)的正樣本的損失也會(huì)更高,從而使網(wǎng)絡(luò)能夠?qū)W⒂趯W(xué)習(xí)那些高質(zhì)量的正樣本。

        在實(shí)驗(yàn)中,通過實(shí)驗(yàn)證明,本文提出的方法優(yōu)于表一中使用QFL或VFL的相同模型。此外,將本文提出的方法與QFL或VFL相結(jié)合,可以進(jìn)一步提高檢測(cè)模型的性能。

        4實(shí)驗(yàn)

        4.1 消融實(shí)驗(yàn)

        1、驗(yàn)證方法的有效性

        微信圖片_20220208194209.png

        從表1可以看出,ATSS與提出的CIoUs(組合IoUs)在分類損失方面超過了與Soft Targets(QFL和VFL)的相同模型。經(jīng)過簡(jiǎn)單的修改,可以在MS COCO val2017 數(shù)據(jù)集上將原始ATSS算法提高約0.7AP,這表明使用預(yù)測(cè)可以更好地指導(dǎo)正負(fù)樣本,Anchor也是指導(dǎo)標(biāo)簽分配的必要條件。通過簡(jiǎn)單地將它們組合在一起,該模型可以產(chǎn)生更好的精度提高。只是將CIoUs引入ATSS,標(biāo)記的目標(biāo)仍然是Hard Targets。在接下來的實(shí)驗(yàn)中,將證明Soft Targets(QFL或VFL)可以進(jìn)一步提高性能。

        2、每個(gè)元素的貢獻(xiàn)

        微信圖片_20220208194211.png

        在表2中,AIoU表示預(yù)定義Anchor與GT之間的IoU。如果只選擇AIoUs,則執(zhí)行原始的ATSS。PIoUs表示在預(yù)測(cè)的邊界框和GT之間的IoU。如果AIoU和PIoU同時(shí)被選中,提出的組合IoU通過將計(jì)算出的AIoU和PIoU相加來實(shí)現(xiàn)。可以注意到,只使用PIoUs標(biāo)簽分配模型的性能從39.06AP下降到了29.39AP,而簡(jiǎn)單地添加PIoUs定義正樣本和負(fù)樣本相對(duì)于AIoU可以提升大約0.7AP。

        從表2可以看出,本文提出的方法(AIoUs+PIoUs)可以通過軟目標(biāo)(QFL或VFL)進(jìn)一步改進(jìn)。原ATSS采用中心作為額外分支對(duì)正樣本進(jìn)行權(quán)重,使靠近GT中心的樣本比遠(yuǎn)離GT中心的樣本有更高的權(quán)重。在將中心度轉(zhuǎn)換為IoU(預(yù)測(cè)IoU而不是中心度)后,性能可以進(jìn)一步提高。

        微信圖片_20220208194213.png

        從圖2中可以看出,2種模型在早期訓(xùn)練階段的回歸損失并沒有太大的差異。而隨著訓(xùn)練過程的進(jìn)行,本文的方法比原始模型具有更低的回歸損失,這表明本文的模型可以選擇具有更高質(zhì)量邊界框的正樣本,因?yàn)楦鼫?zhǔn)確的預(yù)測(cè)邊界框會(huì)產(chǎn)生更低的回歸損失。此外,大目標(biāo)的平均精度(APl)大大提高了約2%。

        3、平衡AIoU與PIoU

        微信圖片_20220208194218.png

        4.2 SOTA實(shí)驗(yàn)

        微信圖片_20220208194221.png

        5參考

        [1].Dynamic Label Assignment for Object Detection by Combining Predicted and Anchor IoUs

        本文僅做學(xué)術(shù)分享,如有侵權(quán),請(qǐng)聯(lián)系刪文。

        *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



        關(guān)鍵詞: AI

        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 苗栗县| 平泉县| 鄢陵县| 洪江市| 广平县| 凤台县| 宁远县| 化州市| 环江| 山阳县| 皋兰县| 亚东县| 重庆市| 渭南市| 滨州市| 依兰县| 甘泉县| 开江县| 响水县| 博客| 盐边县| 黄山市| 开阳县| 平谷区| 龙门县| 迁安市| 许昌县| 若羌县| 招远市| 宾阳县| 松桃| 辽阳县| 宣城市| 阳朔县| 开阳县| 延川县| 古蔺县| 吉水县| 长岛县| 集安市| 于田县|