图像分割——Multi-Scale and Pyramid Network Based Models( PSPN)理解和代码分析
Multi-Scale and Pyramid Network Based Models 簡介:
多尺度分析(Multi-scale analysis)是一個比較古老的算法,他的主要思想是,通過自適應輸入圖片的尺度,產生一系列不同size的特征圖,然后將這些特征圖進行并行計算(對于多尺度分析的細致講解.) 。最經典的多尺度分析算法,是由 Lin等人在2017年 IEEE上提出的Feature Pyramid Network (FPN),算法最初被應用于目標檢測( object detection),不過之后也被用作圖像分割。
FPN的工作原理和傳統的Encoder-Decoder Based Models類似,都是通過一個bottom-up 過程,一個 top-down 過程,同時經過lateral connections,最終產生分割結果。
PSPN的背景:
隨著人們對于圖像分割的不斷探索,越來越多的圖像分割數據集也被提出。然而,人們在新數據集上使用原本的分割模型時,卻發現了越來越多的問題:
1、新數據集中包含了很多相似類別的物體,傳統模型對于相似物體的分割往往會出現問題。
2、新數據集中包含了更多的場景信息,傳統模型不能很好的使用這些信息。
因此,為了克服這些問題,在2017年,香港大學Hengshuang Zhao等人提出了一個新的算法——Pyramid Scene Parsing Network(PSPN)。
PSPN是由基于ResNet的FNC網絡框架修改得到,使用金字塔場景分析網絡,來提取圖片不同尺度的特征,并將其結合,從而可以提取圖片上下文信息。同時,根據ResNet網絡的特性,作者提出了一種新的深度監督損失。PSPN的訓練是在 ADE20K數據集上進行的,相比較于之前的數據集,它包含150種label和1,038種圖片等級的場景描述,因此可以充分看出PSPN相比于傳統算法的優勢。
想法和方法:
為了更好的提取圖片的上下文信息,PSPN根據以往經驗,引入了pyramid pooling module。
首先PSPN在第一步,使用ResNet和空洞卷積提取feature map。之后,這些特征圖會被輸入一個pyramid pooling module中,pooling成4個不同size的特征圖,其中第一行紅色是最粗糙的特征–全局池化生成單個bin輸出,后面三行是不同尺度的池化特征。在pyramid pooling module的過程中,對每一個不同size的特征圖,引入了一個1 x 1的卷積,目的是將其維度降低。在這之后,我們得到了4個不同size的、低維度的特征圖。我們將這4個特征圖up-sampled到原來的大小之后,和初始的特征圖進行合并,由此,我們新的特征圖包含了local context information(初始特征圖提供)和global context information(pyramid pooling特征圖提供)。最后,再通過一個卷積層,獲得像素級分割。
優點:
1、PSPN最大的有點,也是這篇文章最大的賣點,就是第一次使用pyramid pooling,完成了全局上下文信息的提取。
2、由于pyramid pooling的存在,可以去除CNN固定大小的圖像分類約束,減少不同區域之間的信息損失。
缺點:
1、pyramid pooling的固有問題——計算量相比于傳統網絡會大很多,且池化特征圖越多,計算量越大。
總結
以上是生活随笔為你收集整理的图像分割——Multi-Scale and Pyramid Network Based Models( PSPN)理解和代码分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Identity-Aware Textu
- 下一篇: 目前开源数据集整理