<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          談一談UNet圖像分割

          共 3308字,需瀏覽 7分鐘

           ·

          2021-08-21 11:20

          【GiantPandaCV導(dǎo)語】這篇文章主要針對于圖像分割的算法的一些理解,主要是一個比較經(jīng)典的UNet系列的網(wǎng)絡(luò)的認識。最后希望看完這篇文章的讀者可以有所收獲,對于一些個人的理解歡迎大家批評指正,希望可以和大家一起交流進步。

          一、引言

          yolov4、v5發(fā)布之后,在卷積上改進感覺也快達到一個頂峰了,在卷積神經(jīng)網(wǎng)絡(luò)的設(shè)計,在很多大佬的眼里估計都是一樣的了,每一個新的改進或者檢測框架的提出,可能都會看到之前框架的影子,也有人把在圖像檢測上的改進稱之為“搭積木”;

          在這之后,可能在圖像上的各大論文都將重心放在Transformer上了,Transformer在CV上的論文也是變得越來越多了,圖像分割做為圖像的一個領(lǐng)域當然也不能落下,SwinUnet可以說終于讓Transformer在圖像分割中也得到了露臉的機會。

          不過,基于Transformer在圖像方面上的應(yīng)用,具體在實際落地的中,可能也會很快了。本文可能還是要從最經(jīng)典的圖像分割網(wǎng)絡(luò)UNet開始說一說這個比較古老的圖像分割系列了。

          雖然現(xiàn)在算法越來越依靠在數(shù)據(jù)上“做手腳”,但是也不能忽視網(wǎng)絡(luò)的設(shè)計的技巧和思想,掌握一個優(yōu)秀的設(shè)計思想,就可以天馬行空、設(shè)計出飄逸的算法。

          二、圖像分割的絮叨

          圖像分割作為像素級的精細分類,可以讓算法做一些精細活,這種精細活體現(xiàn)在醫(yī)學(xué)上的應(yīng)用(個人覺得醫(yī)學(xué)領(lǐng)域是一個神奇也很有價值的領(lǐng)域),UNet在醫(yī)學(xué)圖像上的分割在當時有著不俗的表現(xiàn)力,整個網(wǎng)絡(luò)的設(shè)計也是非常精妙的,其網(wǎng)絡(luò)的設(shè)計的核心的思想在當年與yolov3有著相似之處,隨著后面UNet的幾個系列乃至現(xiàn)在YOLO的v4和v5,它們最核心的設(shè)計思想都有著異曲同工之妙,那就是:信息融合、位置不偏移。

          其實,在對網(wǎng)絡(luò)的設(shè)計的過程中,始終保持著這兩點,就可以設(shè)計出一個比較好的網(wǎng)絡(luò)。(但是,這也只是開始的一步,網(wǎng)絡(luò)的設(shè)計還有很多的因素要考慮,這里就不一一敘述了,相信每個人都會有著經(jīng)驗性的理解)。

          1. UNet網(wǎng)絡(luò)的技巧和思想

          • 終于進入正題了,鋪墊了好多文字了,就從UNet的設(shè)計開始說起吧,相信網(wǎng)上也有比較多的圖像分割結(jié)構(gòu)設(shè)計的一些套路

            A、上采樣+下采樣作為整體的網(wǎng)絡(luò)結(jié)構(gòu)(Encoder-Decoder)
            B、多尺度的特征融合
            C、信息流通的方式
            D、獲得像素級別的segment map
            在這里插入圖片描述

          UNet最初的設(shè)計也是使用在醫(yī)學(xué)影像的分割,通過經(jīng)典的編解碼結(jié)構(gòu)、卷積、池化、ReLU激活函數(shù),進行設(shè)計

          UNet的技巧

          • 不用Padding,防止位置發(fā)生偏移
          • 上采樣使用插值法+conv,而不使用轉(zhuǎn)置卷積等上采樣方法,讓特征圖保持著均勻的色差
          • 使用skip connection更好的進行信息融合

          2. UNet++

          從UNet++開始,網(wǎng)絡(luò)的設(shè)計就開始注意原始圖像的位置信息,還有就是整個網(wǎng)絡(luò)的信息融合的能力。

          所以,UNet++通過一系列嘗試,最終設(shè)計成稠密連接,同時有長連接和短連接,并且將UNet中間空心的位置填滿;

          可以抓取不同層次的特征/不同大小的感受野。UNet++橫向看可以看做一個稠密結(jié)構(gòu)的DenseNet。

          在這里插入圖片描述

          3. UNet3+

          UNet++只是針對于同一尺度的稠密連接,而UNet3+則是跨尺度的稠密連接

          UNet3+橫縱信息互相交融,像極了國內(nèi)高鐵的“八橫八縱”的高鐵網(wǎng),可以獲得更大范圍的信息融合與流通。又一次感覺很多算法上的設(shè)計思想都有異曲同工之妙,亦或者說是源于生活。

          當然,UNet3+效果在醫(yī)療圖像上分割有著不俗的效果,還有一部分是來源于其精心設(shè)計的損失函數(shù)MS-SSIM,其作為UNet3+組合損失函數(shù)的一部分,也會在提點上有著一定的作用(算法除了模型設(shè)計,當然還逃脫不了損失的設(shè)計)。

          在這里插入圖片描述

          4. U2Net

          這個網(wǎng)絡(luò)的設(shè)計,給我的一個感覺就是很飄逸了,這是UNet系列改進的另一條路(我個人覺得,作者對于卷積、池化的使用達到了一個很高的水平,這是在一些常規(guī)的設(shè)計中還是比較難看到的,用簡單的組件設(shè)計出一個很優(yōu)秀的算法)。

          嵌套UNet的方式,不可謂不是一種天秀的方法;同時通過膨脹卷積的使用,在不增加計算量的情況下,獲得了很大的感受野,整個網(wǎng)絡(luò)看起來變得很深,但是在參數(shù)量上的控制,已經(jīng)達到了一種爐火純青的地步。

          不過,這篇論文的實驗的數(shù)據(jù)集不在是針對醫(yī)療圖像,也沒有去做實驗去比較;但是,U2Net為了獲得更大的感受野,個人覺得在位置信息上丟失的還是比較多的,在對于位置信息的表現(xiàn)力,可能是有所欠缺的。

          在這里插入圖片描述

          二、對于改進UNet的見解

          上面說的內(nèi)容沒有說的特別繁瑣,這些內(nèi)容網(wǎng)上有著非常細致的解讀(因為上面的技術(shù)也是2021年之前的知識點了,可能也算是相對來說比較古老的技術(shù)了,大家估計都聽過或者看到過一些解讀),本文就挑核心的點進行介紹,讓大家在對上面的內(nèi)容有了一個認識,并引出我下面的一些理解。

          應(yīng)該說很多人,其實都喜歡在UNet進行改進,換個優(yōu)秀的編碼器,然后自己在手動把解碼器對應(yīng)實現(xiàn)一下。至于為什么要選擇UNet上進行改進,可能是因為UNet網(wǎng)絡(luò)的結(jié)構(gòu)比較簡單,還是比較好進行改進的,而且UNet的效果,在很多場景下的表現(xiàn)力可能都是差強人意的。

          但是,直接對UNet進行簡單的替換編解碼器,效果應(yīng)該也是差強人意或者效果就是很差的;之前也有一些同事,在對UNet進行改進的時候,也會遇到效果不好的問題。直接對UNet改進,個人認為有兩個本質(zhì)的原因會影響網(wǎng)絡(luò)的效果。

          首先,原始的UNet在編碼器的網(wǎng)路結(jié)構(gòu)是很淺的,同時沒有加padding,使得解碼器獲取編碼器的信息時,位置信息丟失的不會很嚴重;但是一旦選擇一個比較深的網(wǎng)絡(luò)作為編碼器(一般的特征提取的網(wǎng)絡(luò)會加padding),使得位置信息丟失的相對來說是很嚴重的,在解碼器獲取到對應(yīng)編碼器的信息時,就已經(jīng)產(chǎn)生了很大的偏移,再經(jīng)過一個同樣深的解碼器,那么位置偏移就會變得更加嚴重,效果不好就可以解釋的通了。

          不過上面都是針對于直接用其他優(yōu)秀的特征提取網(wǎng)絡(luò)直接改進UNet的情況。

          個人認為,UNet上的改進一定要認識到最原始的設(shè)計思路,以及它相對于后面系列的一個劣勢,就是信息融合、位置不偏移。

          其實,信息融合、位置偏移在yolov4、v5中也得到了體現(xiàn),v4和v5對于網(wǎng)絡(luò)的改進思路也是緊緊抓住了這兩個點(當然也有其他非常重要或者新穎的點,但是這兩點一定是核心的),后期對于UNet進行改進的網(wǎng)絡(luò)都是在對信息融合上有著獨到的理解,這也是后面改進的網(wǎng)絡(luò)比較難以再進行優(yōu)化的一個原因,要想對UNet有著非常獨到的新穎的改進,還是比較有難度的(Swin-UNet是Transformer在圖像上的表現(xiàn),我也不太好評價)。

          如果非要在UNet上通過替換編解碼器的方式(用現(xiàn)有的優(yōu)秀的特征提取器)進行改進時,可以借鑒UNet++和UNet3+的思想,橫縱信息的流通,還有就是padding上的特殊處理、能不能更好的進行反向傳播、位置偏移上的特殊處理、不要選擇太深的網(wǎng)絡(luò)、卷積核的大膽設(shè)計這幾個方面出發(fā);

          最后,其實分割網(wǎng)絡(luò)可以嘗試其他的分割模型,Deeplab系列也是一個比較好的選擇,對主干的修改也相對容易。

          三、總結(jié)

          1. 個人的感覺對于這種網(wǎng)絡(luò)的設(shè)計、代碼的寫法要有天馬行空的想象力,代碼寫起來也像武俠小說中那種飄逸感;同時,算法設(shè)計思想是很重要的,如果單純的替換主干這種事情,都可以當做算法的設(shè)計的話,那豈不是人人都可以做算法工程師了(這也是單純的從模型的角度來說);不過優(yōu)秀的算法設(shè)計的思想很往往是很困難的,因為不可能每個人都是“聰明絕頂”的高手,可能有時候需要像有機化學(xué)中苯環(huán)的結(jié)構(gòu)圖一樣,需要做一個奇幻的美夢。

          2. 這篇文章,我的個人的理解比較多,可能也有不正確的理解,也歡迎大家批評指正,多多學(xué)習(xí)。


          - END - 


          歡迎添加微信加入交流群


          瀏覽 74
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产精品乱码一区二区三区 | 精品国产一区二区三区久久久狼,91精品一 | 国产精品视频免费 | 久久久久久亚洲精品 | 自拍偷拍激情网 |