1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        全卷積神經(jīng)網(wǎng)絡(luò)(FCN)

        共 2502字,需瀏覽 6分鐘

         ·

        2020-08-08 13:46

        回顧

        上期我們一起學(xué)習(xí)了,關(guān)于傳統(tǒng)的目標(biāo)檢測(cè)算法的大致思路,通常是利用滑動(dòng)窗口進(jìn)行選取目標(biāo)候選框,然后利用一些算法進(jìn)行特征提取,最后再扔到分類器中去檢測(cè)分類,這樣效率上來(lái)說是比較低的。
        前奏 | 傳統(tǒng)目標(biāo)檢測(cè)算法思路
        那么今天我們一起學(xué)習(xí)一下一個(gè)解決提高檢測(cè)效率的一個(gè)方法,全卷積神經(jīng)網(wǎng)絡(luò)(FCN),我們知道,對(duì)于一個(gè)各層參數(shù)結(jié)構(gòu)都設(shè)計(jì)好的神經(jīng)網(wǎng)絡(luò)來(lái)說,輸入的圖片大小是要求固定的,比如AlexNet,VGGNet, GoogleNet等網(wǎng)絡(luò),都要求輸入固定大小的圖片才能正常工作。
        而FCN的精髓就是讓一個(gè)已經(jīng)設(shè)計(jì)好的網(wǎng)絡(luò)可以輸入任意大小的圖片。接下來(lái),我們就一起看一下FCN和CNN有什么區(qū)別?

        1. CNN和FCN網(wǎng)絡(luò)結(jié)構(gòu)對(duì)比

        CNN網(wǎng)絡(luò)

        假如我們要設(shè)計(jì)一個(gè)用來(lái)區(qū)分貓,狗和背景的網(wǎng)絡(luò),正常的CNN的網(wǎng)絡(luò)的架構(gòu)應(yīng)該是如下圖:

        圖1 CNN網(wǎng)絡(luò)結(jié)構(gòu)


        假如輸入圖片size為14x14x3的彩色圖,如上圖,首先經(jīng)過一個(gè)5x5的卷積層,卷積層的輸出通道數(shù)為16,得到一個(gè)10x10x16的一組特征圖,然后經(jīng)過2x2的池化層,得到5x5x16的特征圖,接著Flatten后進(jìn)入兩個(gè)50個(gè)神經(jīng)元的全連接層,最后輸出分類結(jié)果。

        這里由于全連接層中輸入層神經(jīng)元的個(gè)數(shù)是固定,這就導(dǎo)致反推出卷積層的輸入要求是固定的,這就不利于不同尺寸的圖片進(jìn)行訓(xùn)練,想要深入了解上面過程,可參考之前文章:

        卷積神經(jīng)網(wǎng)絡(luò)通俗原理
        卷積神經(jīng)網(wǎng)絡(luò)實(shí)戰(zhàn)進(jìn)階(附代碼)??

        FCN網(wǎng)絡(luò)

        全卷積神經(jīng)網(wǎng)絡(luò),顧名思義是該網(wǎng)絡(luò)中全是卷積層鏈接,如下圖:

        圖2 FCN網(wǎng)絡(luò)結(jié)構(gòu)


        該網(wǎng)絡(luò)在前面兩步跟CNN的結(jié)構(gòu)是一樣的,但是在CNN網(wǎng)絡(luò)Flatten的時(shí)候,F(xiàn)CN網(wǎng)絡(luò)將之換成了一個(gè)卷積核size為5x5,輸出通道為50的卷積層,之后的全連接層都換成了1x1的卷積層。

        我們知道1x1的卷積其實(shí)就相當(dāng)于全連接操作,具體可以參考之前文章:

        CNN中神奇的1x1卷積
        從上兩個(gè)圖比較可知全卷積網(wǎng)絡(luò)和CNN網(wǎng)絡(luò)的主要區(qū)別在于FCN將CNN中的全連接層換成了卷積操作。

        換成全卷積操作后,由于沒有了全連接層的輸入層神經(jīng)元個(gè)數(shù)的限制,所以卷積層的輸入可以接受不同尺寸的圖像,也就不用要求訓(xùn)練圖像和測(cè)試圖像size一致。


        那么問題也來(lái)了,如果輸入尺寸不一樣,那么輸出的尺寸也肯定是不同的,那么該如何去理解FCN的輸出呢?

        2. FCN如何理解網(wǎng)絡(luò)的輸出?

        特征圖尺寸變化

        我們首先不考慮通道數(shù),來(lái)看一下上面網(wǎng)絡(luò)中的特征圖尺寸的具體變化,如下圖,圖中綠色為卷積核,藍(lán)色為特征圖:

        圖3 FCN特征圖尺寸變化


        從上圖中,我們可以看到,輸入是一個(gè)14x14大小的圖片,經(jīng)過一個(gè)5x5的卷積(不填充)后,得到一個(gè)10x10的特征圖,然后再經(jīng)過一個(gè)2x2的池化后,尺寸縮小到一半變成5x5的特征圖,再經(jīng)過一個(gè)5x5的卷積后,特征圖變?yōu)?x1,接著后面再進(jìn)行兩次1x1的卷積(類似全連接操作),最終得到一個(gè)1x1的輸出結(jié)果,那么該1x1的輸出結(jié)果,就代表最前面14x14圖像區(qū)域的分類情況,如果對(duì)應(yīng)到上面的貓狗和背景的分類任務(wù),那么最后輸出的結(jié)果應(yīng)該是一個(gè)1x3的矩陣,其中每個(gè)值代表14x14的輸入圖片中對(duì)應(yīng)類別的分類得分。

        不同尺寸的輸入圖片

        好了,不是說可以接收任意尺寸的輸入嗎?我們接下來(lái)看一個(gè)大一點(diǎn)的圖片輸入進(jìn)來(lái),會(huì)得到什么樣的結(jié)果,如下圖:

        圖4 FCN不同尺寸的輸入變化


        我們可以看到上面的圖,輸入尺寸由原來(lái)的14x14變成了16x16,那么經(jīng)過一個(gè)5x5的卷積(不填充)后,得到一個(gè)12x12的特征圖,然后再經(jīng)過一個(gè)2x2的池化后,尺寸縮小到一半變成6x6的特征圖,再經(jīng)過一個(gè)5x5的卷積后,特征圖變?yōu)?x2,接著后面再進(jìn)行兩次1x1的卷積(類似全連接操作),最終得到一個(gè)2x2的輸出結(jié)果,那么該2x2的輸出結(jié)果,就代表最前面16x16圖像區(qū)域的分1類情況,然而,輸出是2x2,怎么跟前面對(duì)應(yīng)呢?

        哪一個(gè)像素對(duì)應(yīng)哪個(gè)區(qū)域呢?

        我們看下圖:

        圖5 FCN變化尺寸結(jié)果對(duì)應(yīng)圖


        根據(jù)卷積池化反推,前面圖3,我們知道,最后的輸出1x1代表了前面14x14的輸入的分類結(jié)果,那么我們根據(jù)卷積核的作用范圍可以推出,上圖中最后輸出2x2中左上角的橙色輸出就代表了16x16中的橙色區(qū)域(紅色框),依次類推,輸出2x2中右上角的藍(lán)色輸出就代表了16x16中的黃色框區(qū)域,輸出2x2中左下角的藍(lán)色輸出就代表了16x16中的黑色框區(qū)域,輸出2x2中右下角的藍(lán)色輸出就代表了16x16中的紫色框區(qū)域,其中每個(gè)框的大小都是14x14.也就是說輸出的每個(gè)值代表了輸入圖像中的一個(gè)區(qū)域的分類情況。

        3. FCN如何對(duì)目標(biāo)檢測(cè)進(jìn)行加速?

        根據(jù)上面的圖5,我們知道FCN最后的輸出,每個(gè)值都對(duì)應(yīng)到輸入圖像的一個(gè)檢測(cè)區(qū)域,也就是說FCN的輸出直接反應(yīng)了對(duì)應(yīng)輸入圖像檢測(cè)區(qū)域的分類情況,由于圖4和圖5均沒考慮通道情況,那么我們將網(wǎng)絡(luò)放到一個(gè)正常的28x28x3的圖像上,考慮上特征圖的通道數(shù),看下輸出值的對(duì)應(yīng)情況,如下圖:

        圖6 FCN如何加速

        上圖中綠色區(qū)域表現(xiàn)了依次通過網(wǎng)絡(luò)后的特征圖尺寸變化情況。

        跟圖5類似,因?yàn)檫@是一個(gè)貓狗和背景的三分類任務(wù),所以最后輸出的圖像大小為8x8x3,以輸出圖像左上角綠色點(diǎn)為例,該點(diǎn)深度為3,對(duì)應(yīng)輸入圖像的綠色區(qū)域,該點(diǎn)的3個(gè)值反應(yīng)了輸入圖的綠色區(qū)域是分類為貓狗還是背景的得分情況。


        總的來(lái)說,F(xiàn)CN利用了輸出結(jié)果和輸入圖像的對(duì)應(yīng)關(guān)系,直接給出了輸入圖像相應(yīng)區(qū)域的分類情況,取消了傳統(tǒng)目標(biāo)檢測(cè)中的滑動(dòng)窗口選取候選框。

        FNC優(yōu)缺點(diǎn)

        輸出結(jié)果的每個(gè)值映射到輸入圖像上的感受野的窗口是固定的,也就是檢測(cè)窗口是固定的,導(dǎo)致檢測(cè)效果沒那么好,但是速度卻得到了很大的提升,而且可以輸入任意尺寸的圖片,為目標(biāo)檢測(cè)提供了一種新思路。

        好了,這期我們學(xué)到這里,下期我們繼續(xù)深入,學(xué)習(xí)下目標(biāo)檢測(cè)的評(píng)價(jià)指標(biāo)都有哪些。


        瀏覽 64
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            欧美黑人疯狂性受xxxxx野外 | 日本一区二区三区黄色 | 伊人影院综合 | 男人天堂色色 | 亚洲黄电影 | 国产成人AV一区二区三区在线观看 | 国产熟妇毛多 A片欧美蜜臀 | 成人免费黄色软件下载 | 女人被男人吃奶视频 | 亚洲伊人伊色伊影伊综合网 |