博客專欄

        EEPW首頁 > 博客 > 分割算法——可以分割一切目標(各種分割總結)(1)

        分割算法——可以分割一切目標(各種分割總結)(1)

        發布人:CV研究院 時間:2021-09-16 來源:工程師 發布文章

        很多關注的朋友一直會問“計算機視覺戰隊平臺有基礎性的內容嗎?”,今天我和大家說一次,我們平臺之前有推送很多基礎的知識


        前言

        很多關注的朋友一直會問“計算機視覺研究院“有基礎性的內容嗎?”,今天我和大家說一次,我們平臺之前有推送很多基礎的知識,有興趣的或者是剛剛接觸CV&DL的你,可以去歷史消息閱讀,在這也感謝所有一直關注和支持我們的小伙伴!接下來就和大家說說目標分割的事吧~

        1.jpg

        分割其實在很多領域是非常重要的研究對象,現在也有很多研究者在該領域大展身手,比如何大神,一直在該方面的做的最優秀之一,今天就基于他CVPR 2018的一篇優秀Paper說起。


        概述

        大多數目標實例分割的方法都要求所有的訓練樣本帶有segmentation masks。這種要求就使得注釋新類別的開銷很大,并且將實例分段模型限制為~100注釋良好的類。

        本次技術目的是提出一種新的部分監督的訓練模式,該模式具有一種新的權重傳遞函數,結合一種新的權重傳遞函數,可以在一大組類別上進行訓練實例分割模型,所有這些類別都有框注釋,但只有一小部分有mask注釋。這些設計允許我們訓練MASK R-CNN,使用VisualGenome數據集的框注釋和COCO數據集中80個類的mask注釋來檢測和分割3000種視覺概念。

        最終,在COCO數據集的對照研究中評估了提出的方法。這項工作是邁向對視覺世界有廣泛理解的實例分割模型的第一步。

        在正式細說本次分割技術之前,還是簡單說下分割的事,有一個簡單的引言和大家分享下,沒有興趣的您可以直接跳過,閱讀關鍵技術部分,謝謝!

        目標檢測器已經變得更加精確,并獲得了重要的新功能。最令人興奮的是能夠預測每個檢測到的目標前景分割mask,這是一個稱為instance segmentation的任務。在實踐中,典型的instance segmentation系統僅限于僅包含大約100個目標類別的廣闊視覺世界的一小部分。

        會有很多人問:什么是語義分割?

        語義分割其實就是對圖片的每個像素都做分類。其中,較為重要的語義分割數據集有:VOC2012 以及 MSCOCO 。

        比較流行經典的幾種方法

        傳統機器學習方法:如像素級的決策樹分類,參考TextonForest以及Random Forest based classifiers。再有就是深度學習方法。

        深度學習最初流行的分割方法是,打補丁式的分類方法 (patch classification) 。逐像素地抽取周圍像素對中心像素進行分類。由于當時的卷積網絡末端都使用全連接層 (full connected layers) ,所以只能使用這種逐像素的分割方法。

        但是到了2014年,來自伯克利的Fully Convolutional Networks(FCN)【點擊藍色,有鏈接直接可以閱讀全卷積網絡相關資料】卷積網絡,去掉了末端的全連接層。隨后的語義分割模型基本上都采用了這種結構。除了全連接層,語義分割另一個重要的問題是池化層。池化層能進一步提取抽象特征增加感受域,但是丟棄了像素的位置信息。但是語義分割需要類別標簽和原圖像對齊,因此需要從新引入像素的位置信息。有兩種不同的架構可以解決此像素定位問題。

        第一種是編碼-譯碼架構。編碼過程通過池化層逐漸減少位置信息、抽取抽象特征;譯碼過程逐漸恢復位置信息。一般譯碼與編碼間有直接的連接。該類架構中U-net 是最流行的。

        第二種是膨脹卷積 (dilated convolutions) 【這個核心技術值得去閱讀學習】,拋棄了池化層。使用的卷積核如下圖所示:

        2.jpg

        居然都說到這里,那我繼續來簡單說一些相關的文獻吧。

        按時間順序總結,大概我能總結9篇paper,看語義分割的結構是如何演變的。分別有FCN 、SegNet 、U-Net、Dilated Convolutions 、DeepLab (v1 & v2) 、RefineNet 、PSPNet 、Large Kernel Matters 、DeepLab v3 。

        參考文章:(“計算機視覺戰隊”微信公眾平臺推送)

        DeepLab V3

        Deeplab v2 安裝及調試全過程

        谷歌——DeepLab v1

        1)FCN 2014年

        3.jpg

        主要的貢獻:

        為語義分割引入了 端到端 的全卷積網絡,并流行開來

        重新利用 ImageNet 的預訓練網絡用于語義分割

        使用 反卷積層 進行上采樣

        引入跳躍連接來改善上采樣粗糙的像素定位

        比較重要的發現是,分類網絡中的全連接層可以看作對輸入的全域卷積操作,這種轉換能使計算更為高效,并且能重新利用ImageNet的預訓練網絡。經過多層卷積及池化操作后,需要進行上采樣,FCN使用反卷積(可學習)取代簡單的線性插值算法進行上采樣。

        2)SegNet 2015年

        4.jpg

        編碼-譯碼架構

        主要貢獻:將池化層結果應用到譯碼過程。引入了更多的編碼信息。使用的是pooling indices而不是直接復制特征,只是將編碼過程中 pool 的位置記下來,在 uppooling 是使用該信息進行 pooling 。

        3)U-Net 2015 

        U-Net有更規整的網絡結構,通過將編碼器的每層結果拼接到譯碼器中得到更好的結果。

        5.jpg

        4)Dilated Convolutions 2015年

        通過膨脹卷積操作聚合多尺度的信息

        6.gif

        主要貢獻:

        使用膨脹卷積

        提出 ’context module‘ ,用來聚合多尺度的信息

        池化在分類網絡中能夠擴大感知域,同樣降低了分辨率,所以提出了膨脹卷積層。

        7.jpg

        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 凤阳县| 井陉县| 曲麻莱县| 屏山县| 门源| 桃源县| 鄂伦春自治旗| 平阳县| 丽江市| 紫云| 仙居县| 银川市| 四平市| 洪湖市| 都兰县| 岗巴县| 礼泉县| 天门市| 浠水县| 安庆市| 巴彦县| 商洛市| 大竹县| 鲁山县| 赤城县| 丹寨县| 竹溪县| 关岭| 无为县| 宁河县| 枣阳市| 景东| 佛山市| 青铜峡市| 新昌县| 文山县| 漾濞| 宝坻区| 垣曲县| 土默特右旗| 宜川县|