<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          CVPR2021|Anchor-free新玩法,一個head統(tǒng)一目標檢測,實例分割,姿態(tài)估計三種任務(wù)

          共 4962字,需瀏覽 10分鐘

           ·

          2021-05-01 02:20

          轉(zhuǎn)載自 | 極市平臺AI約讀社

          作者 | 小馬哥

          鏈接 | https://zhuanlan.zhihu.com/p/366651996

          編者薦語

          文章介紹一篇被CVPR 2021接收的工作,本文將目標檢測、實例分割、姿態(tài)估計這些任務(wù)概括為位置敏感的視覺識別,并提出了一個名為位置敏感網(wǎng)絡(luò)(LSNet)的統(tǒng)一解決方案。


          論文:https://arxiv.org/abs/2104.04899

          代碼:https://github.com/Duankaiwen/LSNet

          文章認為,目標檢測,實例分割和姿態(tài)估計本質(zhì)上都是識別物體,只是表征物體的形式有所不同,目標檢測用bbox,實例分割用mask,姿態(tài)估計用keypoint。既然都是識別物體,能否只用一套方案來實現(xiàn)這三個任務(wù)?能。請看圖1。

          圖1

          目標檢測。 用一個anchor點和指向極值點的四根向量就能確定目標框。注意文章中使用的是極值點,這個極值點是借助于mask標注得到的,詳情參見ExtremeNet[1]。至于為什么使用極值點,文章指出極值點本身就包含了物體的語義信息。后面將介紹,這部分信息將會被有效的利用起來。反正coco有mask標注,不用白不用。但對于沒有mask或極值點標注的數(shù)據(jù)集怎么辦?這里有個替代方案,就是用邊框的中點代替極值點,如圖2。

          圖2

          代碼中只需將 with_extreme=False即可

          dict(type='LoadAnnotations', with_bbox=True, with_extreme=True)

          實驗表明,在ResNet50上,極值點比中點高0.4個AP左右。文章在這里順便提了一嘴,以后在標注新的目標檢測數(shù)據(jù)集時,建議標注四個極值點,而非直接畫框框住物體。因為根據(jù)論文[2],標極值點比直接畫框平均快4倍,而且極值點本身包含有物體的語義信息。

          實例分割。 用一個anchor點和指向輪廓點的n個向量確定mask。注意這跟PolarMask[3]的做法類似,但又不同。如圖3,左為PolarMask,右為LSNet。在制作訓(xùn)練標簽時,PolarMask將物體表示在極坐標系中,因此每個方向只能取一個輪廓點,但是對于復(fù)雜的polygon,某些方向會多次穿過輪廓,這種情況PolarMask只能取最外的一圈輪廓上的輪廓點,而紅色輪廓處的輪廓點將被忽略。LSNet則避免了這個問題,它對輪廓進行均勻的采樣,得到n個輪廓點,然后讓網(wǎng)絡(luò)直接回歸出每個輪廓點的位置。

          圖3,左PolarMask,右LSNet

          說到在輪廓上均勻的采樣n個輪廓點,那么n到底取多少合適?n的大小依數(shù)據(jù)集的不同而不同。文章提供了一個可迅速判斷n取值的方法,那就是把gt polygon分別均勻的采樣n1, n2, n3, ...,個輪廓點。然后用n1, n2, n3, ...,分別組成新的polygon,與gt polygon進行比較,計算mask AP, 尋找最優(yōu)的輪廓點采樣數(shù)。以coco數(shù)據(jù)集為例,分別對每個gt polygon均勻采樣18, 36, 72個輪廓點,然后分別用18, 36, 72個輪廓點分別組成新的polygon,計算mask AP得到如下結(jié)果,因此選取n=36。

          n183672
          mask AP (%)89.097.499.2

          像LSNet這樣直接回歸每個輪廓點位置的做法看上去簡單,但真要做好其實很難,原因在于輪廓點的位置變化多端,而目前只能通過smooth L1 loss來約束,說實話smooth L1很難hold住。因此文章提出了一個新的loss來更好的處理回歸問題,這在后面講。

          姿態(tài)估計。 姿態(tài)估計的思路參考了CenterNet[4]的做法。用一個anchor點和指向17個關(guān)鍵點點的17個向量確定pose。

          到這里,LSNet通過用一個anchor點和n個向量的方式,把目標檢測,實例分割和姿態(tài)估計統(tǒng)一了起來,而這三個task的唯一區(qū)別就是n的數(shù)值不一樣,對于目標檢測,實例分割和姿態(tài)估計,n分別=4,36,17。接下來需要對向量的回歸進行優(yōu)化,smooth L1 loss效果不夠好,因此文章提出了一種新的距離回歸的loss,Cross-IOU Loss。

          Cross-IOU Loss。 回顧在矩形框的回歸優(yōu)化中,之所以IOU loss表現(xiàn)比smooth L1 loss好,一個很重要的原因是IOU loss是一個比值的形式,其預(yù)測結(jié)果跟gt的偏差始終保持在[0,1], 使訓(xùn)練過程更加穩(wěn)定。但IOU loss只在優(yōu)化矩形回歸時比較方便,當優(yōu)化的圖形是polygon時,IOU 的計算就變得很困難 (PolarMask的polar IOU loss一定程度上解決了這個問題,但也存在缺陷,如前面所述),當優(yōu)化pose的回歸時,更是無法計算出IOU。Cross-IOU loss的做法是對每一根向量的回歸都運用IOU的思想。首先考慮將二維的IOU壓縮到一維,如圖4,兩個矩形的IOU就變成了兩條線段的IOU,且 ,其中p, g分別表示pred和gt,且pred和gt需同向,若pred和gt方向相反,則  。

          圖4,IOU二維到一維

          對于回歸一條向量,將其分解為x分量和y分量, 圖5,則IOU定義為: 

          圖5

          如果vp和vg只在第一象限,這是沒問題的,當vp和vg在其他象限或vp和vg在不同的象限時,如圖6,此時IOU卻無法優(yōu)化預(yù)測向量的方向。因此需要做進一步的改進。

          圖6

          將一個向量用4個分量表示,如圖7,  , 其中  均大于0。制作訓(xùn)練標簽時,先將vg分解成x向量和y向量,例如圖7中的vg,先分解為vg4和vg1,然后分別將其對側(cè)延長自身長度的  倍(  也均大于0),實驗中, 取。于是重新得到 。對于n個要回歸的向量,定義cross-IOU loss為: 

          圖7

          Pyramid DCN。 LSNet的回歸過程采取了init+refine的方式。先回歸一組初始的向量,這些向量已經(jīng)比較接近極值點或輪廓點或關(guān)鍵點(文章稱為landmarks)。因此這些位置處的特征不能浪費,可以利用DCN (deformable convolution)獲取這寫些landmarks處的特征。文章進一步提出了Pyramid DCN來更加充分的提取landmarks特征,如圖8。也就是說DCN不僅只在目標所在的FPN層計算,還會把DCN的offsets等比例映射至相鄰的FPN層進行計算,將三層的所得特征相加,形成最終的landmarks特征。利用這些特征再預(yù)測一組向量,兩組向量疊加最終形成預(yù)測向量。

          圖8

          實驗結(jié)果。 實驗在coco數(shù)據(jù)集上進行。

          可視化結(jié)果
          目標檢測結(jié)果
          實例分割結(jié)果
          姿態(tài)估計結(jié)果 圖9

          姿態(tài)估計中,LSNet使用了兩種樣本分配策略進行訓(xùn)練。一種是通過數(shù)據(jù)集中自帶的目標框(對應(yīng)表中的obj-box)進行樣本分配,即只要靠近目標框的樣本就被認為是正樣本。但coco的標注中有很多目標,尤其是尺度較小的目標,只有目標框的標注,沒有關(guān)鍵點的標注。對于這樣的目標,其分類分支按照正樣本訓(xùn)練,回歸分支不參與訓(xùn)練(因為沒有關(guān)鍵點的標注)。因此在實際的預(yù)測結(jié)果中,可以看到LSNet預(yù)測出了很多小目標的pose。如圖9所示,左邊是CenterNet的預(yù)測結(jié)果,右邊是LSNet w/obj-box的預(yù)測結(jié)果。但反映在AP上,這會降低AP值,因為在GT pose中,是沒有小目標的標注的,LSNet預(yù)測出的小目標pose都被當做了錯誤預(yù)測。這是導(dǎo)致LSNet沒有達到SOTA的原因之一。

          因此LSNet又使用了第二種樣本分配策略,使用pose形成的目標框(對應(yīng)表中的kps-box,具體做法為取17個關(guān)鍵點中最上,最左,最下和最右的四個關(guān)鍵點形成的框)進行樣本分配。這樣的話對于那些只有目標框標注而沒有關(guān)鍵點標注的目標就不會當作正樣本,這與測試集保持了一致,因此AP有了一個較大提升,但是一些小目標的pose就檢測不到了。圖10展示了obj-box和kps-box的不同。

          圖10,左邊obj-box,右邊kps-box

          對于姿態(tài)估計AP沒有達到SOTA的另外一個原因是,通過heatmap預(yù)測關(guān)鍵點的方式比回歸方式在像素級尺度上能夠更加接近GT。而計算keypoint AP的metric對于這種像素級的偏差很敏感。為了證明這一點,文章做了一個實驗,將CenterNet-jd (HG104)的預(yù)測結(jié)果中,分別向每個預(yù)測關(guān)鍵點的位置加入1個,2個,3個像素的擾動,其AP由63.0%迅速降到了61.1%, 53.4%,44.0%。但一兩個像素的偏差肉眼卻無法察覺。因此雖然AP低點,但其實也能適用于很多場景。

          后續(xù)計劃: 加入BiFPN,DLA34,在精度和速度上進一步提升一下。

          參考文獻:
          1. X. Zhou, J. Zhuo, and P. Krahenbuhl. Bottom-up object detection by grouping extreme and center points. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 850–859, 2019.
          2. D. P. Papadopoulos, J. R. Uijlings, F. Keller, and V. Ferrari. Extreme clicking for efficient object annotation. In Proceedings of the IEEE international conference on computer vision, pages 4930–4939, 2017.
          3. E. Xie, P. Sun, X. Song, W.Wang, X. Liu, D. Liang, C. Shen, and P. Luo. Polarmask: Single shot instance segmentation with polar representation. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 12193–12202, 2020.
          4. X. Zhou, D. Wang, and P. Kr¨ahenb¨uhl. Objects as points. arXiv preprint arXiv:1904.07850, 2019


          本文亮點總結(jié)


          1.文章認為,目標檢測,實例分割和姿態(tài)估計本質(zhì)上都是識別物體,只是表征物體的形式有所不同。本文只用一套方案統(tǒng)一了三種任務(wù)。

          2.對于PolarMask只能取最外的一圈輪廓上的輪廓點,而紅色輪廓處的輪廓點將被忽略的情況,LSNet則避免了這個問題,它對輪廓進行均勻的采樣,得到n個輪廓點,然后讓網(wǎng)絡(luò)直接回歸出每個輪廓點的位置。

          3.文章提供了一個可迅速判斷n取值的方法,把gt polygon分別均勻的采樣n1, n2, n3, ...,個輪廓點。然后用n1, n2, n3, ...,分別組成新的polygon,與gt polygon進行比較,計算mask AP, 尋找最優(yōu)的輪廓點采樣數(shù)。


          ?------------------------------------------------


          雙一流高校研究生團隊創(chuàng)建 ↓

          專注于計算機視覺原創(chuàng)并分享相關(guān)知識 ?


          瀏覽 72
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产高清在线 | 欧一美一交一乱一交免费看 | 狂野欧美性爱 | 色色色色色色五月婷婷 | 黄片毛片在线 |