CV論文研讀筆記

基礎

  1. ReLU作爲CNN的激活函數,其效果在較深的網絡超過了Sigmoid,成功解決了Sigmoid在網絡較深時的梯度彌散問題。
  2. 訓練時使用Dropout隨機忽略一部分神經元,以避免模型過擬合。
  3. 在CNN中使用最大池化平均池化具有模糊化效果。
  4. 在CNN中讓池化重疊。讓步長比池化核的尺寸小,這樣池化層的輸出之間會有重疊和覆蓋,提升了特徵的豐富性。
  5. 增加LRN層,對局部神經元的活動創建競爭機制,使得其中響應比較大的值變得相對更大,並抑制其他反饋較小的神經元,增強了模型的泛化能力。(後被認爲基本沒用)
  6. 對於給定的感受野(與輸出有關的輸入圖片的局部大小),採用堆積的小卷積核是優於採用大的卷積核,因爲多層非線性層可以增加網絡深度來保證學習更復雜的模式,而且代價還比較小(參數更少)。在很多網絡中,都使用了3個3x3卷積核來代替7x7卷積核,使用了2個3x3卷積核來代替5x5卷積核。
  7. CNN由於固定的幾何結構,導致其對幾何形變的建模受到限制。爲了加強CNN對形變的建模能力,文獻”deformable convolution network的”提出了deformable convolutiondeformable RoI pooling兩種網絡結構單元。deformable convolution 和 deformable RoI pooling都是基於通過學習一個額外的偏移(offset),使卷積覈對輸入feature map的採樣的產生偏移,集中於感興趣的目標區域。可以將deformable convolution , deformable RoI pooling加入現有的CNN中,並可進行端到端訓練。
  8. ROIs Pooling顧名思義,是Pooling層的一種,而且是針對RoIs的Pooling,他的特點是輸入特徵圖尺寸不固定,但是輸出特徵圖尺寸固定。因爲可能輸入的feature map需要先投影出region proposal(物體檢測中),而region proposal的大小是不固定的,但是我們又需要對其進行分類和迴歸,所以就需要使用ROIs Pooling,先將region proposal劃分爲儘可能等大的幾個section(section數目與輸出特徵圖尺寸維度相關),然後對每個section進行max pooling,獲得輸出大小固定的特徵圖。
  9. ROIs Pooling操作中兩次量化(邊框長寬除以步長可能爲小數;將量化後的邊界區域平均分割成 n x m 個單元(section),對每一個單元的邊界進行量化。)造成的區域不匹配(mis-alignment)的問題。實驗顯示,在檢測測任務中將 ROI Pooling 替換爲 ROI Align可以提升檢測模型的準確性。ROI Align的思路很簡單:遍歷每一個候選區域,保持浮點數邊界不做量化;將候選區域分割成k x k個單元,每個單元的邊界也不做量化;’在每個單元中計算固定四個座標位置,用雙線性內插的方法計算出這四個位置的值,然後進行最大池化操作。
  10. BN層爲了使得數據的擬合、分類更簡單,加快收斂速度,我們需要對數據進行歸一化(0均值,所有數據減去均值;單位方差,去相關性)
  11. 激活函數是神經網絡中非線性的來源,因爲如果去掉這些函數,那麼整個網絡就只剩下線性運算,線性運算的複合還是線性運算的,最終的效果只相當於單層的線性模型.
  12. RPN:在一個小區域上可以生成k個anchor boxes(所有anchor boxes的中心點座標是一樣的,就是對應這個小區域的中心點)。RPN就是在這些anchor boxes上找到可能存在目標的boxes,並進一步迴歸座標,得到proposals輸給後面的網絡。

論文研讀

Region Proposal by Guided Anchoring

物體檢測器自己學Anchor,以往使用滑窗對圖像進行按步長的探測,以框內是否有問物體爲判斷結果。但是因爲物體的形狀是無法確定的,對於長寬比懸殊的我物體來說,這樣固定大小的窗口並不能有效的檢測到物體的位置。

這篇論文的關鍵就在於怎麼生成一個自適應物體形狀的Anchor。

Anchor 的概率分佈被分解爲兩個條件概率分佈,也就是給定圖像特徵之後 anchor 中心點的概率分佈,和給定圖像特徵和中心點之後的形狀概率分佈:
在這裏插入圖片描述
Anchor的生成使用上述公式。其中x, y, w, h爲座標和長寬。因此,需要做的就是位置預測和形狀預測。

位置預測主要是預測物體的中心區域。我們將整個 feature map 的區域分爲物體中心區域,外圍區域和忽略區域,大概思路就是將 ground truth 框的中心一小塊對應在 feature map 上的區域標爲物體中心區域,在訓練的時候作爲正樣本,其餘區域按照離中心的距離標爲忽略或者負樣本。

形狀預測使用IoU 作爲監督,因爲IoU可迴歸,設置訓練目標是使IoU最大,得到Anchor的w和h。

Feature Selective Anchor-Free Module for Single-Shot Object Detection

主要是爲了解決物體檢測的尺度問題,小物體的檢測誤差常常較大。普遍的方法是FPN(Feature Pyramid Network),它利用多級的feature map去預測不同尺度大小的物體,其中高層特徵帶有高級語義信息和較大的感受野,適合檢測大物體,淺層特徵帶有低級的細節語義信息和較小的感受野,適合檢測小物體。FPN逐步融合深層特和淺層特徵,使得逐步增加淺層的特徵的高級語義信息來提高特徵表達能力,提升檢測效果。

物題檢測的feature map是多層的,高層的feature map分辨率高,得到的anchor數量多尺寸小,淺層的feature map分辨率低,得到的anchor數量少尺寸大。原先根據anchor size的大小將GT分配。但是現在優化爲FSAF模塊,不再根據instance size選擇feature層而是根據instance content。

Image Segmetation With Deep Learning

語義分割是將輸入圖片在像素級別上分區域或者稂據物體通過邊緣分割圖片。

條件隨機場旨在模式化像素間的關係 , 一般來講, 自然圖像中像素之間具備以下特點 :1. 相鄰的 像素更有可能相同的標籤。2. 具有類似顏色 的像素更有可能屬於同一標籤。3. 根據圖像的特性,有些標籤的像素點更有可能和其他類別的像縈在一起,通俗地講,在 “椅子”標籤上的像素更有可能屬於“人類”, 而不太可能是 “飛機” 標籤。 4. 分割的結果一般會經過不斷迭代進行細化。

全卷積網絡的提出 , 語義分割任務則轉變成一個端到端的網絡 。 目前主流的語義分割任務則是輸入一張任意尺寸的輸入 , 輸出一張分割好的圖片 , 按照每個像素的標籤對每個像素進行標色 。

全卷積神經網絡( Fully Convolutional Network ,FCN) , 成爲近幾年語義分割網絡的基準網絡。 在FCN之前由於全連接層和GPU顯卡顯存的侷限 ,語義分割一直無法實現end-to-end的訓練模式 , FCN通過全卷積實現這一功能並在 Pascalvoc 數據集上遠遠超過其他方法 。 但由於直接拿來分類或者檢測網絡框架會導致分割框架丟失很多局部信 息 ,導致邊緣十分模糊。 Liang Chen M 等人提出了在網絡後加入全連接的條件隨機場( Conditional Random Field ,CRF)來細化邊緣 , 全連接的 CRF 在一定程度上解決了 FCN 邊緣不細化的問題。 Shuai等人更巧妙的將 CRF 用卷積神經網絡來實現成爲一個遞歸神經網絡( Recurrent Neural Network, RNN ) 並作爲一個可訓練的模塊 , 該網絡稱作 CRFasRNN 。 類似馬爾科夫場等其他概率圖模型也被應用於語義分割中 , 同 時 也取得了不錯的效果。

FCN將CNN的全連接層改換爲多層卷積。因爲卷積是逐層篩選特徵的,所以這就導致最後的結果特徵圖十分粗糙。

針對全卷積網絡輸出 特徵圖被降採樣到很小尺寸的間題 ,FCN使用上採樣的方法使粗糙特徵圖可以 輸出一張和原圖大小一樣並得到每個像素所屬的類別, 這樣的輸出稱爲 Dense prediction。 FCN 中使用的上採樣方式是二線性插值 , 該方法通過輸入四個特徵圖的值來計算 ( i ,j ) 位置的輸出y ij , 具體公式如下 :
在這裏插入圖片描述

SegNet結構是語義分割的一個變體,該網絡最大的特性就是可以實時分割街 圖片 , 旨在應用於自 動駕駛和智能機器人。

FCN 中使用線性插值作爲上採樣恢復特徵圖 尺寸從而輸出和原圖一樣的分割好的圖片,Hyeonwoo Noh 等人提出了DeconvNet 使用學習的反捲積核 ( Deconvolution ) 對特徵圖行上採樣實現高精度的語義分割。

語義分割網絡也越來越多地使用了多層信息融合的技術, 比如 Refinenet 就使用殘差單元對多層特徵進行融合 。

爲了解決分割問題中數據量缺失的問題 , 很多研究者在分割問題中引入了遷移學習(transferlearning) 和 弱監督 ( weaklysupervised ) 學習的方法 。 遷移學習主要是解決像素級別樣本量不足, 而弱監督學習則是在沒有像素級別標註但是具有圖像類別標籤數據集的一種解決方式。

醫學圖像的自動分割一般是對各種疾病以及各種年齡患者的預評估步驟, 現在已經在非增強 T1 加權 的圖像中取得了不錯的分割結果。由於病變區域和部分組織相對於整張圖片過小 , 所以爲了更精準的分割 , Moeskops 等人提出了一種多尺度融合的 CNN 來增加分割細節和空間一致性的魯棒性 。部分醫學圖像 , 由於成像或者患者特性 , 具有組織分辨率低、 噪聲多等挑戰 。 所以爲了克服這些挑戰 , Zhang 等人M 設計了一種結合多模態醫學圖像的 CNN , 該網絡使用了不同信號加權的圖像作爲輸入 , 從儘可能多的模態中提取出更多的信息。

3D-SIS: 3D Semantic Instance Segmentation of RGB-D Scans

3d RPN 有兩個分支,一個分支是卷積核爲1*1*1的卷積層,表示分類,將通道數變成2*Nanchors, Nanchors=(3,11)。2表示前景和背景的分類得分。另一個分支也是卷積核爲1*1*1的卷積層,表示位置迴歸,將通道數變成6*Nanchors,6表示3d bounding box的位置參數(Δx,Δy,Δz,Δw,Δh,Δl),定義如下。類似fast r-cnn的迴歸表示。
在這裏插入圖片描述

分類的loss選用二分類交叉熵loss。迴歸分支選用Huber loss,定義如下:
在這裏插入圖片描述
訓練時當anchor與ground truth的IoU大於等於0.35時,當作正樣本,參與分類與迴歸loss的計算,當IoU小於0.15,當作負樣本,只參與分類loss計算。

3d實例分割 與前面介紹的3d bounding box檢測沒有共享網絡和權重,而是另起一個網絡,使用相同的輸入。在實例分割的網絡中,使用全卷積,每個卷積的操作,輸出都保留原輸入的大小不變,這樣可以提高分割的準確性。在輸出的特徵體中,利用檢測網絡生成的3d bounding box截取出實例分割的結果,在輸出的特徵體中,每個體素都有c個通道,c是類別的總數。由於檢測網絡生成的3d bbox不一定準,所以在訓練過程中,3d bbox與ground truth的IoU大於0.5纔會參與訓練。

Structured Knowledge Distillation for Semantic Segmentation

通過知識蒸餾的思想利用複雜網絡(Teacher)來訓練簡單網絡(Student),目的是爲了讓簡單的網絡能夠達到和複雜網絡相同的分割結果。爲了得到兩個網絡相同的結果就要保證兩個網絡在訓練過程中的一致性。因此通過設計訓練過程中的損失函數來是兩者達到一致效果。

首先當輸入的圖像分別經過兩個網絡之後會生成兩個維度相同的特徵表示。通過兩個像素之間的相似性關係來提升網絡的效果。

爲了匹配Teacher 網絡與Student網絡產生的分割圖的高階關係,引入了條件生成對抗學習的思想。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章