Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector 論文理解
解決什麼問題
少量support的情況,檢測全部的屬於target目標範疇的前景
本文創新點\貢獻
- 沒有反覆訓練和fine-tune的情況檢測新物體,探索物體對的聯繫。可以在線檢測,在proposal前面使用attention模塊很有用,聯繫模塊能過濾
- 大量的數據集,1000個類,每個類只有少量樣本,實驗表明用這個數據集能達到的效果更好
本文IDEA來源
問題在於新的類別不錯的框的分數低
方法
方法概述
在RPN前加一個attention,在檢測器之前加了3個attention,然後還是用到了負support訓練
問題定義
給定帶有target物體特寫的support圖片,包含support中類別物體的query圖片,support中包含類物體,每類個樣本,所以就是-way -shot檢測
Deep Attentioned Few-Shot Detection
權重共享的框架由多個分支組成,分別爲support和query服務,support根據輸入有多個分支,圖片只顯示了一個。
query分支是一個FasterRCNN網絡,包含RPN和檢測器。
利用這個框架來學習support和query之間的匹配關係,更好的學習同類之間的一般知識。
以這個框架爲基礎,提出了attention RPN,還有多聯繫檢測
Attention-Based Region Proposal Network
沒有support,RPN就沒有目標,後面的子分類就搞不清楚這麼多的不相關目標。
使用support信息就能過濾掉大部分的背景框,還有那些不是匹配的類別
通過在RPN中用attention機制來引入support信息,來對其他類的proposal進行壓制
通過逐深度的方法計算二者特徵值的相似性,相似性用來生成proposal
support的特徵是,queroy的特徵是,相似度定義如下:
其中是attention特徵圖,作爲一個卷積核在query的特徵圖上滑動,以一種逐深度(取平均)的方式。
使用的是RPN的底部特徵,ResNet50的res4-6,發現設置表現很好,這說明全局特徵能提供一個好的先驗
用的卷積處理,然後接分類和迴歸層。
Multi-Relation Detector
還是測量相似性的,在query和support的bbox之間,包含三個attention:
- global-relation head:學習全局匹配的深度嵌入
- local-correlation head:學習support和query的proposal之間的逐像素和逐深度對應
- patch-relation head:學習匹配的深度非線性度量
三個head的分析:
第三個patch 並不理想,這個頭的模型更復雜,但作者也覺得複雜的聯繫是難學習的
但是三個一起用效果最好,說明之間還是能相互補充的
Two-way Contrastive Training Strategy
不僅匹配而且區分
訓練組,其中,是跟query不同的類,訓練的時候只有被標記爲前景
背景的proposal很多,所以平衡在query和support中三個不同匹配的比例,保持
前景proposal 和 負support() [ 圖中(2) ]:
背景proposal 和 正support() [ 圖中(1) ]:
proposal(前或後) 和 負support()
= 1:2:1
根據匹配的分數選全部的,選前,前
根據第一隊確定總個數,後面按分數來,什麼樣的分數?
錯誤的根據最不匹配分數?
爲什麼沒有proposal(前或後)和positive support pairs() 的?
因爲這裏是算不同嗎?
對於每個採樣的proposa計算推薦:
和Faster RCNN一樣,用的二值化交叉熵
是把四個匹配都算上嗎
選擇訓練策略
n-way的n表示n個類
實驗表明只有這個對比訓練對區分起了作用
RPN的選擇
和0.5IoU的取前100的RPN對比。表裏也顯示RPN attention確實有效