DeepID-Net——形變約束池化層(物件檢測)
在本文中,簡要回顧了DeepID-Net,介紹了一種基於形變部件的卷積神經網路(CNN)。採用一個新的形變約束池化層(def-pooling)模擬具有幾何約束和懲罰的物件部分的變形。
這意味著,除了直接檢測整個物件外,檢測可以幫助檢測整個物件的物件部分也是至關重要的。它是ILSVRC 2014中的第一個用於物件檢測任務的文章。它已在2015年發表在CVPR [1]和2017年TPAMI [2]論文中,共引用了約300篇文章(SH Tsang @ Medium)。
DeepID-Net
黑色的步驟實際上是R-CNN中存在的原有東西。實際上紅色的步驟沒有出現在R-CNN中。
我將在上圖中提及每一個步驟,並在文章結尾處給出結果。
步驟
(1)選擇性搜尋
(2)邊界框拒絕
(3)使用物件級註釋進行預訓練
(4)形變約束池化層(Def-Pooling Layer)
(5)場景建模
(6)模型平均
(7)邊界框迴歸
1.選擇性搜尋
(1)首先,顏色相似性、紋理相似性、區域大小和區域填充被用作非基於物件的分割。因此,我們獲得了許多小的分割區域,如圖的左下角所示。
(2)然後,使用自下而上的方法將小的分割區域合併在一起,以形成更大的分段區域。
(3)因此,如影像所示,生成大約2K個區域提議(邊界框候選)。
2. 邊界框拒絕
R-CNN用於拒絕最有可能是背景的邊界框。
3.使用物件級註釋進行預訓練
通常,預訓練是基於影像層次的註釋。當物件在影像中太小時,其效果不好,因為物件應占據由選擇性搜尋建立的邊框內的大區域。
因此,預訓練是在物件級註釋上進行的。深度學習模型可以是任何模型,例如ZFNet、VGGNet和GoogLeNet。
4. 形變約束池化層(Def-Pooling Layer)
比如我們使用ZFNet,在conv5之後,輸出將通過原始FC層fc6和fc7,以及一組轉換和建議的形變約束池化層(Def-Pooling Layer)。
形變約束池層(Def-Pooling Layers),每個光圈中心具有高啟用值
對於形變約束路徑,conv5的輸出經過卷積層,然後經過形變約束層,然後有一個最大池化層(max pooling layer)。
簡而言之,ac乘以dc和n的總和是上圖中的5×5變形懲罰。懲罰是將物件部分放置在假定錨位置的懲罰。
形變約束池層(Def-Pooling Layers)學習具有不同大小和語義含義的物件部分的變形。
通過訓練這個形變約束池層(Def-Pooling Layers),如果待檢測物件的物件部分靠近它們的錨點,則在形變約束池層(Def-Pooling Layers)之後將給出高的啟用值。這個輸出將連線到200個類別分數以改進。
5.場景建模
在ILSVRC中的物件檢測任務中,只有200個類別。ILSVRC還有一項分類競爭任務,用於對1000個類別物件進行分類和本地化。與物件檢測任務相比,內容更加多樣化。因此,通過分類網路獲得的1000個類分數用於細化200級分數。
6.模型平均
使用多個模型來提高精度,並對所有模型的結果進行平均。自LeNet、AlexNet等以來一直使用這種技術。
7.邊界框迴歸
邊界框迴歸僅用於微調已在R-CNN中使用的邊界框位置。
結果
·邊界框拒絕(步驟2):30.9% ·從AlexNet更改為ZFNet(步驟3):31.8% ·從ZFNet改為VGGNet(步驟3):36.6% ·從VGGNet更改為GoogLeNet(步驟3):37.8% · +物件級註釋進行預訓練(步驟3):40.4% ·來自[Ref 60]的更多邊界框建議+邊緣:42.7% ·+ Def-Pooling Layers(步驟4)):44.9% ·VGGNet建議的+多尺度訓練:47.3% ·+場景建模(步驟5):47.8% ·+邊界框迴歸(步驟7):48.2% ·+模型平均(步驟6):50.7%!
與多模型多裁剪(multi-crop)的GoogLeNet相比,DeepID-Net的mAP高出6.1%。但是,正如我們所看到的,一些貢獻實際上來自其他論文。然而,有兩個最新的想法是物件級註釋和形變約束池層(Def-Pooling Layers)的預訓練。
參考文章 [2015年CVPR] [DeepID-Net] DeepID-Net:用於物件檢測的可變形深度卷積神經網路
https://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Ouyang_DeepID-Net_Deformable_Deep_2015_CVPR_paper.pdf [2017 TPAMI] [DeepID-Net] DeepID-Net:用於物件檢測的可變形深度卷積神經網路 https://ieeexplore.ieee.org/document/7298854
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31545819/viewspace-2215636/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- IDELAY約束測試IDE
- 【SQL】15 SQL 約束(Constraints)、NOT NULL 約束、UNIQUE 約束、PRIMARY KEY 約束、FOREIGN KEY 約束、CHECK 約束、DEFAULT約束SQLAINull
- oracle 約束 enable validate 檢查Oracle
- 層次和約束:專案中使用vuex的3條優化方案Vue優化
- 最優化之無約束優化優化
- 物件導向 約束、自定義異常、加密物件加密
- 物件池Pools優化物件優化
- 約束優化的拉格朗日乘子(KKT)優化
- 約束Constraint引起CBO執行計劃變化一例AI
- Oracle約束的學習與測試Oracle
- 【訓練】sql訓練、建立和管理表、約束、檢視及其他資料庫物件SQL資料庫物件
- 支援向量機(SVM)的約束和無約束優化、理論和實現優化
- Oracle定義約束 外來鍵約束Oracle
- Oracle約束enable validate時資料檢查Oracle
- 無約束凸優化演算法優化演算法
- SQL約束SQL
- Oracle約束Oracle
- oracle 約束Oracle
- 綜合約束
- Win10系統怎麼檢測電池和檢視電池檢測報告Win10
- 目標檢測模型——SPP (空間金字塔池化)模型
- 【譯】淺談Angular中的變化檢測Angular
- Java BasePooledObjectFactory 物件池化技術JavaObject物件
- 通過大容量匯入操作控制約束檢查
- 05-無約束優化演算法優化演算法
- 06-等式約束優化演算法優化演算法
- 約束介紹
- 物化檢視(Materialized View)的重新整理回滾約束ZedView
- 聊聊池化層和步長為2的卷積層卷積
- 卷積神經網路:卷積層和池化層卷積神經網路
- 修改表名索引約束觸發器等物件不會失效索引觸發器物件
- 脫2層未知變形殼 ―― philips.exe
- [譯]Kotlin泛型中何時該用型別形參約束?Kotlin泛型型別
- Java檢測物件是否相等Java物件
- C# 泛型 引用型別約束 值型別約束C#泛型型別
- Unique約束,Primary Key約束與索引的關係學習與測試_20091213.doc索引
- SQLServer約束介紹SQLServer
- MySQL自增約束MySql